In the past, I used to create a simple replay system in a framerate dependent game. Basically, from the start of the stage, I logged which keys do the player pressed and released at which frames. It works just fine with simple game loop (I don't even have frameskipping at that time)
Now in C2, since we got ourselves independent framerate here and the ways things go around are different. If I am to record all the keys that the player pressed and released, I will need some ways for this. The same program running twice may result in very tiny bit timetick and this might not work.
So anyone got an idea?
I prefer to log just the keys pressed and released and the random seed values to make the original run and the replay run identical. But sure, there are more matters at hand. Still, we have such replay feature in Team Fortress 2, so it should be possible. Furthermore, Blizzard's Heart of the Swarm kicks this up a notch by allowing the player to "drop in" and continue from any part of the replay.
While recording software allows us to store everything we see on the screen into a video file, the problem is the file could be big, especially on longer replay.