Vertical Speed

From A complete guide to Super Metroid speedrunning
Revision as of 20:32, 29 January 2019 by UNHchabo (talk | contribs) (See also: Link to Horizontal Speed)
Jump to: navigation, search

Introduction

There are two memory addresses for vertical speed. The first can either have a value of 1 or 2, where 1 is for rising and 2 is for falling. The second is for the vertical speed, and is always used regardless of the first's value.

Rising speed starts with a value which decreases by 7168 subpixels per frame. After the value goes under zero, the first address will switch from 1 to 2, and Samus will start to fall.

The values can be read as "pixels.subpixels."

The maximum amount of subpixels is 65536. You simply divide the decimal (subpixel) amount by 65536 to find the fraction of pixels involved.

"Ramp" means the amount of frames the source takes to reach the amount listed in the column.

"HGBFS" stands for "height gained before falling starts."

Crouching before jumping will cause Samus to begin her jump eight pixels higher than if she did not crouch.


Speed Values

Falling

Movement Amount Ramp Notes
Falling 5.02048 46 7168 subpixel increase per frame


Falling (underwater without Gravity Suit equipped)

Movement Amount Ramp Notes
Falling 5 60 2048 subpixel increase per frame


Rising

Movement Amount Ramp HGBFS Notes
Jump / Space Jump 4.57344 46 111.06144 Same values apply to Spring Ball
Jump / Space Jump (Hi-Jump Boots) 6.00000 56 167.37888 Same values apply to Spring Ball
Walljump 4.40960 44 101.58368
Walljump (Hi-Jump Boots) 5.32768 52 140.62464
Bomb Jump 2.49152 27 34.62464
Shinespark 14.? 2 N/A 7.07168 for first frame, then 14.? for all frames after (before crashing occurs); subpixel speed per frame is either random or uses an indiscernible pattern


Rising (underwater without Gravity Suit equipped)

Movement Amount Ramp HGBFS Notes
Jump 1.49152  ?  ?
Jump (Hi-Jump Boots)  ?  ?  ?
Walljump  ?  ?  ?
Walljump (Hi-Jump Boots)  ?  ?  ?
Shinespark 14.? 2 N/A 7.07168 for first frame, then 14.? for all frames after (before crashing occurs); subpixel speed per frame is either random or uses an indiscernible pattern

See also