Bugs on recording and playback
From my own experiences and what I've read from others the following have been observed:
- Using the same recording file, the game can show two different things on two playbacks of that. Examples of divergence points include: ships not blowing up in one playback but doing so in another, ships not executing a user order in one playback but doing it in another (including: using and upgrading their abilities). This behavior even happens with single-player recordings.
- Whenever one of the issue from (1) manifests during the playback the game becomes prone to crashing (with a minidump), but the crash can take variable time to happen after the divergence point. Sometimes it crashes soon thereafter, but sometimes it only crashes when you try to exit the game. And sometimes it doesn't crash at all.
- The recordings that are most likely to cause the problems 1-2 to happen are those flagged by the dev exe on load with Assert @ D:\projects\SINS\SinsRebellion\main\CodeSource\GS/Core/GameRecordSystem.cpp(144) savedCheckSum == currentCheckSum. But I've seen issues from (1) with recordings not otherwise detected as problematic.
- I've confirmed with VMmap that the crashes typically observed at (2) aren't related to the Sins process running out (or even close to the limit) of its 2GB address space. It can crash during playback with well over 700MB still available in its address space and free memory fragmentation wasn't an issue either with the largest free chunk at over 300MB.
Anymore of these kind of experience anyone would like to share would probably help the devs.