Demodash

From Celeste Wiki
Revision as of 00:16, 21 March 2021 by Wpxtmvpsxm (talk | contribs) (corrected a bunch of misinformation in "functionality" section, archie, keybind section. and usefulness section. added demohypers section. and probably other stuff. Changed "Maddy and Noel" to "EXOK" this is a wiki, they're not our friends.)
Jump to navigation Jump to search

This article is a stub. You can help the Celeste Wiki by expanding it.

A Demodash is a technique which enables Madeline to dash with a smaller hitbox- squeezing between spinners, dust bunnies and other obstacles. The name "Demodash" originates from the player who originally discovered it: DemoJameson, who found it out on October 14, 2018. A less commonly used generic name for the demodash is "crouch dash".

Functionality

Demodashes are in short, dashes with a crouched hitbox. If a player is inputting the down direction when they press the dash key, Madeline's hitbox will be crouched during the dash. (However, if she has any downward velocity, Madeline will uncrouch automatically). Her normal hurtbox is 9 pixels tall, while her crouched state lowers this to 4 pixels.

The game does not determine the direction of a dash until its 5th frame, which is a leniency mechanic to prevent casual players from accidentally pressing dash before the direction and getting a neutral dash. Demodashes exploit that mechanic- by holding down on the first frame of the dash (when the game checks whether Madeline is crouching) but pressing a different direction before the fifth frame of the dash. This will cause Madeline to dash with a crouched hitbox, which has numerous applications including going through smaller gaps than would otherwise be possible. When the dash ends, Madeline's crouch state will end as well.

Demodash binds, or "demo buttons" are, put simply, down and dash bound to a single key, which allows the player to perform Demodashes without having to do a manual dash redirect. On patch 1.3.1.2 this method functions by making sure the "demo button" has a lower input priority than the directional inputs the player is using. The d-pad on a controller has the highest input priority, followed by analog inputs, the keyboard's arrow keys and finally non-arrow keyboard directional inputs. When determining dash direction, the game will check these inputs in order, and when it encounters a directional input, it will stop checking there. However, when the game checks for crouch state on the first frame of the dash, it only checks whether 'down' is being held at all. So, if you input a direction, and press a demo button that is a lower priority input, it will cause Madeline to crouch but not affect the direction of the dash.

Notably, this input priority method can be used by console players to make demodashes easier- they can input down with the analog stick and a direction on the dpad to avoid having to use the manual dash redirect method.

During the 1.3.3.x beta releases, EXOK overhauled the way the game handles inputs and keybindings, and introduced an in-game "crouch dash" keybind. This option instantly makes Madeline dash in her crouched state, allowing both PC and console players to freely bind a demo button without using external software.

Creating a demo button

As discussed above, a demo button is essentially a down+dash bind which is lower priority than your primary directional input method.

  • Editing the settings.celeste file and finding the <Down>(key)</Down> line which may have a "None" value written in it. Changing it to a key of the player's preference will make them able to use the down key in a different button. After that, searching for the "Dash" line will have a "Key" line right below it, which is the keybind it's assigned to. Copying and pasting the same line, and then editing the value to anything else will assign the key to two keys.
  • Using Everest's option to assign multiple keys which can be shown when a key configuration is selected.
  • Using external software such as Joy2Key to assign a controller button to a keyboard key- which is itself bound to down+dash. This is currently the only way to bind a demo button to a controller, and unfortunately it's not possible on console versions of the game.

In the 1.3.3.x beta versions of Celeste, players can simply assign a key to the "crouch dash" bind ingame.

Usefulness

Demodashes were a massive discovery for the speedrunning community, allowing them to pass in between certain obstacles to save a significant amount of time. Since spinners and dust bunnies leave small gaps between them, it's possible to pass through them with a good setup. There are a few 'intended demos' through spinners in the game- three in Event Horizon, one in Remembered, and one which was unintended but patched to be significantly easier in Reflection (the Reflection falling checkpoint).

Another use for Demodashes is using the shorter hitbox to make certain tricks more forgiving. It becomes useful with moves such as corner jumps with a diagonal dash, which increase the frame window from 2 to 4. They also become very handy for performing mid-air Hyperdashes often referred as Demohypers.

Apart from speedrunning, Demodashes are also a situational life saver due to the player being able to squeeze through tight gaps with a smaller hitbox. They can be used to dash through tight, but very short tunnels, such as a few areas in Farewell.

Other variants

Diagonal demodashes

It is possible to redirect Demodashes into a diagonal demo, however due to its input density, it's usually not done without the use of a keybind that allows performing the trick in a much safer way. In order to do it, the player has to be holding the directional keys in a diagonal position (up-right, up-left for example), press the keybind and then release it within a window of 5 frames. These demodashes are mostly just used at high level speedrunning, due to the trick being rather risky and it giving very little timesave. It's also sometimes used to activate Archies from bubbles.

Archie

Demodashes are a very common way to activate an Archie, which is a quirk in the game that raises bubbles that the player enters with a crouched hitbox by 2 pixels. This is notably used to avoid spinners in the first key coin room in 4A- "Archie", or to skip two red bubbles in 5A- "Archimedes". In order to do an Archie, the player has to enter a bubble with a crouched hitbox, which can be done with a demodash. Archies can also be activated by simply crouch jumping into the bubble if it's close enough to the ground, or by dashing into the ground and then buffering a dash upwards into the bubble, which maintains the crouched state from the downward dash.

Demohypers

Because a hyperdash is simply a 'super jump' performed while in crouch-state, it is possible to do a hyperdash from a horizontal dash by using a demodash. This sometimes allows for the original dash to be faster- if you have less than 200 speed when starting the dash, a horizontal dash is faster than a down-diagonal dash on the ground, and will cover more distance (especially useful when using coyote frames). It also allows a hyperdash to be started from midair directly parallel to a platform, instead of needing to be above it in order to wavedash.

Trivia

  • It is possible to distinguish a normal dash from a Demodash by looking closely at the line Madeline's sprite makes upon dashing. It's normally closer to the middle of her body, but if a Demodash is done, it appears at the bottom of her sprite.
    • In the 1.3.3.x beta releases, they became even easier to notice, as Madeline's sprite will appear crouched in mid-air when the dash is performed.
  • Demodashes were originally an unintended side effect caused by the game's dash redirection mechanic, but it was later endorsed by the developers, as multiple demo gaps have been created in the Farewell release.