Editing Data resetting
The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then publish the changes below to finish undoing the edit.
Latest revision | Your text | ||
Line 1: | Line 1: | ||
'''Data resetting''' is a [[glitch]] in [[Microsoft's version of Chip's Challenge]] allowing data stored on a virtual 32nd row of the [[grid]] to affect gameplay. It is commonly an element of [[insane level]]s. Data resetting is currently not emulated by [[Tile World]], and does not exist in [[Lynx ruleset|Lynx]] or in [[Chip's Challenge 2]]. | |||
'''Data resetting''' is a [[glitch]] in [[Microsoft's version of Chip's Challenge | |||
The map of each level has coordinates from (0, 0) to (31, 31). However | The map of each level has coordinates from (0, 0) to (31, 31). However, various data are stored in an invisible row, namely row 32. This row is not visible in the level and is not intended to be modified at all during the course of gameplay. Nevertheless, the data in this row can be accessed by creating a [[Clone machine|clone]] connection that targets a square of the form (x, 32) with the necessary conditions. | ||
==Specific data stored in row 32== | ==Specific data stored in row 32== | ||
Each | Each coordinate (x, 32) corresponds to a byte of information. A byte can store any number from 0 to 255 and is adequate for a piece of information such as the x-coordinate of Chip. | ||
However, | However, some data, such as the time limit of a level, require two bytes of information, as two bytes can store any number from 0 to 65535. These bigger pieces of data will take up two consecutive squares, (x, 32) and (x + 1, 32) where x is an even number. In this case, (x, 32) stores the low-order byte of the data, and (x + 1, 32) stores the high-order byte of the data. Resetting (x, 32) will only reset the low-order byte, and resetting (x + 1, 32) will only reset the high-order byte. | ||
The specific pieces of information stored in each square in row 32 are as follows: | The specific pieces of information stored in each square in row 32 are as follows: | ||
Line 16: | Line 15: | ||
Note that the above data, with the exception of the level number, are initial values; resetting them does not change the actual value during gameplay. The exception is level number; in this case, resetting it will cause the "Next Level" command to go to level 1. | Note that the above data, with the exception of the level number, are initial values; resetting them does not change the actual value during gameplay. The exception is level number; in this case, resetting it will cause the "Next Level" command to go to level 1. | ||
* '''(8, 32)''' and '''(10, 32)''' store the x- and y-coordinates of [[Chip]]. | * '''(8, 32)''' and '''(10, 32)''' store the x- and y-coordinates of [[Chip]]. | ||
* '''(12, 32)''' stores Chip's sliding state: 1 if he is on any [[sliding tile]] and 0 if he is not. | * '''(12, 32)''' stores Chip's sliding state: 1 if he is on any [[sliding tile]] and 0 if he is not. | ||
* '''(14, 32)''' stores the current keystroke's buffer state: 1 if a keystroke is in buffer (more than one keystroke has been attempted within one turn) and 0 if it is not. | * '''(14, 32)''' stores the current keystroke's buffer state: 1 if a keystroke is in buffer (more than one keystroke has been attempted within one turn) and 0 if it is not. | ||
* '''(18, 32)''' and '''(20, 32)''' store the x- and y-directions of the keystroke. Note that one of these must always be zero. | * '''(18, 32)''' and '''(20, 32)''' store the x- and y-directions of the keystroke. Note that one of these must always be zero. | ||
* '''(22, 32)''' stores Chip's [[Death message|autopsy report]] (of note is that this requires | * '''(22, 32)''' stores Chip's [[Death message|autopsy report]] (of note is that this is the only reset that ''requires'' a north clone block and not any creature): | ||
** 0. Alive | ** 0. Alive | ||
** 1. [[Water|Drowned]] | ** 1. [[Water|Drowned]] | ||
Line 28: | Line 27: | ||
** 5. Killed by a [[monster]] | ** 5. Killed by a [[monster]] | ||
** 6. [[Time limit]] expired | ** 6. [[Time limit]] expired | ||
* '''(24, 32)''' and '''(26, 32)''' store Chip's x- and y-directions when he is sliding. One of these is always zero, and both are zero when Chip is not sliding. | * '''(24, 32)''' and '''(26, 32)''' store Chip's x- and y-directions when he is sliding. One of these is always zero, and both are zero when Chip is not sliding. | ||
* '''(28, 32)''' stores the amount of monsters in the monster list before the player starts playing the level. | * '''(28, 32)''' stores the amount of monsters in the monster list before the player starts playing the level. | ||
* '''(30, 32)''' and '''(31, 32)''' store the coordinates of the initial position of the first monster in the [[monster list]]. | * '''(30, 32)''' and '''(31, 32)''' store the coordinates of the initial position of the first monster in the [[monster list]]. | ||
Line 37: | Line 36: | ||
*There must be a buried north clone-able [[Object|object]], most commonly [[clone block]]s, at (x, 0). | *There must be a buried north clone-able [[Object|object]], most commonly [[clone block]]s, at (x, 0). | ||
*A clone connection must be made from a [[red button]] to (x, 32). | *A clone connection must be made from a [[red button]] to (x, 32). | ||
*The square at (x, 31) must be free for an object to clone there. | *The square at (x, 31) must be free for an object to clone there. | ||
Line 43: | Line 42: | ||
* The buried north object will move north, wrapping around the map, and appear at (x, 31) as a normal object of the type that was buried. | * The buried north object will move north, wrapping around the map, and appear at (x, 31) as a normal object of the type that was buried. | ||
* The data stored at (x, 32) will be reset to 0. | * The data stored at (x, 32) will be reset to 0. | ||
* The buried tile in the lower layer of (x, 0) will be replaced with a tile with the index equal to the data formerly occupying (x, 32). This index is written in the infobox on the respective tile's page | * The buried tile in the lower layer of (x, 0) will be replaced with a tile with the index equal to the data formerly occupying (x, 32). This index is written in the infobox on the respective tile's page. | ||
== Uses == | == Uses == | ||
Line 52: | Line 51: | ||
Resetting (8, 32) will make Chip warp to the left side of the screen, and with (10, 32) he will warp to the top of the screen. Resetting (12, 32) will make Chip stop sliding, even on ice, though some other [[object]] will have to trigger the [[red button]]. Resetting (22, 32) will make Chip invincible for the next turn, allowing him to pass through [[destructive obstacle]]s. | Resetting (8, 32) will make Chip warp to the left side of the screen, and with (10, 32) he will warp to the top of the screen. Resetting (12, 32) will make Chip stop sliding, even on ice, though some other [[object]] will have to trigger the [[red button]]. Resetting (22, 32) will make Chip invincible for the next turn, allowing him to pass through [[destructive obstacle]]s. | ||
The result of such | The result of such behavior also includes changing the tile itself, to create items out of nowhere. If Chip's x-coordinate was 21 and the data at (8, 32) is reset, an [[exit]] will be buried at (8, 0). Note that most data resets are limited, as they only reach up to one. The level number and Chip's coordinates are generally the most useful. | ||
===49=== | ===Level 49=== | ||
A peculiar effect occurs when performing data resetting | A peculiar effect occurs when performing data resetting in level 49 of a [[level set]]. Recall that 49 is the index of a clone machine. Therefore (0, 32), which stores the current level's number, will effectively store a clone machine. Performing the steps to reset (0, 32) will in fact not reset the level number as it does in any other level. It will instead clone the object to (0, 31) as if there were a clone machine ''underneath'' the buried object at (0, 0). | ||
The same effect can be achieved if the level set has exactly 49 levels. In this case, (2, 32) will hold the number 49 for any level in the set. | |||
The | |||
== Famous levels using data resetting == | == Famous levels using data resetting == | ||
Line 72: | Line 65: | ||
* [[User:Chiphome5|ChipHome5]]'s ''[[Delivery Ship]]'' | * [[User:Chiphome5|ChipHome5]]'s ''[[Delivery Ship]]'' | ||
* [[Tyler Sontag]]'s ''Block Factory II'' | * [[Tyler Sontag]]'s ''Block Factory II'' | ||
[[Category:Glitches]] | [[Category:Glitches]] |