Sunday, May 31, 2020

Ascension (Beta Release)

So, technically, I did quietly release the first beta version of Ascension back on the 8th of May. I didn't make an official announcement because I wanted to give my first tester a chance to play through the game, since she's the only one I'll get to actually watch (and witness her reactions) while playing, and I wanted at least one other person to play my game, to reassure me that there weren't any glaring problems that I've overlooked, before I put the word out to friends, family, and complete strangers. I've already made a few changes based on her feedback (nothing world-shattering, but some worthwhile tweaks), so that's why it might look to you like I'm starting with version 1.1. Aside from that, I'm pretty happy with what I've got. (So far, I haven't encountered that one game-crashing bug since I eliminated the one plugin, which is promising). So it's time to release it to the world! Here's a little statement I've prepared:

Ascension is now a complete game that can be played from start to finish. It's not perfect, and I may choose to continue making changes and releasing updates into the future, especially if and when anyone gets a chance to play it and gives me some feedback. But even if I never make another change to it, I can rest assured that it is a game that is, at the very least, out there for people to play. There may be some things you don't like about it. Hopefully, there will be some things that you do. And on the bottom line, I've put in a lot of work to make it fun, and ensure that it is indeed playable. But I'm not a professional game designer - I'm just an amateur, working alone. But how many amateurs can say that they've completed one of their projects in RPG Maker? And as far as completed RPG Maker projects go (which, admittedly, isn't a super high bar in the world of game development), I hope that the quality of this project speaks for itself, however flawed and imperfect it may turn out to be. Because I've poured a lot of my heart and soul into this game; it's not merely something I did for the hell of it, or just to pass the time.

And now, without further ado, go, download the game, play it, and have fun. And let me know what you think of it after you're done. In the meantime, I've got an even bigger project to get back to working on...

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.

Sunday, March 22, 2020

Revision to Latest Release

So, I nixed the program update, and went back and restructured a portion of the secret level, as explained. I'm sad to lose the portion I lost - due to an inability to perform instantaneous map transfers - but I took the opportunity to add another little flourish, and honestly, I think it's even better this way. I don't want to say too much, because I don't want to spoil the surprise, but I'm super excited about the secret level. I know there's a high bar for access, and many players may never reach it, but I wanted to have something special for those who are willing to go the extra mile.

So I'm releasing a revision to the latest update, with the secret level now implemented and accessible. As far as its feasibility in terms of the difficulty of reaching it - I'm planning to test that myself, but I want to wait until the beta release, because that will give me a good chance to go back through every stage in the game, and make sure everything works the way I want it to. And that will be ready once I perform the "cleaning" functions I alluded to in my last post. But the reason I want to put out this revision first is because I've learned never to trust in the future. In case something happens - e.g., we all die from this global pandemic, or my progress stalls out again, or my files get corrupted in another computer crash - I want what I've accomplished up to this point to be out there, until such time that I have an improved version ready to replace it.

Ascension (MV) Alpha 10.2 (all stages, including ending and secret level)
Download (~230 MB): Windows | Mac [see sidebar for latest release]

Saturday, March 21, 2020

Update on the Update

So, I updated RPG Maker MV (to version 1.6.1), and - I suppose this shouldn't be surprising, but - I'm not impressed. It doesn't fix any of the bugs I'd hoped it would fix (no idea what "freeze when changing screen" is supposed to refer to, but it is most decidedly not the map transfer lurch that I hate), and introduces some new bugs (like a weird text glitch on the title screen when I playtest), while threatening to break plugins (I've already had to fix one so far, in a game that uses very few of them). So, it looks like I'm going back to version 1.5.0. God, this is so frustrating. I envy authors who can scribble runes on paper and communicate across eons, while each version of the software I take time to learn works on only a handful of machines, and becomes obsolete before I have the time to finish a single project...

So I'll be going back, making a significant change to the layout of my secret level, and then still polishing up my project and slimming the download file. That might take some time, but when I'm finished, I'm going beta and finally putting this game into the hands of my testers. If I have any.

Friday, March 20, 2020

Ascension (MV) Alpha 10.0 [Purgatory]

This update took a little longer. The official reason is that I had more to do - not just the final stage (Purgatory), but also the ending, and the secret level. But I could have released just Purgatory, and followed that up later with the completed ending. The truth is, Purgatory involves a lot of dialogue, so that was actually the part that took the longest to polish. And working on those other things served as a nice distraction when I got fed up with tweaking the dialogue.

So, this release almost represents the complete game. But I'm not quite ready to go beta yet - there are a few things I want to polish up, but I wanted to put out a release with everything I've worked on since finishing up Erebus before I go mucking around, in case I screw something up. The only thing missing from this release is the secret level, which is actually mostly finished - but I have it disabled. And here's why:

There's a bit of nonlinear topography involved, that gets screwed up with MV's inability to perform instantaneous map transfers (which I've worked around throughout the rest of the game). I could restructure that bit of the level, but before I go to that trouble, I want to update RPG Maker because the latest update mentions fixing "the freeze when changing screen in-game". I don't know if this means that instantaneous transfers will work or not, but it sounds promising, and it's worth a try.

I've just been delaying updating the program while I work on this game, because there's no telling what problems it might cause, by changing up the way the program does certain things (particularly with plugin functionality - although luckily this game doesn't use a lot of plugins). So I wanted to put out a nearly finished product before I took that gamble, and that's what this is. I'd also like to go through and polish up the innards of my game now that it's pretty much finished (including stripping unused files to reduce the download size), and this seems like a good time to do that.

But in the meantime, here's my latest release, with all stages playable, from beginning to end. Just don't waste time collecting the secrets on Hard Mode yet, because you can't get the reward. Other modifications I've made in this release include an even more streamlined (and, importantly, more intuitive) pause screen. I also reduced the number of picture files required to display the story completion percentage, but you won't notice any difference on your end. I hope to be back with an official beta release in the near future!

Ascension (MV) Alpha 10.0 (including all stages up to Chapter 12 - Purgatory)
Download (~230 MB): Windows | Mac [see sidebar for latest release]

Tuesday, March 10, 2020

Load Lag Issue [Resolved]

If you read my note at the end of the post when I released Sodom & Gomorrah two and a half weeks ago, you'll recall that I was having an issue with the map taking an extra long time to load. Well, I have some good news - I've figured out what was causing the delay, because I encountered the same issue on the Purgatory map I am currently working on, and I was able to isolate the problem this time. And it turns out, it's my old nemesis, the RPG Maker MV BGM Delay, rearing its ugly head again.

The thing that these two maps have in common is that they call a BGM file to be played (most of this game relies on silence and sound effects as opposed to having a running soundtrack), and BGM files are significantly larger than shorter sound effect files and images (which have a smaller file size compared to audio). So what's happening is the Preload Manager is hanging while loading those large BGM files.

And before you say, "just disable the Preload Manager", this is exactly the reason I started using it in the first place. RPG Maker MV loads files on the fly (I'm honestly wondering what VX Ace did differently, and why MV is so utterly incapable of performing such a basic function that its predecessor had no issue with), so when you call a BGM, it takes a couple seconds for it to load and then start playing. The Preload Manager doesn't load it any faster, it just opts to load the file ahead of time when you transfer to the map that uses it, so it will be ready the second it's called. It's a tradeoff.

The bad news is that there isn't a whole lot I can do about it. Moving the loading to the front of the map is preferable to waiting until you need the file for it to load. What I can do is bump it all the way to the start of the game, when it's booting up, and players are expecting to wait a few seconds. So far, this seems to work pretty well (the affected map transfers are much quicker), although if I had more than a few BGMs throughout my game, it might make the boot load itself unwieldy.

In fact, I'm wondering if the Preload Manager is any use at all for anything other than BGMs, since - unless I'm mistaken - that's the only thing I recall having loading problems with. In any case, I've modified it so that now it only performs boot loading of predesignated BGM files and not its usual preload on map transfer, so we'll try it out that way and see if any problems arise...

Followup: It looks like I may have to revert to between-map loading after all. There's a question of how long a given file remains in memory after being pre-loaded, and I'm concerned that if the BGM is loaded at startup, it may be purged long before the player, during the regular course of playing the game (and not going directly to the parts I'm working on, as I do when I'm testing), gets to the point where the file is needed.

I haven't been able to test that yet (as it requires longer periods of play-testing), but there's also another problem involving a graphical glitch when switching characters to their damage sprites (to make them appear slouched or fallen over) - a momentary blip, presumably due to the program loading the image on demand.

Prior to investigating the load lag issue, I had replaced the "Now Loading" screen with a blank screen, because I thought it was annoying and disrupts the player's immersion into the game. This actually contributed to my confusion, because when the map hung before loading, I didn't immediately recognize what it was doing. I think I might ultimately just put the "Now Loading" screen back in, and learn to live with it (even though it annoys me when it only shows up for a fraction of a second, as on most maps - better off not showing up at all, if you ask me...).

Monday, March 9, 2020

Ascension (MV) Alpha 9.0 [Erebus]

Back to quick turnarounds! It's nice to work on another straightforward adaptation stage. To be honest, by the end of working on that last stage, I was starting to get sick of it! But with this stage released, the end is starting to materialize on the horizon. Erebus is the point at which our protagonist finds out whether he will be able to escape Hell. It is also the point at which the game ends if you are playing on Easy Mode. To access the final stage, Purgatory (which is a bit of a relief after spending the whole game in Hell), you must be playing on at least Normal Mode. I can't wait to get working on it!

Ascension (MV) Alpha 9.0 (including all stages up to Chapter 11 - Erebus)
Download (~230 MB): Windows | Mac [see sidebar for latest release]

Reminder: I've rigged it so that after starting a new game, you can reload and select continue to access all stages that have been completed so far. (Without doing the work to get there).

Friday, March 6, 2020

Ascension (MV) Alpha 8.0 [Labyrinth]

As anticipated, this stage took considerably more time to pull together than the last few. In keeping with my new commitment to stay grounded, it's not everything the Labyrinth could be, metaphysically speaking, but it's a functioning level (perhaps for the first time ever), that allows me to tell the story I want to tell. Navigating the maze remains a challenge, but hopefully one that will not be so frustrating as to prevent the player from advancing (which is its purported purpose - but the story relies on the player solving it). Here's what I did to make the maze what it currently is:

To start with, I generated a brand new maze using the latest version of the Daedalus program that I'd used before. I actually stitched my Labyrinth together from four separate mazes, to represent four quadrants, although they are integrated so as to function as one whole. The maze loops horizontally and vertically to create the illusion of being even larger than it actually is. At its deepest point, you are never more than 80 branches from the center (and end of the level) - and if that number still seems large to you, a lot of those branches are short dead ends that can be quickly ruled out.

For that matter, I've implemented a "marking" system, where you can pick up rocks scattered about the maze, to carry around and place, at your convenience, anywhere within the maze in the shape of an arrow pointing in one of the four cardinal directions, or an "x", to help you solve the maze. I figure this will be a good way to make the maze more interactive, to let the player feel like he is using his wits to narrow down the pathways, rather than merely stumbling down the same blind alleys again and again, until randomly hitting on the solution.

I've also added a functioning compass - just for the fun of the challenge of seeing if I could. At any junction within the maze, where the path splits and you have to make a choice of which direction to go, you can press the Page Down key (or whatever it's mapped to), and an icon will momentarily display on screen, pointing the direction you must go to reach the center of the maze (for curious RPG Makers, it keys on Region ID). As this defeats the very purpose of the maze, I don't intend for it to be a normal part of the level, but you can certainly use it for testing purposes if you get lost. I haven't decided yet if I'm going to leave it in the final game as a sort of cheat or Easter egg.

As far as difficulty goes, if you play the game on Easy Mode, your only challenge is to solve the maze (I can't really make it simpler than that, without undermining the integrity of the level). Normal Mode includes the addition of wandering clouds of fog (that you might remember from previous incarnations of this level). If the player touches the fog, he will be scattered to a random position within the maze (and there is always the chance that you will get lucky and wind up close to the center, so it's not all bad). These clouds of fog may bar your path at some points, but they dissipate after being touched (and after you are scattered), and also temporarily vanish whenever it starts to rain.

The only additional challenge in Hard Mode is a screen overlay that reduces your visibility a little bit (though not too much, I think), so you can't see quite as far from your current position in the maze. In all cases, the only thing you have to do to end the level is reach the center of the maze - and the actual pathways in the maze never change (which is something I'd originally wanted to do). To reach the secret bonus on Hard Mode, however (which right now doesn't do anything, but will contribute to unlocking the secret level in the final game), you have to navigate back and forth through the maze to find four switches that open a gated path to a restricted chamber within the maze.

Additional note: You may be gratified to hear that I've increased the player's movement speed for this stage (essentially making "run" the walking speed), because in testing out the maze, I quickly discovered that I had the shift ("run") key constantly held down. That will no longer be necessary. (And if running is still too slow for you, pressing the "run" key will now enable you to positively break into a sprint :-p).

Ascension (MV) Alpha 8.0 (including all stages up to Chapter 10 - Labyrinth)
Download (~230 MB): Windows | Mac [see sidebar for latest release]

Note: This update also fixes a graphical oversight (due to a changed filename) I noticed in Sheol, as well as eliminates an extraneous bat in Chaos that I had placed in order to test and fix a glitch resulting in the bats interfering with the moving platforms, as well as cleaning up a few other minor testing oversights.

Monday, February 24, 2020

Ascension (MV) Alpha 7.0 [Gehenna]

Another quick turnaround, as Gehenna turned out to be a pretty straightforward level to adapt. It's another fun one - all fiery and bright orange. Next up, though, is the largest obstacle between me and putting out a finished version of this game - Labyrinth. I've put considerable effort, yet had considerable difficulty, building a maze that's worthy of living up to its own hype of stranding travelers for ages, until they lose all memory of ever having entered the maze in the first place, yet not being so difficult and frustrating that it prevents players from completing the stage. And that's the task I now have in front of me. The bright side is that once I surmount this obstacle, it will be pretty much clear sailing to the end, so that's what's motivating me. But it's going to take me a little time. So, fair warning. If nothing else, I've made respectable progress this month!

Ascension (MV) Alpha 7.0 (including all stages up to Chapter 9 - Gehenna)
Download (~230 MB): Windows | Mac [see sidebar for latest release]

Note: It occurred to me, after my last release, that if anyone had played through all the available stages in the previous release, they might want to dive straight into the new level added to the next release, and not have to play through all of them again just to get to that point. I apologize. For this release, I've tweaked the stage unlock function so that after you run a new game once, up to the Chapter 1 heading, the next time you load the game and select Continue, all completed stages will be unlocked on all difficulty levels, for you to peruse at your leisure. For testing purposes only. :-p

Thursday, February 20, 2020

Ascension (MV) Alpha 6.0 [Sodom & Gomorrah]

Back within a week for another update and release! I am now forging ahead into territory I never made it to, two years ago when I started adapting Ascension from VX Ace to MV. Which is to say, I've completely recovered from my computer crash that corrupted my project files. So that's good news.

With this release I am featuring the adaptation of Chapter 8 - Sodom & Gomorrah. This is a fun level, that really adds a lot of color to the world I've constructed in this game. Another change I've made to the game with this release is that I've added a "story completion" percentage that will display on the continue/map screen. This will give you a general feel of how much of the story you've experienced as you work your way through the game, with the idea that when you reach a sufficient percentage, an extra scene will be unlocked during the ending credits.

I plan to provide a brief explanation within the readme file when the final game is released, but the percentage mainly keys on chapter introductions and Archfiend autobiographies - stuff that fleshes out the story, but that you're given the option to skip to facilitate faster (and less tedious) playthroughs. You only have to read them once, and the percentage will be saved even after you close the game.

That's the reward for completing the story - there will be another reward for dominating the arcade challenges in the game, which is the bonus level and secret ending, but that's for another day. In the meantime, have fun seeking companionship from the denizens of Hell, as you explore the streets of Sodom & Gomorrah!

Ascension (MV) Alpha 6.0 (including all stages up to Chapter 8 - Sodom & Gomorrah)
Download (~230 MB): Windows | Mac [see sidebar for latest release]

Note: One thing that has been frustrating me endlessly is the way that this map is taking unusually long to load the first time. I've concluded that it's the Preload Manager plugin that's causing the lag, but I can't for the life of me figure out why this particular map should be significantly slower than any other in this game so far. I can't figure it out, so you're just going to have to live with it, for now at least. It's only a cosmetic issue, anyway - a matter of a few extra seconds loading the map. I think it's annoying, but it doesn't actually change the way the level plays. [Update]

Friday, February 14, 2020

Ascension (MV) Alpha 5.0 [Chaos]

And, after a two year intermission, we pick up right where we left off - almost to the day* (how weird is that?), with the very next update I would have published, featuring the completed level that I was working on (Chaos - The Yawning Chasm) when my program crashed and my files were corrupted, and before my home life turned into a chaotic whirlwind that has since mercifully stabilized.

*Which also happens to be Valentine's Day - because nothing says love like the impending doom of crushing darkness, leading to the ultimate destruction of the universe!

I'm about as tired of making promises now as you are no doubt tired of hearing them, so from here on out, it's what you see is what you get. I am determined, however, to complete this project. I've given up on the pipe dream of making this game "everything it could be". I don't need this game to be perfect, I just want a finished product I can share with the world, that can be played start to finish, that brings to life the story that I wanted to tell.

Which I think it already can - it just needs to be put together. Which is to say that I need to finish the adaptation effort I started two years ago in porting the game from VX Ace to MV. Which I am now once again working on. The good news is that, although there are periods when I struggle to even open the program, the fact is that once I have it open and am working on it, I really enjoy the work quite a lot (barring the occasional frustrating coding challenge that I can't seem to surmount). It's just that - and this is true in a lot of disciplines - putting together a large project, and seeing it through to a level of completion is hard. (Which is why I have to finish this one before I work on Dragonfaith again).

But, like Sisyphus, I'm still chugging away. And these periodic downloadable updates are the proof of that. I've made a determination this time around to cut out some of the fat, so hopefully that will make my task easier. No more save files - you can continue from any stage once it's been unlocked. And I no longer have anxiety about the length of the game - this will be one you can probably complete in a single sitting. (But maybe not the first time; or at least, it will take some added commitment to unlock the secret extra stage). And that's okay.

Ascension (MV) Alpha 5.0 (including all stages up to Chapter 7 - Chaos)
Download (~230 MB): Windows | Mac [see sidebar for latest release]

Note: The download size has jumped quite a bit, because I couldn't use the option to "strip unused files" because I tried it that way, and it stripped some files that were used but not recognized because I referred to them only implicitly via a script command (and not a traditional eventing command). It sucks, I know, but I'm not going through right now and individually hand-picking which files are used and which aren't, so you'll just have to live with it.