Demodash
This article is a stub. You can help 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 that would otherwise be impossible. 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 Madelime 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 (1.4+)
The Demodash is officially known as a crouch dash in Celeste 1.4.0.0. Assigning that to any unused button can enable it to function as a Demodash button.
Creating a demo button (pre-1.4)
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.
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 6B falling checkpoint).
Another use for Demodashes is using the shorter hitbox to make certain tricks more forgiving. For instance, the corner kick performed at the end of First Blockless in 4A is two frames more lenient if the up-right dash is a diagonal demodash. This is because Madeline will uncrouch at the end of the dash, and if the top of her hitbox is touching a wall after she uncrouches, she can jump off the wall. Horizontal demodashes allow you to perform mid-air Hyperdashes, referred to 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.
- Check: Hyperdashes
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.