Continue Your Game: The Jam Postmortem
Well, I definitely fell off at the end of the jam with those “Daily” updates, (depression sucks, lol,) but I did want to make one last devlog and postmortem for Reflection Reverie before I close off this era of the game’s development. For historical purposes, I’ve uploaded the most recent build submitted to Continue Your Game: The Jam, so people reading in the future can still see the game in the state discussed in previous devlogs in this series. Now, with that out of the way, let’s get onto the interesting stuff that didn’t get into the jam build. Keep in mind that the changes below are not available in the CYG:TJ build of the game, but should hopefully appear in future updates.
Updated Font:
The font for the game has been updated slightly, for enhanced readability. The changes are minor, but it’s uncanny just how much better dialog boxes can look from such a minor change!
The old font is visible in the top two screenshots, and the new font is visible in the bottom two. This gag, for understandable reasons, will not be in the final game, obviously.
Updated Map System:
While working on the maps for the game, I actually figured out how to determine the size of a Godot Tilemap programmatically via GDScript, which should save a lot of time compared to how maps were created previously. In prior builds, the game made use of a .csv file to keep track of different attributes of stages, such as their sizes, their names, and so on. This decision was initially made due to me simply not knowing at the time that Godot Tilemaps (at least as of Godot 3) can return their size as a Rect2D through the get_used_rect() method, rather than a simple array of tiles having a size as I had expected at the time.
Apologies for the technical speak for a bit there, but the long and short of it is that now, the game knows exactly how big a given room is without me having to tell it manually, like in previous builds. And once that change was made, it was quite trivial to update the rest of the game to instead load these attributes at runtime. Making maps and iterating upon them should now be just that little bit faster.
In addition, I can actually sort maps in the game into folders, making things much easier to manage in the long run, when we have a bunch of maps in the game.
While I was on the subject of speeding up map development, I also added a simple object to determine player spawns for rooms. Now I can just drag and drop an object into the exact right place, rather than fiddle with calculating what x and y coordinates I should load the player in at. ...I...had the knowledge to do this back in 2022, so why I hadn’t is frankly beyond me too.
Updated Intro:
As discussed way back, and I believe at least once more in the CYG:TJ devlogs, I’ve been hard at work adding more of the game intro’s content. The rough cut of the transition to school is complete, and just needs a bit of polish. Hopefully these are not words that age poorly. There’s still quite a bit more work to do, and I don’t think it will be complete before the end of the month, but who knows! Besides, getting two out of two goals done within half the time is pretty good, until you consider I delivered upon that old promise several years late. ...please do not consider that I delivered upon that old promise several years late.
New Area – The School:
Given the intro above would necessitate such a change, I’ve begun work upon the School map for the game’s intro sequence. This is the game’s first ENTIRELY new content since GBJam (a lot of my work for Continue Your Game: The Jam has, as you can see, been refactoring and polish building up to this very moment), with a brand new tileset, music track, and everything, which has made it a good litmus test for what needs to change with the game’s infrastructure to be less hostile to the development of new content.
There’s a lot already here that I can’t show just yet in these halls (mostly text and dialogue, but if you can’t tell, this is by far my favorite part of working on Reflection Reverie, and I think it shows through pretty well), but I’m hoping you’ll all get to see them very soon. Probably not this month, as we only have 9 days left in September, especially since me not making this devlog earlier means I couldn’t make a 21st night joke. Ah well.
Just what secrets might the easily missable dialog in these classroom halls hold?
Anyways, with that all discussed, I should probably now get into the typical postmortem stuff, and what I experienced during the jam.
What Went Well:
Having a base to work off of definitely sped up development compared to most game jams I’m in, which was a pretty happy change of pace. I feel like every day I got a good several hours of development time in, I would always have at least something minor to show for it, which isn’t exactly a given in game development.
I definitely had a far better work-life balance during this than I have during most game jams. I never really got burnt out during the process, with only IRL issues getting in the way during the final stretch.
What Didn’t Go Well:
Despite having a base to work off with speeding up development, due to Reflection Reverie starting as a game for GBJam, there were...a lot of very poor structural decisions focused around “get it done as quickly as possible” rather than “get it done right to make things more maintainable” long term. I have learned a lot about development since working on Reflection Reverie, and that has helped make the game’s foundations far less shaky, but a significant portion of this jam’s progress was spent refactoring and fixing old code and other issues, rather than instead working on new content.
The game’s custom image file format (initially developed for Shadows of Gara, for those who know what that project is) is definitely another bottleneck, but not for the reason you’d expect. The Godot plugin is serviceable, though is single-handedly the thing keeping Reflection Reverie stuck on Godot 3, due to breaking changes made between Godot 3 and 4), but yeesh, is FOSSil Sprite (the custom graphics editor I made back in college) just...not good. Granted, part of it is just due to a lack of development time, but it’s very basic, and lacks a lot of functionality that keeps it from being my main graphical editor. I really should just figure out how to make a plugin for GIMP that exports to the right format (or maybe Aseprite, if someone gets it for me, I guess. I’ve heard it’s really good for pixel art, but the price tag always turned me away). However, I knew going in that fixing these issues would be a long term issue that would plague the entirety of development during this jam.
In a similar vein, and mentioned briefly before, Reflection Reverie is still stuck on Godot 3, due to the above image format. Ideally, I would have liked to spend the first day of development time during this jam porting the game to Godot 4, but likewise, I knew going in that due to the nature of the plugin, it would not be a simple one-day affair. Looking into this is, of course, now on the table, once I finish the game’s intro.
While not an issue for any content appearing in the current game build, there are two different software programs I use for creating the game’s music tracks (technically 3, if we count using Tenacity to convert .wav files to .ogg files). There’s Trackerboy, which I use for most of the game’s songs, and then, for a select few I instead make use of LMMS (you’ll...definitely know when you hear one of the LMMS tracks, for both deliberate and non-deliberate reasons). Now, I love LMMS, I REALLY do, it’s by far my favorite DAW, but there’s a few minor quirks that always really irked me. See, Trackerboy is, as you’d expect, music tracking (composing for the uninitiated) software designed for accuracy to an actual Game Boy. As such, it’s tempo system is a bit...weird. A lot of its tempos will actually be fractional, rather than a solid number. LMMS can’t do fractional tempos, only whole numbers. It’s an exceedingly minor issue, but it’s also a subtle one that definitely adds to the feeling of something just being...”off” with the LMMS tracks, so...it works. I mostly just bring it up here because it’s absolutely interesting, and perhaps foreshadows a bit...more that I wish to take Reflection Reverie in the direction of (that I didn’t get to do back in 2022, but have been planning ever since even the original GBJam build).
Plans Going Forward:
Empty words coming from me, I know, I know, but working on Reflection Reverie during Continue Your Game: The Jam definitely reignited my passion for the game...as much as I doubt anyone else would feel the same (the battle system is just worse Undertale/Deltarune, and I never came up with anything better, lol). I do plan to work on the game more, though I suppose time will tell for how long.
An update to Godot 4 is being considered, but only after completing the game’s intro, and only if doing so seems feasible.
Should I continue the game, I would like to add the additional graphics options I had planned back in 2022 (for time constraint reasons, only “Greenscale” and “Colorized” exist in the final game, being equivalent to the graphics of a Game Boy and a Game Boy Color playing a Game Boy game). I’d like to, if time allows, also add the following graphics modes.
- Full Color (graphics akin to a Game Boy Color game)
- Console (graphics akin to a Game Boy game played on a Game Boy Player, custom borders and all)
- possibly also a mode that would appear like a Game Boy Color game played on a Game Boy Player (impossible in reality, but hey, this isn’t actually a Game Boy game, so we can provide enhancements), I’m just not sure what to call it.
Something to keep in mind, but the reason why I hesitate is that this would be more than simple palette changes. The graphics modes you select WILL actually change some other things in the game, but that’s all I’ll say for now. It’s a secret to everyone.
No promises, but...I might be doing development streams at some point. It’s still up in the air as to whether I will or not, but we’ll see. Due to the...current economic situation of the country I am unfortunately trapped in (United States), I don’t exactly...have a...job anymore, and haven’t been able to find one in over a year, so I suppose at this point, my new job is working on this and hoping it all works out, lol.
With that, I bid you all farewell, and I hope you all enjoyed seeing these devlog updates for Continue Your Game: The Jam. For those participating, I hope you all had just as much fun picking up an old project. See y’all later.
Files
Get Reflection Reverie
Reflection Reverie
A scuffed, short adventure into a garden dream
Status | In development |
Author | Impossible Realms |
Genre | Role Playing |
Tags | GBJam, Pixel Art, Retro, Short |
More posts
- Monthly Update #2 – September 2025:10 days ago
- Continue Your Game: The Jam Daily Devlog #832 days ago
- Continue Your Game: The Jam Daily Devlog #733 days ago
- Continue Your Game: The Jam Daily Devlog #634 days ago
- Continue Your Game: The Jam Daily Devlog #2-535 days ago
- Continue Your Game: The Jam Daily Devlog #139 days ago
- Monthly Update #1 - November 2022Nov 02, 2022
Leave a comment
Log in with itch.io to leave a comment.