User Tools

Site Tools


super_mario_64:level_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
super_mario_64:level_commands [2018/06/26 18:27]
shygoo [Level Commands]
super_mario_64:level_commands [2020/11/21 15:10] (current)
jesusyoshi54 text formating
Line 449: Line 449:
 Connect warps defined by previous [[#24: Place Object]] commands. Connect warps defined by previous [[#24: Place Object]] commands.
  
-''​26 08 [<color red>​AA</​color>​] [<color green>​BB</​color>​] [<color aqua>​CC</​color>​] [<color fuchsia>​DD</​color>​] ​00 00''​+''​26 08 [<color red>​AA</​color>​] [<color green>​BB</​color>​] [<color aqua>​CC</​color>​] [<color fuchsia>​DD</​color>​] ​[<color goldenrod>​EE</​color>​] ​00''​
    
 | <color red>​A</​color>​ | Warp ID to jump from (defined by [[#21: Load Polygon Without Geo]] and [[#22: Load Polygon With Geo]]) | | <color red>​A</​color>​ | Warp ID to jump from (defined by [[#21: Load Polygon Without Geo]] and [[#22: Load Polygon With Geo]]) |
Line 455: Line 455:
 | <color aqua>​C</​color>​ | Course area to jump to | | <color aqua>​C</​color>​ | Course area to jump to |
 | <color fuchsia>​D</​color>​ | Warp ID number in destination level area | | <color fuchsia>​D</​color>​ | Warp ID number in destination level area |
 +| <color goldenrod>​E</​color>​ | If set to 0x80, then the game will create a checkpoint when the warp is triggered. |
  
 ---- ----
Line 461: Line 462:
 Define level warps for paintings inside the Castle. Define level warps for paintings inside the Castle.
  
-''​27 08 [<color red>​AA</​color>​] [<color green>​BB</​color>​] [<color aqua>​CC</​color>​] [<color fuchsia>​DD</​color>​] ​00 00''​+''​27 08 [<color red>​AA</​color>​] [<color green>​BB</​color>​] [<color aqua>​CC</​color>​] [<color fuchsia>​DD</​color>​] ​[<color goldenrod>​EE</​color>​] ​00''​
    
 | <color red>​A</​color>​ | Warp ID to jump from (defined by [[#21: Load Polygon Without Geo]] and [[#22: Load Polygon With Geo]]) | | <color red>​A</​color>​ | Warp ID to jump from (defined by [[#21: Load Polygon Without Geo]] and [[#22: Load Polygon With Geo]]) |
Line 467: Line 468:
 | <color aqua>​C</​color>​ | Course area to jump to | | <color aqua>​C</​color>​ | Course area to jump to |
 | <color fuchsia>​D</​color>​ | Warp ID number in destination level area | | <color fuchsia>​D</​color>​ | Warp ID number in destination level area |
 +| <color goldenrod>​E</​color>​ | If set to 0x80, then the game will create a checkpoint when the warp is triggered. |
  
 ---- ----
Line 499: Line 501:
  
 ==== 29: ?? ==== ==== 29: ?? ====
 +''​29 04 [??] 00''​
  
 +| ? | Unknown |
 +
 +Note: ?? is usually 01. ?? being 02 was only used once in the original game, in the Act Select level script.
 ---- ----
  
Line 508: Line 514:
  
 ==== 0x2B: Set Mario'​s default position in the level ==== ==== 0x2B: Set Mario'​s default position in the level ====
- 2B 0C [AA] 00 [RY RY] [XX XX] [YY YY] [ZZ ZZ]+'' ​2B 0C [AA] 00 [RY RY] [XX XX] [YY YY] [ZZ ZZ]''​
    
  
Line 539: Line 545:
 ---- ----
  
-==== 2F: Render ​Area?? ​==== +==== 2F: Setup Render ​Room ==== 
-Decides which area of the level geometry to render.  ​Used in BBHHMC, and Inside Castle ​levels.+Used in the levels Big Boo's HauntHazy Maze Cave, and Inside Castle
 + 
 +The segmented pointer in this command points to a byte array, with the same length as number of collision triangles in the level. Each byte in this array will be placed into offset 0x5 in the [[super_mario_64:​structs#​collision_triangle|collision triangle structure]].  
 + 
 +When the ASM function 0x8029DBD4 is used with [[super_mario_64:​geometry_layout_commands#​eswitch_case|geometry layout switch command]], it will use that offset 0x5 byte of the collision triangle that is below Mario as an index to determine which display list to render.
  
 ''​2F 08 00 00 [<color red>XX XX XX XX</​color>​]''​ ''​2F 08 00 00 [<color red>XX XX XX XX</​color>​]''​
  
-| <color red>​X</​color>​ | Segment offset ​pointer ​to ?? |+| <color red>​X</​color>​ | Segment offset to the byte array |
  
 ---- ----
Line 608: Line 618:
  
 ==== 36: Set Music ==== ==== 36: Set Music ====
-Set music. Used only in screen levels, like select file, select star and mario face and demo screen.+Set music. ​
  
 ''​36 08 [??] [??] [??] [<color red>​XX</​color>​] 00 00''​ ''​36 08 [??] [??] [??] [<color red>​XX</​color>​] 00 00''​
Line 618: Line 628:
  
 ==== 37: Set Music ==== ==== 37: Set Music ====
-Set music+Set music. Used only in screen levels, like select file, select star and mario face and demo screen.
  
 ''​37 04 00 [<color red>​XX</​color>​]''​ ''​37 04 00 [<color red>​XX</​color>​]''​
Line 644: Line 654:
 ''​[<​color fuchsia>​BB BB</​color>​] [<color red>XX XX</​color>​] [<color green>YY YY</​color>​] [<color aqua>ZZ ZZ</​color>​] [?? ??​]''​ ''​[<​color fuchsia>​BB BB</​color>​] [<color red>XX XX</​color>​] [<color green>YY YY</​color>​] [<color aqua>ZZ ZZ</​color>​] [?? ??​]''​
  
-| <color fuchsia>​B</​color>​ | Object type ID (behavior, ​model, ​etc) |+| <color fuchsia>​B</​color>​ | Object type ID (references behaviour address and model id) and Y Rotation. First 7 bit are the Y-Rotationthe last 9 bit are the Object type ID. |
 | <color red>​X</​color>,<​color green>​Y</​color>,<​color aqua>​Z</​color>​ | Coordinates | | <color red>​X</​color>,<​color green>​Y</​color>,<​color aqua>​Z</​color>​ | Coordinates |
 | ?? | Always 00 00 ? | | ?? | Always 00 00 ? |
 +
 +[[sm64:​macro_objects|See here for more information]]
  
 ---- ----
super_mario_64/level_commands.1530037635.txt.gz · Last modified: 2018/06/26 18:27 by shygoo