Quote:
Original post by DBX
How about thinking about it in a somewhat wacky, possibly irrelevent, but different way. Imagine
you were developing a game. This game's logic has a fixed timestep. Let's say it runs at 100
ticks/second while playing (ignore rendering for now).
So, you're playing along in the game and it's ticking over as usual. If you stop ticking, time stands still and nothing changes. Carry on ticking and you're back to normal.
Now, in the game, the Dr Alpha character creates an android. The androids take over the world, but
then someone programs one android to go back in time. How do you implement this?
Of course, you'd have to assume all characters are AI driver, since human players exist outside the known universe.
For going back in time, you'd just have a physics (and AI) system that can go backwards - so you can just flip the backwards bit and carry on ticking.
I can see two ways this will now continue.
1) The world state is split into two different worlds. One going forwards, and one going backwards with the time travelling android. The humans in the first state are expecting the android to stop all this happening - but it never will as the game is relentlessly ticking forwards and nothing is going to suddenly change. While in the second world state, the android completes his task, and the world continues a different future.
2) The world follows the time travelling android backwards. During this time, the future humans who programmed the android no longer exist in their future state (because we only store the current world state). The android arrives at his destination, time goes forwards again and he stops Dr Alpha creating the original android. The world will now continue ticking on, but with the addition of an android, into an undefined future.
any other options?
This actually refers to how reality might work. The universe only stores the its state and a vast amount of possible future states, which are choosen from according to the set of rules we call natural laws.
Going back in time would be possible, but moving forward into the same time would be impossible, because the state is lost.
My approach would additionally store the current state and restore it if Dr.Alpha comes back. My game universe would have a current state-stack that is used to restore its state if the player travels back.