Gedupdate

Art by: ototatx (via Discord!)

Another quick, off-cycle update to clean up some more things; last week I shoved out a replaced system to handle keeping track of how and when the UI changes between different display layouts. In the past we only had the possibility to track a single previous layout and some minor additional data with it (generally main text and buttons) – it was basically a bit of a hackjob that I cobbled together when getting the initial port work together enough to start seeing the game work, but over time as we’ve made the UI more complicated, it became clear the limitations were becoming ever more problematic to work around. We had to build more and more special cased code to handle exactly what we wanted to happen in certain circumstances and it was just generally a goddamn mess. I took it as far as I could, but it was clear we’d be chasing issues with it basically forever.

I had an idea of a better way to approach it that would allow us to strip out most if not all of the special casing; now we only need maybe one or two special cases in strategic places (essentially only for the main menu, to deal with when a gamestate is or isn’t available and what should happen in that case) but I kept putting it off, hoping One Last Set Of Bandaids would cover everything; and without fail, more shit would crop up that would need another set of bullshit to get working. The downside being, now I gotta fish out all of the special casing that had built up over time and strip a bunch of that shit out so we can just rely on the state stack instead. With as many submenus and sub-submenus we have, it turns out there was a lot more of this garbage that needed to get thrown out that I expected, but I think most of it should be out on its ass now. At least it’s given me an opportunity to carefully comb over all of the little bandaids we’ve stacked up over time, which has let me find a few sneaky bugs that existed under the old system that’ll finally be getting fixed to boot.

0.9.052, builds 3334 and up:

  • Added busts for ST Turrets, Divrani Cultist, Shalin Shaman and Cheetah Pirate. (Adjatha & Fenoxo)
  • Fixed some more of the submenu loops under appearance. (Gedan)
  • Fixed a react error in the lightsout minigame. (Gedan)

0.9.052:

  • Added special support to the Accept/Cancel keybinds to also apply to the “Your inventory is full” modal. (Gedan)
  • Added inline image support to the codex and added some new art assets to squeeze into the codex. (Jacques)
  • Rebalanced the level 2 tainted rusher encounter. (Fenoxo)
  • Rebalanced available hours for the Pumpking encouter. (Fenoxo)
  • Fixed appearance screen submenus softlocking into loops. (Gedan)
  • Fixed a potential issue with the level up screen that could in rare instances result in a softlocked menu. (Gedan)
  • Fixed the image scaling option not properly applying. (Jacques)
  • Fixed the data menu sometimes not initiating in the correct mode layout. (Gedan)
  • Fixed a menu to options to menu loop using the escape keybind. (Gedan)
  • Fixed an issue with the mail and mail setup system that could result in loops and weirdness when backing out of the mails. (Gedan)
  • Fixed a button configuration error in a shower masturbate menu. (Gedan)
  • Fixed autopathing always disabling after navigating a single room. (Gedan)
  • Fixed Johr and the Pumpkings attack text appending to the players attack text. (Fenoxo)
  • Fixed the room configuration around the Pumpking encounter. (Fenoxo)
  • Fixed the room configuration around Kally’s house. (Fenoxo)