Please create an account or Login! Have fun!

Spring mining: Difference between revisions

Jump to navigation Jump to search
(Add an explanation for everything.)
m (Fix minor typos and such)
 
(One intermediate revision by the same user not shown)
Line 86: Line 86:
|}
|}


The difference from the normal case here is that, since Chip is sliding, he doesn't do any collision checks, and just goes with the forced direction, meaning he only has one collision check in move phase.
The difference from the normal case here is that, in decision phase, since Chip is sliding, he doesn't do any collision checks, and just goes with the forced direction, meaning he only has one collision check in move phase.


At move phase, Chip checks collision to the right, first checking the recessed walls (no collision), then the block, causing the block to start moving.
At move phase, Chip checks collision to the right, first checking the recessed walls (no collision), then the block, causing the block to start moving.
Line 102: Line 102:
The monster must be before the player in monster order. (Reverse reading order position at level start)
The monster must be before the player in monster order. (Reverse reading order position at level start)


At decision phase, the monster must pick a free direction, which will move it away from the setup (in this example, the ball will move right)
At decision phase, the monster must pick a free direction, which will move it away from the setup (in this example, the ball will move right).


Chip checks collision to the right, but fails to push the block (thus, the collision check too) due to the ball, but still decides to go there.
Chip checks collision to the right, but fails to push the block (thus, the collision check too) due to the monster, but still chooses to go there.


At move phase, the monster moves away from the setup.
At move phase, the monster moves away from the setup.
Line 114: Line 114:
|}
|}


Chip checks collision to the right again, but this time doesn't fail, since the ball has moved away at this point, and pushes the block succesfully.
Chip checks collision to the right again, but this time doesn't fail, since the the monster has moved away at this point, and moves the block (and himself) succesfully.


(Note that if the ball was after Chip in monster order, Chip would move first, failing at move phase, too)
(Note that if the the monster was after Chip in monster order, Chip would move first, failing at move phase, too)


== Special cases ==
== Special cases ==

Latest revision as of 13:57, 23 May 2021

ChipS CC2.png This page describes a mechanic specific to the Steam rerelease of Chip's Challenge (and anything that emulates it). It may not exist in any other Chip's Challenge game.

Spring mining is a mechanic in Chip's Challenge 2 that is often caused by a glitch. It allows movable objects capable of pushing blocks to push a block off of a tile that becomes solid when moved off of (at least briefly) while also following it. In short, it lets the player follow blocks flicked off tiles under certain circumstances. It was first analyzed (and initially coined) by ncrecc.

Specifically, this works with a legally pushable block on a recessed wall, a swivel door, a turtle, or a railroad track with a switch where the next position is normally illegal to move onto.

It is named after the level Spring Mines, where this can commonly be observed by pushing any of the blocks on recessed walls upwards as a walker moves away from it.

Spring mining has no relation to spring stepping or spring sliding.

Sliding method[edit]

Spring mining may be achieved by sliding onto the minable tile in any manner, including slow-sliding via exiting a teleport. Spring mining in this manner can be prevented if you override in the direction of the tile directly before reaching it.

Retreating monster method[edit]

This is the more obscure method. Blocks on a spring minable tile may also be mined by holding a push on them against an entity that moves to another tile. This method can be observed in the level Spring Mines, which gives the interaction its name. Here, all blocks except the bottommost start on a recessed wall, and Chip steps onto one of the recessed walls by pushing its block against a walker until the walker moves away.

Springs3.gif

For Chip and Melinda (and only them), this only works if the moving entity in question started after them in reading order. Chips and Melindas introduced to the level via waterbirth will always be able to spring mine this way, regardless of their starting point. Chips and Melindas introduced via a clone machine will use the clone machine as their starting point.

Explanation[edit]

To make movement more simultaneous, CC2 has all movables pick a decision before anything moves. The two stages of a tick is decision phase (where everything picks a direction) and move phase (where everything moves).

Each decision phase, each movable gives a list of directions it will like to move, in order of descending preference. Each direction is checked until a non-blocked one is found. If all the directions are blocked, the last direction is chosen.

In move phase, the direction the movable chose is checked again, in case the level changed in a way that it is no longer possible to move in that direction. If the check succeeds, the movable moves in the chosen direction.

So, by default, a direction is checked a total of two times before moving, this will be important later.

Pushing normally happens (contrary to popular belief) at decision phase, since pushing is done while checking collision.

A thing to note before reading further, is that the layers collision is checked in is the following:

This means that terrain is checked only once, and before movables.

A normal example[edit]

Let's take a look at this diagram to see what happens.

(The diagram shows a 3d-esque view, showing the movable and terrain levels)

ChipE CC2.pngBlock (CC2).pngFloor (CC2).png
Floor (CC2).pngRecessed wall (CC2).pngFloor (CC2).png

At decision phase, Chip checks collision to the right, first checking the recessed walls (no collision), then the block, causing the block to start moving.

ChipE CC2.pngFloor (CC2).pngBlock (CC2).png
Floor (CC2).pngRecessed wall (CC2).pngFloor (CC2).png

The block starts moving, and notifies the leaving tile that it is leaving, causing the recessed wall to become a wall.

ChipE CC2.pngFloor (CC2).pngBlock (CC2).png
Floor (CC2).pngWall (CC2).pngFloor (CC2).png

Since there is nothing else to check (there are no items), the collision check is positive (though, it doesn't matter since players only use the result of collision checking for force floor overrides).

At move phase, another collision check is done, and since there is a wall, the check fails, and Chip doesn't move.

The two checks before movement mean that the fact that there is no second terrain check is covered by the second check, and is the reason why spring mining doesn't always happen.

The trick to spring mining lies in the reducing the amount of collision checks to one, so the second terrain check does not happen.

The only (known) way to doing that is by removing the decision phase check.

Sliding method explanation[edit]

ChipE CC2.png
Ice (CC2).pngBlock (CC2).pngFloor (CC2).png
Floor (CC2).pngRecessed wall (CC2).pngFloor (CC2).png

The difference from the normal case here is that, in decision phase, since Chip is sliding, he doesn't do any collision checks, and just goes with the forced direction, meaning he only has one collision check in move phase.

At move phase, Chip checks collision to the right, first checking the recessed walls (no collision), then the block, causing the block to start moving.

Since he never checks terrain again, the check succeeds, and he moves right.

Retreating monster method explanation[edit]

ChipE CC2.pngBlock (CC2).pngPurpleBall.gifFloor (CC2).png
Floor (CC2).pngRecessed wall (CC2).pngFloor (CC2).pngFloor (CC2).png

The monster must be before the player in monster order. (Reverse reading order position at level start)

At decision phase, the monster must pick a free direction, which will move it away from the setup (in this example, the ball will move right).

Chip checks collision to the right, but fails to push the block (thus, the collision check too) due to the monster, but still chooses to go there.

At move phase, the monster moves away from the setup.

ChipE CC2.pngBlock (CC2).pngFloor (CC2).pngPurpleBall.gif
Floor (CC2).pngRecessed wall (CC2).pngFloor (CC2).pngFloor (CC2).png

Chip checks collision to the right again, but this time doesn't fail, since the the monster has moved away at this point, and moves the block (and himself) succesfully.

(Note that if the the monster was after Chip in monster order, Chip would move first, failing at move phase, too)

Special cases[edit]

Yellow tanks cannot spring mine onto recessed walls, as they cannot enter recessed walls to begin with.

As all movable objects other than Chip and Melinda naturally override splash and explosion animations rather than treat them as walls, all non-player entities that can push blocks will spring mine blocks on turtles by default, and do not need special setups.

Player mimics will always spring mine blocks instead of flicking them, because they never check collision at decision phase.

Yellow tanks cannot spring mine via the retreating monster method, because they do not attempt to move if they are blocked at decision phase.

Rovers can spring mine via both methods.

Despawning and Respawning Glitch: Blocks of any type will instantly disappear if they spring mine another block off of a recessed wall, swivel door, or railroad track as described before while they are being pushed by another block-pushing entity, because pushed blocks check collision in front of them two times, and report their outcome based on the first one, and only move if the second one is positive, resulting in the collision check succeeding even if only some blocks actually moved, causing Chip to unconditionally move towards the tile with the ice block, causing a despawn.

Attempting the retreating monster method on a railroad corner with any type of directional block other than 4-way will result in the block becoming stuck in place and immovable unless pushed off by an entity with a railroad sign.