eXsolved 0 Newbie Poster

Hey All

Would someone care to explain or outline how developers implement time control into engines? Especially when you can go back in time, like in the game 'Braid'. I don't understand how its done, does the game write all the player moves, FX, events etc into a buffer, then read it backwards to reverse time?

Cheers :)