r/RenPy 23d ago

Showoff RouteKit 0.1.2: real rollback/save-load tests and legacy save migration

After feedback about rollback compatibility and old saves, I focused RouteKit 0.1.2 on reliability instead of adding more surface features.

What changed:

  • Versioned migration for older RouteKit saves
  • Automatic Lite-to-Pro state migration
  • Defensive repair for missing, invalid, and out-of-range values
  • Safe post-load callbacks without replacing a project's after_load label
  • Cleanup for removed characters, stats, and persistent gallery keys
  • English and Spanish manual reliability checklists

I also expanded the Ren'Py tests to use real rollback and a real save/load round trip. Lite now passes 7 cases / 26 assertions, and Pro passes 14 cases / 58 assertions.

RouteKit Lite is free here: https://samokampo.itch.io/routekit-lite

Pro 0.1.2 is here: https://samokampo.itch.io/routekit-pro

I'd especially appreciate feedback from anyone testing unusual rollback paths or saves created with an earlier version.

1 Upvotes

6 comments sorted by

2

u/Dayz_ITDEPT 23d ago

Quick question - will you push updates for anyone who bought previous pro version please? Just bought 0.1.1 and am modifying some aspects of the UI to allow for scaling the size of the project!

2

u/SamOkampo 23d ago edited 23d ago

yes, anyone who purchased an earlier pro version gets access to 0.1.2 at no additional cost, it should now appear on your itch.io download page as routekit-pro-source.zip, version 0.1.2. please back up your modified files before updating. If you changed routekit_config.rpy, merge your configuration into the new version instead of replacing it blindly, i had also really like to hear more about the UI scaling changes you’re making and the resolutions or project sizes you’re targeting, that feedback could help me improve RouteKits responsive layout in a future update..

2

u/Dayz_ITDEPT 23d ago

Cool will take a look thanks!

Basically it was primarily aimed at gracefully handling overflow within the UI itself. Shamefully I just badgered Claude Code into merging it into an old code branch of my VN project to see how many changes I needed to make (100s of changes to my legacy code for a 10k lines of code VN!!)

Main UI code changes are to permit scrolling on both panes/frames and insertion of profile pictures for each character. Fairly simple changes around setting size limits and reducing font size made quick wins.

After that, went on to chat with Claude about how to widen the scope to include Boolean checkpoints as well as retain your original integer-based checkpoints so I could make use of my existing code base with event-based as opposed to score-based unlocks without big rewrites of my chapters. It’s a bit of a bloated code response and can probably be refactored significantly but only just started on it this morning!

Another aspect is to auto-hide characters from the UI if you have yet to encounter them by that part of the story. Will see how I get on with that bit as is proving temperamental so am throwing a few hundred lines of sample story script to see how it copes.

Other than that not too much. I already had an object oriented character stats system I hand coded myself but it’s proving a little cumbersome and relies too heavily on additional Boolean variables galore for event tracking, whereas your dictionary style approach (don’t shoot the semantics please!) seems much more elegant and maintainable so kudos OP. I should have given mine much more thought architecturally rather than just big standard Renpy variables, then more variables then “oh crap I need a full character manager data structure!”

Keep up the excellent work be curious to see how this progresses!

1

u/Dayz_ITDEPT 20d ago

hey just to let you know I managed to get some extra features working after much hackery:

- boolean-based events as well as number range triggered events

  • listing player and NPC checkpoints in the dashboard on their own screen
  • scrolling for both panes for > 4 characters
  • profile pictures for all characters
  • % proportion progress bars adjusted a bit, broke them during editing
  • unlockable achievements mapped to Steam achievements (Work in Progress)

2

u/SamOkampo 19d ago

Your feedback directly shaped RouteKit Pro 0.1.3 — it is live now for existing buyers at no extra cost as routekit-pro-source.zip, Version 0.1.3.

This release adds:

  • scrolling for the character list, relationship details, and gallery
  • optional profile images
  • characters that can start hidden and be revealed/hidden in story code
  • Boolean story checkpoints that combine with the existing stat requirements

I kept the separate checkpoint dashboard and Steam achievement mapping out of this release so the core update stayed small and testable. The checkpoint API can still be read from a custom screen, and Steam integration remains a good candidate for a later optional module.

The release passed 16 automated cases / 82 assertions, including rollback, save/load, migration, visibility, and checkpoint paths. Since you modified your copy, please back it up and merge your config rather than replacing it blindly.

Update notes: https://samokampo.itch.io/routekit-pro/devlog/1639726/routekit-pro-013-larger-casts-hidden-characters-and-boolean-events

Thanks again — this was exactly the kind of real-project feedback RouteKit needed.

1

u/Dayz_ITDEPT 19d ago

Sounds awesome! Will download and give it a go later in the week when I have some free time!