Gamasutra is part of the Informa Tech Division of Informa PLC

This site is operated by a business or businesses owned by Informa PLC and all copyright resides with them. Informa PLC's registered office is 5 Howick Place, London SW1P 1WG. Registered in England and Wales. Number 8860726.

Gamasutra: The Art & Business of Making Gamesspacer
View All     RSS
January 23, 2020
arrowPress Releases

If you enjoy reading this site, you might also want to check out these UBM Tech sites:


Designing around time is hard!

by Patrick Purcell on 03/07/13 12:36:00 pm

The following blog post, unless otherwise noted, was written by a member of Gamasutra’s community.
The thoughts and opinions expressed are those of the writer and not Gamasutra or its parent company.


I now have my rewind functionality working properly, but I have no idea how to use it in an interesting way.  The assignment specifies that Braid's rewind is to be implemented, but what I am working on has two players (split screen) moving about a 3D environment in first person.  Each player is able to freely move backward in time, forward in time at the "real" rate, or forward in time at twice the "real" rate.  As of right now there is a 12 minute window to play with.

Every frame I store each player's position, yaw, and pitch.  When players are not on the same timeline as each-other, they see a phantom of the other player doing what that player's input dictates, and they see the "real" player going about their recorded actions...

I have not yet decided what to do with the player that is ahead in the timeline, I might take the most recent velocity of the other player and slow it down to give the forward playeer the sense that they are moving very fast through time.

Here is a screen shot of Red being ahead of Blue in time...Blue sees Red doing what he was doing when he was at Blue's time, and Blue sees Red's phantom obeying player input.  Note that Red cannot see any version of himself besides his own timeline.

 photo FPStudioScreen_01.png

 My first instinct is to give the players guns and let them try to duke it out using time travel...not terribly inventive as far as design is concerned, but I am more focused on the functionality of this for the time being.

I am going to decrease the buffer from 12 minutes to something more reasonable like 45 seconds and give it a "battery" of sorts to limit player's use of it.  A smaller buffer will also give me more memory to play with as far as storing player state.  I also plan on giving some sort of graphical indication of a phantom's "position" in time.

One challenge that I am not sure how I will tackle is the issue of a player killing another on a "pre-timeline" then having everything the dead player will do in the "post-timeline" get nullified.

This is fun... 

Related Jobs

Gear Inc.
Gear Inc. — Hanoi, Vietnam

[Vietnam] Game Designer
Sucker Punch Productions
Sucker Punch Productions — Bellevue, Washington, United States

Gameplay Programmer
ArtCraft Entertainment, Inc.
ArtCraft Entertainment, Inc. — Austin, Texas, United States

VFX Artist
Health Scholars
Health Scholars — Westminster, Colorado, United States

Technical Artist

Loading Comments

loader image