@lucid herald
when i'm mapping a long room with eg. a touch switch near the start, i can't simply reload the level to test out the part i'm working on (as the switch gates will reset too), and i also can't use a savestate to preserve them (as the level will be reset to the point of the savestate).
a solution that fixes both problems is to store the buttons pressed by the player to get through part of the room as a tas, and fast-forward it when reloading the map.
would the following implementation of this be sensible?
- there are three states (gameplay, tas playback, tas write)
- when in the tas write state, gameplay acts normally but all inputs (including setting savestates) are appended live to the tas file
- when a savestate is loaded (through keypress or death), all inputs after that savestate are "rolled back" (removed from the file)
- pressing f5 reloads the room as normal, but also fast-forwards to the end of the tas, so position & room state are hopefully preserved; if this fails (eg. player dies), revert somehow (respawn player at spawnpoint?)