This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
super_mario_64:level_commands [2018/09/03 12:02] miles |
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 512: | 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 543: | Line 545: | ||
---- | ---- | ||
- | ==== 2F: Render Area?? ==== | + | ==== 2F: Setup Render Room ==== |
- | Decides which area of the level geometry to render. Used in BBH, HMC, and Inside Castle levels. | + | Used in the levels Big Boo's Haunt, Hazy 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 648: | 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-Rotation, the 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]] | ||
---- | ---- |