There are many ways to go about this, my suggestion is to have the game create a stamp of the entire screen every 15 seconds (amount of time can be set). Once there are more than 20 or 30 (can be set) stamps, the last one is deleted, and 15 seconds later, a stamp comes and the last one is deleted again.
The problem would be the lag issues with taking a stamp every 15 seconds, though.
However with the new multi-threading that Simon is talking of implementing, maybe a system like this could be used? will have to see the speed increase once it is implemented into TPT.
I suggested this a long time ago to Simon and he even put it into the Version Changes on the Download page during the beta but I guess he never got around to it.