Editor, Expert player (2329)
Joined: 5/15/2007
Posts: 3933
Location: Germany
Emulator Coder, Site Developer, Former player
Joined: 11/6/2004
Posts: 833
Mega Man X Attract videos are also prone to desyncing. MMX2 has it really bad where different emulators (and versions thereof) will play the battle back differently and X can easily die.
Editor, Expert player (2329)
Joined: 5/15/2007
Posts: 3933
Location: Germany
http://www.youtube.com/watch?v=bRu8KbbAyOg CGN TASed the entire track, but the replay died halfway into the 2nd lap. Unknown whether a glitch with the game or the emulator, although according to him the ghost file is still intact.
Emulator Coder, Skilled player (1113)
Joined: 5/1/2010
Posts: 1217
Skyroads:
  • The demo always happens in level 0 (where normal levels are 1-30).
  • There is a word in memory that gives the current input method (keyboard, mouse, joystick, demo). That is set to demo.
  • If one pokes the demo value into that word while playing, it starts playing the demo input (from point depending on position).
  • If one pokes one of interactive methods while demo is playing, one immediately gains control.
  • On each physics frame the game divides the longitudinal position by 1638 and uses that as an index to load a byte (giving input to apply) from array containing the demo (loaded as-is from DEMO.REC).
  • The input from the byte is processed as normal input. For example, the ship can't double-jump.
  • The demo playback loads input even when game is lagging, unlike all other inputs.
  • Demo playback is always deterministic (at least if memory corruption is not involved)
  • It is possible to replace the demo, or even the level demo plays in.
  • If the level is replaced, it can be at most the length of the original demo level (160 tiles).
  • If that level length restriction is not obeyed, the game overreads the demo buffer and starts feeding random crap from memory after it as input.
Editor
Joined: 3/31/2010
Posts: 1466
Location: Not playing Puyo Tetris
Not really "control" of a demo but it is relevant (I think). Play Metal Slug X on arcade (MAME or FBA) set the level (difficulty) to 8. Wait for the demo. Watch the demo character die. Then the enemies will stand around laughing and pointing. My guess is that the demo character's behavior was only setup for level 4 (default).
When TAS does Quake 1, SDA will declare war. The Prince doth arrive he doth please.
Player (56)
Joined: 10/16/2012
Posts: 233
Location: Milwaukee, WI
Hoe wrote:
Tetris also has a list of predetermined peices. The following code nop's that branch: GEVOVAIA The computer now gets randomized peices, but uses the fixed movements intended for the original fixed set.
Speaking of Tetris, I know a glitch (not helpful for TASing, though) that gets you points for stuff you never did! Around frame 2,000, the computer demo starts. When the computer scores a tetris, press start in the middle of the flash. Then, when you start the game, and drop your first piece, then you will get the points for scoring a tetris!
If I could have a tool-assisted real life, I'd... Being a novice, I'd probably load the wrong state, have the IRS AI bankrupt me, and eventually make me want to kill myself and redo 11 years of hard work.
Player (34)
Joined: 3/8/2012
Posts: 398
Location: Windfall Island
TWW has Link standing in the intro screen, which is an actual map. After it sits for a while, it goes into a pre-rendered movie montage. There is a similar pre-rendered movie after you complete the game. DK64 has an input file, and it desyncs when you load the game in widescreen mode.
IronSlayer wrote:
Your counterargument would be like me saying that the Earth is round and then you telling me that I need to show it's flat so I can "prove us all wrong".
Seems legit.
Patashu
He/Him
Joined: 10/2/2005
Posts: 4043
Tyrian, the infamous space shooter game for Windows, not only has input encoded demos but lets you record your own demos using a hidden feature.
Command Line Parameters:
------------------------
Start Tyrian by typing FILE0001, and one of these parameters, and

RECORD    -Records a demo of the current game and saves it as DEMOREC.x (where
           "x" is a number in sequential order of the demo i.e. DEMOREC.1,
           DEMOREC.2, etc...) in the current directory (How do you play them
           back without renaming them to DEMO.x and overwriting the existing
           demo files???!!!)

When I discovered this I tried recording a playthrough of Tyrian 2000's final level, Fruit, but to my younger self's sadness it desynced and I never made any attempts after that. I never investigated if the desync was due to playing with mouse or just the feature being buggy.
My Chiptune music, made in Famitracker: http://soundcloud.com/patashu My twitch. I stream mostly shmups & rhythm games http://twitch.tv/patashu My youtube, again shmups and rhythm games and misc stuff: http://youtube.com/user/patashu