Spankers and Spankees,
I’ve released a new update to Potion Wars (get it at the Downloads page).
1. The game now writes to errors.log all actions performed in combat, and the associated state. This should make it a lot easier for me to track down corner bugs that only arise when actions A B C D E E E E A F are performed in combat. So please, when you see a crash or other bug in combat please tell me about the bug and SEND ME THE ERRORS.LOG file. Furthermore, please, as soon as you see the error, kill the game and send me the error.log. That way, the last action in the log will be the action at the point the error happened. If the bug crashes the game, just send me the errors.log (along with a description of the error). Note that the errors.log file gets wiped every time you restart the program, HOWEVER the game also automatically saves the errors.log file from the previous 5 play sessions (named errors_1.log, errors_2.log, …errors_5.log). So if you see a crash, but accidentally restart the game before you send me the log, just send me the log file that corresponds to that playthrough.
2. I’ve added a scene with Airell (the pompous mage) written by Bonemouth and edited by me. You should see this scene if you pissed off Airell in episode 1, and he threatened you with a spanking. He’ll show up in the Adventurer’s Guild, just talk to him to start the scene.
3. Fixed a bug in one of Maria’s conversation nodes in episode 1, that would have caused a crash as soon as someone tried to access that quip. It was the node at the end of episode 1 that only triggered if the player managed to stay out of trouble with the guards (i.e. didn’t get into a fight with Maria, and didn’t lie to the guards). Apparently not a particular popular path among people who file bug reports, since I only saw it after I fixed a bug in my unit tests that meant my tests weren’t invoking the conversation nodes in episode 1.
4. Skyblaster the Sardine has joined the team as a beta tester, and support writer. He’ll be working primarily on in-combat spanking scenes for now. I’ve added his name to the in-game Acknowledgments page. Flash the Flamingo has also joined, he’ll be working as a Beta Tester, and number cruncher (basically he’ll help me analyze my growth and damage formulas, and make sure they scale like I want them to). I forgot to add Flash to the in-game page, and I’m too lazy to back and add it, but he’ll be there in the next release!
5. Implemented some code that should make it easier for me to maintain consistent state when transitioning scenes. Basically, any time a scene begins, I clear out all adjacent rooms, and remove all NPCs from their respective rooms, and then manually reinstate those rooms, and NPCs that actually show up in the scene (I do have some helper functions for rooms, and characters, like Avaricum Square or the girl at the Tailors, that don’t change between scenes). This will make a little bit more work for me, but it should make errors more obvious (a character who should be there is missing!), and gives me much better control over the configuration of each scene. So it’ll end up saving me time in the long run.
6. Characters now gain 2 points in Strength for every round they stay grappled. Otherwise, grappling would go up too slow for characters who initialize and actually want to stay grappled (i.e. the characters who should have high grapples!)
7. Characters gain 120% mana each time they gain talent, rather than 150%.
8. Removed ambushes. They were rare, buggy, and in my opinion don’t really contribute anything.
9. Miscellaneous bug fixes. Added some infrastructure for incorporating LaTeX written dungeon scenes into the game.
10. Removed Deidre from the Adventurer’s Guild. Originally she was going to provide the job on behalf of someone else. I decided I didn’t want that, so I’ve introduced a small retcon.
Also, although you can’t reach the dungeon in episode 2 yet, I have added it to the code. Here’s a screenshot of the corner you start in:
It’s not the prettiest thing ever, but that’s another side-effect of the rigidity of my current GUI code. Hopefully when I overhaul the GUI after episode 2, I’ll be able to rewrite the map code so that it looks nicer, and we don’t necessarily after to show the entire map at once (clearly 20 x 20 is about as large as we can without inducing eye strain). But who knows. I sure don’t. Honestly, I’m surprised it works as well as it does.
I haven’t implemented any of the events yet, but we’re getting there.
Also, don’t forget I released a new episode of Etrian Odyssey yesterday. Get it at the Etrian Odyssey tab.