So, Twi, who’s been working to help me by creating a new framework for the game, has been urging me to keep everyone in the loop with a progress update.
While I’ve been struggling to learn Git and have been doing cleanup and reorganization of the game code and files to make it comprehensible to someone who isn’t me, Twi has built a timelog system and now has a stand-alone proof-of-concept “game” running with the new code.
Timelog
Up until now, the game hasn’t really been aware of anything the player has done unless I explicitly have a scene set variables that I remember to check later.
Twi’s timelog sets out to make this less hap-hazard by creating a time-stamped registry of events. Whenever the PC interacts with a character or takes some kind of an action, I can add it to the log when it happens so that there will be a standardized record.
The log also has helpful search functions, so I can find out when something happened, how often, how much time passed between it happening, etc., etc. The new code for scenes can allow these log entries to be used as requirements for scenes to be selected, which should make adding them to the game a bit easier.
Ren’Py challenges
Admittedly, my coding skills are pretty weak, as most of my experience is with Ren’Py’s own language and small bits of Python that I’ve been using from inside of it.
Twi tells me that Python is heavily-modified inside of Ren’Py, which has made developing the timelog a bit challenging, particularly because of Ren’Py’s rollback feature.
For those who aren’t familiar, in most Ren’Py games, you can use the mouse wheel (or, I believe, page-up and page-down) to “reverse time” and step back through the game to an extent.
Ren’Py is pretty good about remembering variables that have been set and changing them back (otherwise Interns would completely break if the player rolled back past a variable that tracks some important event). The changes made to Python in order to make this happen are making this difficult to implement the timelog in a way that will allow it to rollback as well.
It sounds like this issue is mostly solved, however, so things are looking good.
Splitting Up
I’m trying not to allow working on this rebuild to prevent me from getting new content out, so we’ve been discussing splitting things up and creating two versions of the game for the near future; the “legacy” version that continues as-is, and a new version built on this new framework.
Existing content will be added to the new build over time, and players can try it out and give us feedback on how it’s working, what bugs they’re coming across, etc.
Leave a comment