@Jittai Very cool link.
@DC Very good ideas!
1
2
In response to DarkCampainger
|
|
This is like Async Racing, so I've done this before:
|
That's cool! Reminded me of time trials in Mario Kart for SNES! The "ghost" records.
|
I like the additions to my idea. But I wonder if we could make it a bit crazier. That is push this concept to its most impossible but understandable limit. If that makes sense. Any astoundingly different ideas would be appreciated.
Who-a, nice link. |
In response to UltimateGameMaker
|
|
UltimateGameMaker wrote:
I like the additions to my idea. But I wonder if we could make it a bit crazier. That is push this concept to its most impossible but understandable limit. If that makes sense. Any astoundingly different ideas would be appreciated. But no. Those weren't additions to your idea, they were alternatives since your idea is impossible. To have multi-player real-time graphically show differently to layers with out running into a host of issues is literally not possible. The only way around this is to eliminate it being multi-player or eliminate it being real-time. As stated above by various people. |
This is possible via images and separate animations. Physical movement is the same but animations differ and are seen differently. Restricting physical movement the moment an animation may be out of view is also possible. e.g making movement delay itself after seven steps are taken to allow animation to reach current position.
|
ok there are ways to do this, simple change the step size of the people but make sure to change it back or have it set so it's changed back when they re log or something. or add a move delay and change it. or make the one of them faster so he'll be seen moving fast and they will be seen moving normally but will seems slow because hes moving so fast
|
1
2
Anyway, back on topic, if you wanted to track a player's actions such that you could "warp" them back in time, you'll have to start by representing each action in some kind of datum to track what moment(s) in time it occurred at. Minimally, the datum would need to be able to play the action back, given the same starting conditions. If you're feeling adventurous, you could also write it so it can reverse the action. If you're doing anything more complicated than tile-based movement, you'll want to look into kinematics.
Then you could create a queue of these actions and treat it as a sort of undo/redo chain. If a playerB changed something in the past, you would undo the recent actions by playerA until that point and let playerA go from there. Or you could regularly create "checkpoint" records that record the absolute position and data of the player, revert back to the oldest one of those before the time change, and then using that as a starting point, redo actions up to the changed event (if you don't want to write an "undo" system).
If you want to get fancy, once you've gotten back to the changed event and applied it, you could then re-apply all of the future actions that the player already took to see where they would have ended up.