RAIntegration
RAIntegration copied to clipboard
Delta issue when loading save states
I've noticed this quite a few times whilst developing achievements, however when you load a save state, if the achievement has a delta condition, the delta check will compare the state of the game on the frame the state is loaded against the state of the game prior to loading the save state. Because of this, it's possible to incorrectly trigger conditions within an achievement due to the different states of the memory before and after loading a save state.
One example would be if you made a save state during a damageless boss fight attempt, healed yourself, then loaded the save state, the achievement would then pause lock because it detects your health decreasing from the state before loading the save state to after.
The only solution I've found for this whilst testing my own achievements is to load a save state twice in a row.
Delta information and hit counts should be stored in the save state as well. The caveat is if the achievement definition has changed, the achievement is just reset instead of being loaded from the save state, so both delta and hit count will be 0 for the frame in which it's loaded.