Re: Sports Game Replay

Kent Quirk <[email protected]> Tue, 25 Jan 2005 08:17:59 -0500
Newsgroups gmane.games.devel.general
Message-ID <[email protected]>
It's not naive, but it's not trivial to get right.

You have to make sure you record and play back ALL forms of input -- which 
is basically anything that can affect your performance. This includes exact 
timing and random number generation. One way of doing it is to feed all 
your input through a queue and include timing information in the input 
stream. It might be easier to think of the timing information as delay 
messages on the input stream, rather than tagging each event with a time. 
(Makes it easier to stretch timing or pause by increasing the delay 
messages without affecting the relationship between other objects.)

One of the difficulties we ran into when we tried this was repeatability of 
the detailed collision data. We ended up forcing the position of all 
movable objects in the world to something like 4 or 5 digits of precision 
every frame. It kept minor changes in floating point bits from blowing up 
and affecting future actions ("the butterfly effect"). Depending on the 
size of your world, this may be harder.

You also have to have fixed-framerate physics. Don't expect to adjust your 
physics time tick size from frame to frame. If you decide to do slow-motion 
and want it to look smooth, don't try to run your physics at a higher frame 
rate in the world -- run the physics at the same rate but interpolate 
between frames.

         Kent



At 08:35 PM 1/24/2005, you wrote:
>Hiya,
>I think this is as good place as any to post this...
>
>We're just starting a new sports game project, and we have been asked to
>provide replays of the action.  We have done many sports games before, but
>oddly none had a replay feature (was never requested before by publisher).
>Anyways, can anybody provide any tips or insights into things we need to
>watch out for or methods to support this feature?
>
>The game needs to run on the PS2 so memory and IO is limited.  Our
>characters use virtual controllers for all the movement so is it naive to
>just compress and store controller inputs for everything and then rerun the
>simulation with that?
>
>Cheers,
>-bb
>
>
>
>-------------------------------------------------------
>This SF.Net email is sponsored by: IntelliVIEW -- Interactive Reporting
>Tool for open source databases. Create drag-&-drop reports. Save time
>by over 75%! Publish reports on the web. Export to DOC, XLS, RTF, etc.
>Download a FREE copy at http://www.intelliview.com/go/osdn_nl
>_______________________________________________
>Gamedevlists-general mailing list
>[email protected]
>https://lists.sourceforge.net/lists/listinfo/gamedevlists-general
>Archives:
>http://sourceforge.net/mailarchive/forum.php?forum_id=557

----
Kent Quirk
CTO, CogniToy



-------------------------------------------------------
This SF.Net email is sponsored by: IntelliVIEW -- Interactive Reporting
Tool for open source databases. Create drag-&-drop reports. Save time
by over 75%! Publish reports on the web. Export to DOC, XLS, RTF, etc.
Download a FREE copy at http://www.intelliview.com/go/osdn_nl
_______________________________________________
Gamedevlists-general mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/gamedevlists-general
Archives:
http://sourceforge.net/mailarchive/forum.php?forum_id=557