This kind of recording is both great for replay value and debugging purposes.
But yeah, the cost in memory might get enormous. I regularly read posts where people state they've played for HOURS for one particular game!
So unless you dump the records to file from time to time... you'll get in trouble...
You can get away with some of the recordings if the engine is truly deterministic. for instance, you might not have to store all the results of the pathfinding if said result is always the same.
Just record the move command (so Move + Target destination).
I would also revisit the data dump that presented earlier, there seemed to have some duplicates in there, and even some data that didn't really need to be saved at all (i saw a position x,y,z at least twice, something that looked like which animation was being played and the likes).
For scripts, it might be a good idea too to let each script decide what data they want to save. I'm willing to bet that some variables in there don't need to be reloaded. Should be more lightweight than say saving the complete lua context.
My 2 cents