User Tools

Site Tools


super_mario_64:structs

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:structs [2019/05/24 21:27]
jesusyoshi54 [Object]
super_mario_64:structs [2019/12/14 14:30]
jesusyoshi54 [Mario]
Line 21: Line 21:
 | 0x20 | float | normal_y | | 0x20 | float | normal_y |
 | 0x24 | float | normal_z | | 0x24 | float | normal_z |
-| 0x28 | float | negdot ​+| 0x28 | float | origin offset ​
-| 0x2C | u32 | unused? ​|+| 0x2C | u32 | *object ​|
  
 ===== Controller ===== ===== Controller =====
Line 68: Line 68:
 | 0x20 | u32* | object_spawn_info_ptr (objects linked list head)| | 0x20 | u32* | object_spawn_info_ptr (objects linked list head)|
 | 0x24 | u32* | LevelCameraPointer (generated at run-time) | | 0x24 | u32* | LevelCameraPointer (generated at run-time) |
-| 0x28 | u32 | |+| 0x28 | u32 | unused ​|
 | 0x2C | u32* | Whirlpool_1_ptr | | 0x2C | u32* | Whirlpool_1_ptr |
 | 0x30 | u32* | Whirlpool_2_ptr | | 0x30 | u32* | Whirlpool_2_ptr |
 | 0x34 | u8 | Level start dialog number (see: [[super_mario_64:​level_commands#​show_dialog|Level command 0x30]]) | | 0x34 | u8 | Level start dialog number (see: [[super_mario_64:​level_commands#​show_dialog|Level command 0x30]]) |
-| 0x35 | u8 | Always 0xFF? |+| 0x35 | u8 | Level start dialog 2 (unused?|
 | 0x36 | s16 | music_param | | 0x36 | s16 | music_param |
 | 0x38 | s16 | music_param2 (title screen,etc) | | 0x38 | s16 | music_param2 (title screen,etc) |
-| 0x3A | u16 | unused (padding) | 
  
 ===== Object ===== ===== Object =====
Line 103: Line 102:
 | 0x44 | u16 | anim_current_frame_copy | | 0x44 | u16 | anim_current_frame_copy |
 | 0x46 | u16 | animation_increment | | 0x46 | u16 | animation_increment |
-| 0x48 | u32 |  +| 0x48 | u32 | animation accel 
-| 0x4C | u32  |+| 0x4C | struct ​Spawn Info |
 | 0x50 | struct matrix* | transform_matrix_ptr (4x4 affine) | | 0x50 | struct matrix* | transform_matrix_ptr (4x4 affine) |
-| 0x54 | float |  +| 0x54 | float | Cam to Obj X 
-| 0x58 | float |  +| 0x58 | float | Cam to Obj Y 
-| 0x5C | float |  |+| 0x5C | float | Cam to Obj Z |
 | 0x60 | struct object* | next_object_ptr | | 0x60 | struct object* | next_object_ptr |
 | 0x64 | struct object* | prev_object_ptr | | 0x64 | struct object* | prev_object_ptr |
 | 0x68 | struct object* | parent_object_ptr | | 0x68 | struct object* | parent_object_ptr |
-| 0x6C | u32  +| 0x6C | struct object* ​prev object ​
-| 0x70 | u32 |  +| 0x70 | u32 | Collided Obj Interact Type 
-| 0x74 | u16 | active (0x0000 = inactive, 0x0101 = active) |+| 0x74 | u16 | active (0x0000 = inactive, 0x0101 = active, 0x20 move in time stop) |
 | 0x76 | u16 | num_collided_obj | | 0x76 | u16 | num_collided_obj |
 | 0x78 | struct object* | collided_obj_ptr1 (according to YE, pointer to object collided with) | | 0x78 | struct object* | collided_obj_ptr1 (according to YE, pointer to object collided with) |
Line 122: Line 121:
 | 0x88 | u32 |  | | 0x88 | u32 |  |
 | 0x8C | u32 | obj_flags | | 0x8C | u32 | obj_flags |
-| 0x90 | u32  +| 0x90 | s16 | dialog response | 
-| 0x94 | u32 |  +| 0x92 | s16 dialog state 
-| 0x98 | u32 |  |+| 0x94 | u32 | unused ​
 +| 0x98 | u32 | unused ​|
 | 0x9C | u32 | collision_timer | | 0x9C | u32 | collision_timer |
 | 0xA0 | float | x_pos | | 0xA0 | float | x_pos |
Line 141: Line 141:
 | 0xD4 | u32 | y_rotation2 | | 0xD4 | u32 | y_rotation2 |
 | 0xD8 | u32 | z_rotation2 | | 0xD8 | u32 | z_rotation2 |
-| 0xDC | u32 |  +| 0xDC | u32 | Graph Y Offset ​
-| 0xE0 | u32 |  |+| 0xE0 | u32 | Active Particle Flags |
 | 0xE4 | float | gravity | | 0xE4 | float | gravity |
 | 0xE8 | u32 | floor_height | | 0xE8 | u32 | floor_height |
Line 155: Line 155:
 | 0x10C | u32 |  | | 0x10C | u32 |  |
 | 0x110 | u32 |  | | 0x110 | u32 |  |
-| 0x114 | u16 |  | +| 0x114 | s32 | Moves Mario in Z direction while ontop of the object | 
-| 0x116 | s16 | Moves Mario in Z direction while ontop of the object | +| 0x118 | s32 | Spins Mario around while ontop of the object | 
-| 0x118 | u16 |  | +| 0x11C | s32 | Moves Mario in X direction while ontop of the object | 
-| 0x11A | s16 | Spins Mario around while ontop of the object | +| 0x120 | u32 | animation_list_ptr (set by 0x27 26 behavior command)| 
-| 0x11C | u16 |  | +| 0x124 | u32 | Held State |
-| 0x11E | s16 | Moves Mario in X direction while ontop of the object | +
-| 0x120 | u32 | animation_list_ptr (set by 0x27 26 behavior command) ​entry for animation?+
-| 0x124 | u32 | in some behaviors, action related? ​|+
 | 0x128 | float | min_wall_dist | | 0x128 | float | min_wall_dist |
 | 0x12C | float | drag_coeff | | 0x12C | float | drag_coeff |
 | 0x130 | u32 | interaction (collision_type) | | 0x130 | u32 | interaction (collision_type) |
-| 0x134 | u32 |  +| 0x134 | u32 | interaction status ​
-| 0x138 | u32 |  +| 0x138 | u32 | Parent relative X pos 
-| 0x13C | u32 |  +| 0x13C | u32 | Parent relative Y pos 
-| 0x140 | u32 |  |+| 0x140 | u32 | Parent relative Z pos |
 | 0x144 | u32 | behav_param (sub_type) | | 0x144 | u32 | behav_param (sub_type) |
-| 0x148 | u32 |  |+| 0x148 | u32 | unused ​|
 | 0x14C | u32 | action | | 0x14C | u32 | action |
-| 0x150 | u32 | resets when action changes |+| 0x150 | u32 | sub action (resets when action changes|
 | 0x154 | u32 | timer (always incremented) | | 0x154 | u32 | timer (always incremented) |
 | 0x158 | float | bounce | | 0x158 | float | bounce |
Line 181: Line 178:
 | 0x168 | float | spawn_y | | 0x168 | float | spawn_y |
 | 0x16C | float | spanw_z | | 0x16C | float | spanw_z |
-| 0x170 | float |  |+| 0x170 | float | friction ​|
 | 0x174 | float | buoyancy| | 0x174 | float | buoyancy|
-| 0x178 | u32 |  |+| 0x178 | u32 | sound state ID |
 | 0x17C | u32 | transparency | | 0x17C | u32 | transparency |
 | 0x180 | u32 | damage_to_mario | | 0x180 | u32 | damage_to_mario |
 | 0x184 | u32 | health | | 0x184 | u32 | health |
-| 0x188 | u32 | behav_param2 (re-check) ​|+| 0x188 | u32 | behav_param ​|
 | 0x18C | u32 | previous_action | | 0x18C | u32 | previous_action |
-| 0x190 | u32 |  |+| 0x190 | u32 | Interaction Sub Type |
 | 0x194 | float | collision_distance | | 0x194 | float | collision_distance |
-| 0x198 | u32 |  |+| 0x198 | u32 | Num Loot Coins |
 | 0x19C | float | drawing_distance | | 0x19C | float | drawing_distance |
-| 0x1A0 | u32 |  +| 0x1A0 | u32 | Room 
-| 0x1A4 | u32 |  |+| 0x1A4 | u32 | Unused ​|
 | 0x1A8 | u32 |  | | 0x1A8 | u32 |  |
 | 0x1AC | u32 |  | | 0x1AC | u32 |  |
 | 0x1B0 | u32 |  | | 0x1B0 | u32 |  |
-| 0x1B4 | u32 |  +| 0x1B4 | u32 | Wall Angle 
-| 0x1B8 | u32  +| 0x1B8 | s16 Floor Type | 
-| 0x1BC | u32 |  | +| 0x1BA | s16 | Floor Room 
-| 0x1C0 | u32 |  +| 0x1BC | s32 |  | 
-| 0x1C4 | u32  +| 0x1C0 | u32 | Floor 
-| 0x1C8 | u32 |  +| 0x1C4 | s32 Death Sound 
-| 0x1CC | u32 | script_entry_ptr |+| 0x1C8 | u32 | Unused ​
 +| 0x1CC | u32 | Behav script_entry_ptr |
 | 0x1D0 | u32 | stack_index | | 0x1D0 | u32 | stack_index |
-| 0x1D4 | u32 | stack +| 0x1D4 | u32 | stack [8] 
-| 0x1D8 | u32 |  | +| 0x1F4 | s16 unk14 
-| 0x1DC | u32 |  | +| 0x1F6 | s16 respawn info type |
-| 0x1E0 | u32 |  | +
-| 0x1E4 | u32 |  | +
-| 0x1E8 | u32 |  | +
-| 0x1EC | u32 |  | +
-| 0x1F0 | u32 |  ​+
-| 0x1F4 | u16  +
-| 0x1F6 | u16  |+
 | 0x1F8 | float | col_cylinder_radius | | 0x1F8 | float | col_cylinder_radius |
 | 0x1FC | float | col_cylinder_height | | 0x1FC | float | col_cylinder_height |
-| 0x200 | float |  +| 0x200 | float | hurtbox radius ​
-| 0x204 | float |  +| 0x204 | float | hurtbox height ​
-| 0x208 | float | col_cylinder_vertical_offset ​|+| 0x208 | float | col_cylinder_downward_offset ​|
 | 0x20C | u32 | script_start_ptr (Behavior ID) | | 0x20C | u32 | script_start_ptr (Behavior ID) |
-| 0x210 | u32 |  +| 0x210 | u32 | unused ​
-| 0x214 | u32 | collide_obj_ptr |+| 0x214 | struct ​*collide_obj_ptr(platform) ​|
 | 0x218 | u32 | collision_ptr | | 0x218 | u32 | collision_ptr |
-| 0x21C | float | matrix[0][0] (uknown ​matrix) |+| 0x21C | float | matrix[0][0] (transform ​matrix) |
 | 0x220 | float | matrix[0][1] | | 0x220 | float | matrix[0][1] |
 | 0x224 | float | matrix[0][2] | | 0x224 | float | matrix[0][2] |
Line 241: Line 232:
 | 0x254 | float | matrix[3][2] | | 0x254 | float | matrix[3][2] |
 | 0x258 | float | matrix[3][3] | | 0x258 | float | matrix[3][3] |
-| 0x25C | u32 | behav_param_copy_ptr |+| 0x25C | u32 | respawn info (behav_param_copy_ptr|
  
 ===== Mario ===== ===== Mario =====
Line 256: Line 247:
 | 0x1A | u16 | action variable (different uses based on Mario->​0x0C) | | 0x1A | u16 | action variable (different uses based on Mario->​0x0C) |
 | 0x1C | u16 | Front tilt (just visuals?) | | 0x1C | u16 | Front tilt (just visuals?) |
-| 0x1E | u32 | squish_timer |+| 0x1E | u16 | squish_timer |
 | 0x20 | float | analogTilt | | 0x20 | float | analogTilt |
 | 0x24 | s16 | Yaw (Facing) rotation | | 0x24 | s16 | Yaw (Facing) rotation |
Line 310: Line 301:
 | 0xBA | u16 | unused? | | 0xBA | u16 | unused? |
 | 0xBC | float | highest y_pos achieved while gaining height | | 0xBC | float | highest y_pos achieved while gaining height |
-| 0xC0 | float | y_pos offset (usually always ​0.0f, but can be modified during cut-scenes) |+| 0xC0 | float | y_pos offset (modified while in quicksand or cutscenes, otherwise ​0.0f) |
  
 ===== References ===== ===== References =====
super_mario_64/structs.txt · Last modified: 2019/12/20 19:47 by jesusyoshi54