Jump to content

Re-loading save, re-rolls dupes inside the printing pod


Gnarmaw
  • Branch: Live Branch Version: Windows Pending

You can re-roll new dupes from the printing pod by saving and reloading, notice the cycle number.

bugone.png

bugtwo.png


Steps to Reproduce
1. Wait for the printing pod to activate 2. Save the game 3. Load the game until you get dupe that you want



User Feedback


This is not a bug. It wouldn’t be reasonable to have the game define all rolls from now till the end of time and keep that in the save file. For simplicity, the game generates duplicant randomly anytime the Choose Duplicants is selected.

Share this comment


Link to comment
Share on other sites

On 21/02/2018 at 3:48 PM, yoakenashi said:

It wouldn’t be reasonable to have the game define all rolls from now till the end of time and keep that in the save file.

No need.

The fact that identical saves loaded don't result in identical dupes indicates that the seed data used to randomise dupes is something beyond state alone, & includes some source of entropy (e.g: timestamp, mouse input, &c.). Not an uncommon approach, but the side effect is that it enables save-scumming.

A potential solution requiring nothing added to save data would be to generate a hash using map seed + cycle number, & use this as the seed for the dupe randomiser. This way you still get randomisation between spawns (thanks to the differing cycle number), but ensure no amount of reloading can change the dupes offered for that cycle.

 

This solution isn't immune to tampering - save files could still be edited to alter the map seed, resulting in a new hash - however:

  1. Depending how state is stored & parsed, it may already be impossible to alter the saved map seed without scrambling your game. e.g: if loading a game inflates a map from seed & then replays changes (a la git) to restore your game-state, then users are disincentivised to alter their map seed.
  2. There are methods to ensure & verify integrity of the map seed. e.g: hash the seed using a secret salt & store the result in the save for use in integrity tests; or hash the whole save file using a secret salt & append result to the file name; or encrypt serialised save data using the map seed so that deserialising with an altered map seed results in garbage... there are many ways.
  3. The goal is just to stop save-scumming. If users are editing saves it's irrelevant, as they could just change dupe stats directly.

 

Personally, I'm hoping they leave it as-is for at least a little while; I just finished a script to "audition" dupes for me when I'm working/asleep, saving good candidates for me to choose from, & I want to get some use out of it while I can :p

  • Like 1

Share this comment


Link to comment
Share on other sites



Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
  • Create New...