Requirements

From OpenSA: Smash Engine Documentation Wiki
Jump to: navigation, search

[ 1:06 pm] Dantarion 80B0C8C0 = the array of asm routines

[ 1:06 pm] Dantarion [80B0C8C0] = req 0x2710

[ 1:06 pm] Dantarion [80B0C8C0+4] = req 0x2711

[ 1:06 pm] Dantarion etc

[80AE7DB0] = req 0x00-0x4C


Normal Requirements

Hex ID Dec ID Label Description Parameters
Type Label Description
00 {{#hexdec:00}} Character Exists?
01 {{#hexdec:01}} Animation End
02 {{#hexdec:02}} Animation has looped? Needs more testing.
03 {{#hexdec:03}} On Ground
04 {{#hexdec:04}} In Air
05 {{#hexdec:05}} Holding a Ledge This will trigger at any time you are still in 'possession' of the ledge
06 {{#hexdec:06}} On a Passable Floor On a platform/floor that can be dropped or fallen through
07 {{#hexdec:07}} Compare Any Comparator
Value Comparison Operator
Any Comparator


08 {{#hexdec:08}} Bit is Set
09 {{#hexdec:09}} Facing Right
0A {{#hexdec:0A}} Facing Left
0B {{#hexdec:0B}} Hitbox Connects Will only work in GFX or SFX tabs Value 1 - Hitbox, 2 - Hurtbox, 4 - Shield, 3 - Hitbox/Hurtbox, 5 - Hitbox/Shield, etc


0C {{#hexdec:0C}} Touching a Floor, Wall, or Ceiling Value 1 - Floor, 2 - Left Wall, 3 - Ceiling, 4 - Right Wall


0D {{#hexdec:0D}} Is Throwing Someone
0E {{#hexdec:0E}} ??? Freezes?
0F {{#hexdec:0F}} Button Tap? Triggers continuously on ground/air?
10 {{#hexdec:10}}
11 {{#hexdec:11}}
12 {{#hexdec:12}}
13 {{#hexdec:13}}
14 {{#hexdec:14}} Is in Hitlag
15 {{#hexdec:15}} Article Exists Value Article ID


16 {{#hexdec:16}} Is Overstepping an Edge Character's stage collision box is beyond the edge of the floor horizontally while on the ground
17 {{#hexdec:17}} Distance from Floor Character is within this distance from a floor surface directly below them Scalar Distance


18 {{#hexdec:18}}
19 {{#hexdec:19}} ??? Freezes?
1A {{#hexdec:1A}}
1B {{#hexdec:1B}} Change in Air/Ground State
1C {{#hexdec:1C}} Article Available Value Article ID


1D {{#hexdec:1D}}
1E {{#hexdec:1E}} ??? Triggers continuously during Jumps, Falls, Respawn, and generally things that are in the air and IASAable?
1F {{#hexdec:1F}} Holding Item
20 {{#hexdec:20}} Holding Item of Type Seems to check whether an item is of a certain type; often used when deciding whether to throw an item based on an attack button press (throwing items only) or a throw button press (most other items). Value Item class?


21 {{#hexdec:21}} Light Item is in Grabbing Range Item catching box is overlapping an item of this type's catch box. This includes most if not all items not in 22. Will trigger even while unable to pick up items
22 {{#hexdec:22}} Heavy Item is in Grabbing Range Same as 21 but for heavy items (crates, barrels, party balls, etc)
23 {{#hexdec:23}} Item of Type(?) is in Grabbing Range Same as 21 but only for certain types of items?
24 {{#hexdec:24}} Turning with Item Triggers while turning around with items that have special turns (hammers, cracker launcher, heavy items, etc)
25 {{#hexdec:25}} ??? Freezes?
26 {{#hexdec:26}} ??? Freezes?
27 {{#hexdec:27}} ??? Freezes?
28 {{#hexdec:28}} ??? Freezes?
29 {{#hexdec:29}}
2A {{#hexdec:2A}} Is in Water Triggers any time you are in the water except while dying from drowning
2B {{#hexdec:2B}} Roll A Die Value Sides


2C {{#hexdec:2C}} Subaction Exists Value Subaction ID


2D {{#hexdec:2D}} ??? Triggers continuously on ground/air?
2E {{#hexdec:2E}} Button Mashing? Status Expired (sleep/bury/freeze)?
2F {{#hexdec:2F}} Is Not in Damaging Magnifier Can be in magnifier slightly off camera, but not far enough to be taking damage
30 {{#hexdec:30}} Button Press Value Button


31 {{#hexdec:31}} Button Release Value Button


32 {{#hexdec:32}} Button Pressed Value Button


33 {{#hexdec:33}} Button Not Pressed Value Button


34 {{#hexdec:34}} Stick Direction Pressed? Without any params was triggering anytime up/down was not pressed
35 {{#hexdec:35}} Stick Direction Not Pressed? Without any params was triggering anytime up/down was pressed
36 {{#hexdec:36}}
37 {{#hexdec:37}} Is Being Thrown by Someone (1)
38 {{#hexdec:38}} Is Being Thrown by Someone (2)
39 {{#hexdec:39}} Hasn't Tethered 3 Times
3A {{#hexdec:3A}} Has Passed Over an Edge (Forward) This occurs the frame that the character has passed over the edge of the floor/platform. The character must be facing forward
3B {{#hexdec:3B}} Has Passed Over an Edge (Backward) Same as above except the character must be facing backwards instead
3C {{#hexdec:3C}} Is Holding Someone in a Grab Includes grab attacks and throws up until they are released
3D {{#hexdec:3D}} Hitbox has Connected Like 0B except continues to trigger afterwards as well Value 1 - Hitbox, 2 - Hurtbox, 4 - Shield, 3 - Hitbox/Hurtbox, 5 - Hitbox/Shield, etc


3E {{#hexdec:3E}}
3F {{#hexdec:3F}}
40 {{#hexdec:40}}
41 {{#hexdec:41}}
42 {{#hexdec:42}}
43 {{#hexdec:43}} ??? Triggers continuously in air?
44 {{#hexdec:44}}
45 {{#hexdec:45}} ??? Triggers continuously on ground/air?
46 {{#hexdec:46}}
47 {{#hexdec:47}} Pick up an Item Triggers on the frame the item is considered grabbed
48 {{#hexdec:48}}
49 {{#hexdec:49}} ??? Triggers continuously on ground/air?
4A {{#hexdec:4A}} ??? Triggers continuously on ground/air?
4B {{#hexdec:4B}}
4C {{#hexdec:4C}} Has Been Hit by Cape Effect Will trigger any time from when it connects until they die

Special Requirements

Hex ID Dec ID Label Description Parameters
Type Label Description
2710 {{#hexdec:2710}}
2711 {{#hexdec:2711}} In walljump situation Appears to check both the presence of a wall and whether the required input is met. Does not check whether the character is valid (done separately).
2712 {{#hexdec:2712}} In wallcling situation Same as above.
2713 {{#hexdec:2713}} Is within footstool range. Has a boolean parameter in subroutine @21908; Indicates that the footstool is automatic (landing on Goombas, Koopas, and so on). Lacks the parameter in other cases. Boolean Automatic?


2714 {{#hexdec:2714}} Unknown; used in actions 0x001 (Walk), 0x003 (Dash), and 0x004 (Run) as part of checking whether to enter a Trip action. Value Undefined


2715 {{#hexdec:2715}}
2716 {{#hexdec:2716}} Is falling+hit down
2717 {{#hexdec:2717}} Has Smash Ball
2718 {{#hexdec:2718}}
2719 {{#hexdec:2719}} Can Pick Up Another Item Possibly checks to see if the item in grabbing range can be picked up despite holding an item already (food etc). Used in this way in sub@9fbc instead of the "not holding an item" requirement.
271A {{#hexdec:271A}} Successfully tethered ledge Possibly checks to see if a tether grab has successfully occurred
271B {{#hexdec:271B}}
271C {{#hexdec:271C}}
271D {{#hexdec:271D}} F-Smash Shortcut Appears to work as a shortcut for comparing the stick's horizontal position with a given threshold and input window (see subroutine 0x9fbc for example). Variable Threshold The threshold to be used.
Variable InputWindow The input window to be used.


271E {{#hexdec:271E}}
271F {{#hexdec:271F}}
2720 {{#hexdec:2720}}
2721 {{#hexdec:2721}}
2722 {{#hexdec:2722}}
2723 {{#hexdec:2723}}
2724 {{#hexdec:2724}}
2725 {{#hexdec:2725}} Tap Jump On & C-Stick not Held Appears in checks for tap jump, and u-smash/up item throw out of dash attack/dash item throw.

}}