Twice Step Glitch

Revision as of 04:37, 27 April 2019 by Indyindeed (talk | contribs) (fixed date in hidden comment)

The Twice Step Glitch, formerly known as the Teleport Skip Glitch, is an obscure glitch in Microsoft's version of Chip's Challenge relating to the timing of when buffered mouse moves are processed. It was brought to public attention for the first time on December 23, 2007, when David Stolp released a video of him using the glitch to add one second to the bold time on Skelzie. As of April 26, 2019, the glitch has not been implemented into Tile World and its legality for optimization on the official scoreboards is pending the results of a community discussion.

Mechanics

In MS, the game engine normally processes events in the following order:

  1. First half of a move
    1. Any voluntary move by the player (a move the player has control over, e.g. walking or stepping off a force floor)
    2. Any involuntary move by the player (a move the player does not have control over, e.g. teleporting or sliding across ice or force floors)
    3. Sliplist update (the position of all sliding blocks and monsters gets updated)
  2. Second half of a move
    1. Any voluntary move by the player (only possible if a half-wait was performed)
    2. All monsters move (excluding ones on the sliplist)
    3. Any involuntary move by the player
    4. Sliplist update

However, if a mouse input is prepared in advance of when it is executed - either by making multiple moves with a single mouse click, or by clicking the mouse in advance while Chip is sliding - and a boost is performed as a result of said mouse click, then MSCC will process the events out of order. Specifically, the game will process the voluntary boost immediately after the involuntary slide, instead of at its usual place in the list. The most notable effect of this is that Chip will move before the sliplist updates instead of after, which can have significant consequences in certain situations.

Teleport application

The most famous application of the Twice Step Glitch is to "skip" teleports. This application of the glitch has been used to set new records on Skelzie, Graduation, and Suburban Legend, and it inspired the former Teleport Skip Glitch name back when it was not widely understood.

Any monster or block that goes into a teleport will instantly appear on top of its destination teleport. However, because teleportation is a type of sliding move, the object must wait for the sliplist to be updated before it can step off the new teleport. If a teleport is "occupied" with something on top of it, the game will not consider it a valid teleport destination; if Chip or another creature or block attempts to teleport and the would-be destination teleport is occupied, the game will "skip" to the next teleport and choose that as the destination instead. This mechanic can be taken advantage of to teleport to unintended destinations, such as in the famous bust in Yet Another Yet Another Puzzle, but normally this requires slide delay; if Chip pushes a block into a teleport or a monster enters a teleport, the sliplist will get updated before Chip himself can teleport, so the only way an object will still be on top of a teleport by that time is if the object stalls on the sliplist due to slide delay.

However, because the Twice Step Glitch allows Chip to sneak in a voluntary move after monsters move but before the sliplist updates, the glitch can be used to take advantage of this teleport "skipping" behavior without any slide delay at all. Here is a demonstration level:

 

At first glance the level is unsolvable, because Chip can only ever teleport between the starting square and the squares with toggle buttons. However, the presence of the pink ball means the Twice Step Glitch can be used to the player's advantage to "skip" a teleport and wind up in the exit. To trigger the glitch, the player must click anywhere on the second row: this will cause Chip to enter the first teleport, exit out of the second teleport, then immediately re-enter the second teleport again. This second teleportation will trigger the Twice Step Glitch, as it is a buffered mouse boost. Meanwhile, the pink ball will independently enter the second teleport and exit the third teleport. Since the Twice Step Glitch was triggered, the game will process Chip's second teleportation before the sliplist updates instead of afterwards, so Chip will teleport while the ball is still on top of the third teleport. Since the third teleport is now considered "occupied" by the game, Chip will exit out of the fourth teleport and complete the level.

Other applications

 

This demonstration level also appears unsolvable at first glance, as the block is guaranteed to kill you when it rebounds. However, if the mouse is used to repeatedly boost against the bottom ice tile, which will trigger the Twice Step Glitch, then Chip will step down onto the ice before the block slides to kill him, and then the sliplist will update, causing the block to land above Chip while he is sliding, in turn allowing him to push it up into the bomb. (Note that in this specific example, a half-wait is necessary before pushing the block, or else you will die before the initial mouse click takes effect due to the timing of mouse moves.) This behavior can save time in levels like Frozen Waffle, though currently these would-be new records are not documented on the scoreboards.


 

In this demonstration level, the glider is normally guaranteed to kill you, as the sliplist will update before Chip has any chance of voluntarily boosting into the exit. However, if the mouse is used to slide and boost into the exit, the Twice Step Glitch will allow the level to be beaten before the glider moves. This behavior can theoretically be used to save time in levels like Lean Thinking and They're Not Called Blocks for Nothing.


 

This demonstration level has a time limit of 1, and is unsolvable with the keyboard: Chip will die on the square before the exit before he can boost. However, if the player clicks on the exit while sliding to buffer a mouse boost in advance, the boost will occur before the end of the move, allowing him to exit before the timer ticks down. This can save 0.1 seconds on any level featuring a boost into an exit, and in some cases can be used to save a full second on levels such as Sudden Death and Abandoned Mines.

See also