Thursday, April 30, 2020

Progress Report

I keep telling myself, "you don't need to post another progress report, you'll have the next release ready in a few more days." But then, every few days, it ends up taking another few days, until almost a month has passed since my last update. Every time I run the game, I find something new to change or tweak or fix...

I've finished the cleaning process, and am now doing final testing, to make sure everything is in place, and there are no glaring errors before I release the game to the semi-public. It's pretty much the first time I've played the game start to finish, as I've been testing stages one at a time so far. I was curious to see how long it would take to complete the game. I've beaten it on a speedrun in twenty minutes, but obviously you'll want to take longer than that to savor the story and the atmosphere. On a normal run, taking my time to explore and test everything, I beat it in two hours and forty minutes. Then again, as the developer, I know this game inside and out, so I'd be curious to find out how long it takes others to beat it. I'm at a bit of a loss as to how to rate the amount of content in this game in terms of gameplay hours, if it takes different people different amounts of time to complete...

At the moment, I'm going through and taking screenshots of all the levels, to accompany the impending official release. There's just this one annoying bug (Uncaught TypeError: Cannot read property 'width' of null) that I would love to fix, but I can't pin it down. It happens whenever the map is being reset after the player loses a "life". But it's occurred on several different maps, and it only happens once in a blue moon. As such, I can't pinpoint what's causing it, or how to fix it. And even if I did have some idea (and I've had a few), it's hard to test a solution because the bug only pops up every so often. Unfortunately, it's a game crashing bug, and although the automatic progress retainment system in my game (which eschews passwords or save files) would normally render it at most an inconvenience - just restart the game from the level you were at - there is one exception that causes me to be hesitant to release the game as is. I want to make accessing the secret level a challenge, so you have to collect the fragments all in a single playthrough. If the game crashes while you're in the middle of doing that, well...that's a considerable source of frustration that is both completely out of the player's control, and also something the player would justifiably be inclined to curse the developer for not taking care of. So, we'll see...

Update: I believe I know where and when the bug is occurring, but I still don't know why (my best guess is something to do with a timing discrepancy, calling on an object before it's defined), nor can I force it to happen, in order to test a solution. However, there is evidence that a plugin I'm using (a Bind Pictures To Map plugin) may be involved. So, in lieu of being able to fix the presumably problematic portion of code, I'm looking into a workaround that will allow me to ditch the plugin altogether. It's a pain in the ass, but luckily I only needed that plugin in a few places. I have no idea if this will even solve the problem, but if I do it, and I never encounter the bug again, then I'll consider it a victory.

Saturday, April 4, 2020

Progress Report

I am still hard at work preparing Ascension for beta release. I've completed an inventory of the resources used, now I am trimming and organizing and cutting out the fat. Other than the reduction in file size (which, 230 MB isn't all that big to start with), most of this work is more for my benefit than the player's, and would be unwieldy for a larger project besides. But I really want to take the opportunity to clean up the project file, because I may not have the chance on my next project. It will take some more time, though.