A quick update: the final polishing phase is taking longer than I’d expected because I’ve ran into a few bugs. I have one major one taken care of (for now,) but the other is more serious and complicated to fix. I’ll get it fixed as fast as I can, but I just wanted to let you know what was going on. The remainder of this post just describes the bugs and what I’m doing to address them.
Text Rendering Bug
The first serious bug has to do with artifacts in text rendering - I’ve included a picture with an example. I got these a lot when playtesting.
Since this is a very text-heavy game, that’s a pretty big deal. I eventually identified the lighting plugin as the culprit, and so I’ve disabled it. (To be clear, this isn’t the lighting plugin that caused all the problems before, it’s a different one T_T) This means some places won’t look as cool, and some scenes will lack some of their intended impact - including an important one in 10.0 - but I’m not going to delay the release for that. I plan to fix it in a bugfix update to 10.0.
Portal Bug
The more serious bug - and one which I can’t put off fixing - has to do with the portal mechanic from The Oracle’s challenge in 10.0. If you enter a room and clear it, everything works as expected. If you load from a save in one of the new rooms and change anything at all, a lot of stuff stops working. But some stuff still does work?
The problem only manifests if you change something about the portals/blocks after loading from a save or re-entering a portal room. When I initially wrote the mechanic, I would either clear rooms in one shot, or go back through portal levels I’d already solved (without changing anything about their state.) This is why I didn’t catch it initially. The last puzzle level is pretty hard - it took me about half an hour to solve the first time I playtested it - so I can only imagine the rage someone would feel if they were close to beating it, saved, then came back and everything was all screwed up. (It was so hard, in fact, that during playtesting I added an easy mode that lets you skip it entirely - though you miss out on an item and a special currency if you do.) You could even get stuck if things stop working - i.e., end up somewhere you’re not able to leave.
I think the culprit is a 140-line function that I’d helpfully commented with: “TODO: Refactor. This function is too complex.” Or maybe it isn’t. Once I got everything working (so I thought) I both didn’t want to spend the time to make it easier to troubleshoot later on, and was afraid to touch it anymore for fear I might break something. Guess that’s how you get what the programmers call “technical debt.”
There’s no real point in describing the bugs in such detail, except that I’m still trying to think through them myself. I’m willing to ship a few minor bugs just to get this release out the door, but I can’t ship game-breaking ones (that I’m aware of.) I’ll get it fixed as quickly as I can; hopefully it won’t take much longer. Thank you for your support!