This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
| 
                    super_mario_64:behavior_commands [2018/05/14 21:54] arthurtilly [0D: Offset by Float]  | 
                
                    super_mario_64:behavior_commands [2019/11/03 09:17] (current) jesusyoshi54 [22: Set 0x10 flag]  | 
            ||
|---|---|---|---|
| Line 12: | Line 12: | ||
| | <color darkgrey>T</color> | Type of object.  Used to determine which linked list placed in. | | | <color darkgrey>T</color> | Type of object.  Used to determine which linked list placed in. | | ||
| | <color purple>A</color> | Might be a bit-field, but Behavior00 ignores them | | | <color purple>A</color> | Might be a bit-field, but Behavior00 ignores them | | ||
| + | |||
| + | ^ List ^ Description ^ | ||
| + | | 00 | Mario | | ||
| + | | 01 | Unused | | ||
| + | | 02 | Objects that can be used to destroy other objects, like bob-ombs and corkboxes. | | ||
| + | | 03 | Unused | | ||
| + | | 04 | Most normal 'enemies' or actors are on this list. | | ||
| + | | 05 | This is a group of objects which can push each other around as well as their parent objects. | | ||
| + | | 06 | General level objects such as heart, star. | | ||
| + | | 07 | Unused | | ||
| + | | 08 | Default list. | | ||
| + | | 09 | Objects that use a collision model. | | ||
| + | | 0A | Objects that attract or otherwise "cling" mario similar to a pole action. | | ||
| + | | 0B | Spawners | | ||
| + | | 0C | Objects that will not load if there are not enough object slots. | | ||
| Length: 4 | Length: 4 | ||
| Line 153: | Line 168: | ||
| | <color purple>A</color> | Address = <color purple>A</color>*4+88 | | | <color purple>A</color> | Address = <color purple>A</color>*4+88 | | ||
| - | | <color brown>B</color> | u16 | | + | | <color brown>B</color> | s16 | | 
| - | | obj->address = B converted to float || | + | | obj->address = B(float) || | 
| Length: 4 | Length: 4 | ||
| Line 390: | Line 405: | ||
| ---- | ---- | ||
| - | ==== 22: Set 0x10 flag ==== | + | ==== 22: Set Render Invisible flag ==== | 
| - | Sets 0x10 in graph flags. | + | Sets Render Invisible (0x10) in graph flags. | 
| ''22 00 00 00'' | ''22 00 00 00'' | ||
| Line 502: | Line 517: | ||
| Set collision data. | Set collision data. | ||
| - | ''2B 00 00 00 [<color darkred>AA AA</color>] [<color darkgreen>BB BB</color>] [<color darkblue>CC CC</color>]'' | + | ''2B 00 00 00 [<color darkred>AA AA</color>] [<color darkgreen>BB BB</color>] [<color darkblue>CC CC</color>] 00 00'' | 
| | <color darkred>A</color> | X/Z sphere as int | | | <color darkred>A</color> | X/Z sphere as int | | ||
| | <color darkgreen>B</color> | Y sphere as int | | | <color darkgreen>B</color> | Y sphere as int | | ||
| - | | <color darkblue>C</color> | obj->0x208 = (float)<color darkblue>C</color> | | + | | <color darkblue>C</color> | obj->-Y offset(0x208) = (float)<color darkblue>C</color> | | 
| Length: C | Length: C | ||
| Line 515: | Line 530: | ||
| Spawns object. Same as 0x1C, but stores child obj pointer to parent->0x6C. | Spawns object. Same as 0x1C, but stores child obj pointer to parent->0x6C. | ||
| - | ''2C 00 00 00 [<color darkred>AA AA AA AA</color>] [<color darkgreen>BB BB BB BB</color>] [<color darkblue>CC CC</color>]'' | + | ''2C 00 00 00 [<color darkred>AA AA AA AA</color>] [<color darkgreen>BB BB BB BB</color>]'' | 
| | <color darkred>A</color> | model ID | | | <color darkred>A</color> | model ID | | ||
| Line 533: | Line 548: | ||
| ---- | ---- | ||
| - | ==== 2E: Sight Distance ==== | + | ==== 2E: Set Hurtbox ==== | 
| - | Uselessly long version of 0E? | + | Sets object hurtbox radius and height | 
| ''2E 00 00 00 [<color darkred>AA AA</color>] [<color darkgreen>BB BB</color>]'' | ''2E 00 00 00 [<color darkred>AA AA</color>] [<color darkgreen>BB BB</color>]'' | ||
| - | | <color darkred>A</color> | obj->0x200 = (float) <color darkred>A</color> | | + | | <color darkred>A</color> | obj->Hurtbox Radius (0x200) = (float) <color darkred>A</color> | | 
| - | | <color darkgreen>B</color> | obj->0x204 = (float) <color darkgreen>B</color> | | + | | <color darkgreen>B</color> | obj->Hurtbox Height (0x204) = (float) <color darkgreen>B</color> | | 
| Length: 8 | Length: 8 | ||
| Line 558: | Line 573: | ||
| | 00000008 | Damages Mario (normal) | | | 00000008 | Damages Mario (normal) | | ||
| | 00000010 | Coin | | | 00000010 | Coin | | ||
| - | | 00000020 | Nothing? | | + | | 00000020 | Cap | | 
| | 00000040 | Pole | | | 00000040 | Pole | | ||
| | 00000080 | Damages Mario (can be punched, bounced on) | | | 00000080 | Damages Mario (can be punched, bounced on) | | ||
| Line 594: | Line 609: | ||
| ''30 00 00 00 [<color darkred>AA AA</color>] [<color darkgreen>BB BB</color>] [<color darkblue>CC CC</color>] [<color red>DD DD</color>] [<color green>EE EE</color>] [<color blue>FF FF</color>] [<color purple>GG GG</color>] [<color darkgrey>HH HH</color>]'' | ''30 00 00 00 [<color darkred>AA AA</color>] [<color darkgreen>BB BB</color>] [<color darkblue>CC CC</color>] [<color red>DD DD</color>] [<color green>EE EE</color>] [<color blue>FF FF</color>] [<color purple>GG GG</color>] [<color darkgrey>HH HH</color>]'' | ||
| - | | <color darkred>A</color> | obj->0x128 = (float)<color darkred>A</color> | | + | | <color darkred>A</color> | obj->oWallHitboxRadius = (float)<color darkred>A</color> | | 
| - | | <color darkgreen>B</color> | obj->0xE8 = (float)<color darkgreen>B</color>/100 | | + | | <color darkgreen>B</color> | obj->oGravity = (float)<color darkgreen>B</color>/100 | | 
| - | | <color darkblue>C</color> | obj->0x158 = (float)<color darkblue>C</color>/100 | | + | | <color darkblue>C</color> | obj->oBounce = (float)<color darkblue>C</color>/100 | | 
| - | | <color red>D</color> | obj->0x12C = (float)<color red>D</color>/100 | | + | | <color red>D</color> | obj->oDragStrength = (float)<color red>D</color>/100 | | 
| - | | <color green>E</color> | obj->0x170 = (float)<color green>E</color>/100 | | + | | <color green>E</color> | obj->oFriction = (float)<color green>E</color>/100 | | 
| - | | <color blue>F</color> | obj->0x174 = (float)<color blue>F</color>/100 | | + | | <color blue>F</color> | obj->oBuoyancy = (float)<color blue>F</color>/100 | | 
| | <color purple>G</color> | Ignored | | | <color purple>G</color> | Ignored | | ||
| | <color darkgrey>H</color> | Ignored | | | <color darkgrey>H</color> | Ignored | | ||
| Line 607: | Line 622: | ||
| ---- | ---- | ||
| - | ==== 31: ?? ==== | + | ==== 31: Set Interaction Sub-Type ==== | 
| - | Sets obj->0x190. Unused. | + | Sets obj->0x190 | 
| ''31 00 00 00 [<color darkred>AA AA AA AA</color>]'' | ''31 00 00 00 [<color darkred>AA AA AA AA</color>]'' | ||
| - | | <color darkred>A</color> | obj->0x190 = <color darkred>A</color> | | + | | <color darkred>A</color> | obj->Interaction SubType (0x190) = <color darkred>A</color> | | 
| Length: 8 | Length: 8 | ||