User Tools

Site Tools


super_mario_64:behavior_commands

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Last revision Both sides next revision
super_mario_64:behavior_commands [2018/03/16 06:44]
arthurtilly [10: Special Parameter]
super_mario_64:behavior_commands [2019/11/03 09:13]
jesusyoshi54 [2B: Set Collision Sphere]
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 124: Line 139:
 ---- ----
 ==== 0C: Call Function ==== ==== 0C: Call Function ====
-Calls ASM function.  Usually used to call object init routine or looping routine between 0x08/0x09 commands.+Calls an ASM function ​in RAM.
  
 ''​0C 00 00 00 [<color purple>​AA AA AA AA</​color>​]''​ ''​0C 00 00 00 [<color purple>​AA AA AA AA</​color>​]''​
  
-| <color purple>​A</​color>​ | ASM routine ​to call |+| <color purple>​A</​color>​ | RAM address of ASM function ​to call |
  
 Length: 8 Length: 8
Line 140: Line 155:
  
 | <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 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 399: Line 414:
 ---- ----
  
-==== 23: Collision ​sphere ​size ==== +==== 23: Collision ​cylinder ​size ==== 
-Define the collision ​sphere ​size.+Define the collision ​cylinder ​size.
  
-''​23 00 00 00 [<color darkred>XZ XZ</​color>​] [<color darkgreen>​YY YY</​color>​]''​+''​23 00 00 00 [<color darkred>RR RR</​color>​] [<color darkgreen>​HH HH</​color>​]''​
  
-| <color darkred>XZ</​color>​ | X and Z sphere+| <color darkred>R</​color>​ | Radius of collision cylinder
-| <color darkgreen>​Y</​color>​ | Y sphere ​|+| <color darkgreen>​H</​color>​ | Height of collision cylinder|
  
 Length: 8 Length: 8
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
super_mario_64/behavior_commands.txt · Last modified: 2019/11/03 09:17 by jesusyoshi54