User Tools

Site Tools


kirby64_the_crystal_shards:levels

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
kirby64_the_crystal_shards:levels [2020/03/05 16:33]
jesusyoshi54 [Levels]
kirby64_the_crystal_shards:levels [2021/01/08 00:42] (current)
someone2639 [Level List] updated struct and added a list of defines
Line 1: Line 1:
 ====== Levels ====== ====== Levels ======
 Each level loads a struct of areas using function 0x800F78E4. Each level loads a struct of areas using function 0x800F78E4.
-The game uses this structure to find the pointer to the current area in the main stage table. Its located at 0x800be500+The game uses this structure to find the pointer to the current area in the main stage table. Its located at 0x800be500
 + 
 +Note: when used to select levels its bytes, but its stored in ram as words.
 <code C> <code C>
 struct Level struct Level
 { {
-/​*0X0*/ ​U32    WORLD+/​*0X0*/ ​u8    World
-/*0X4*/ U32    LEVEL+/*0X1*/ u8    Level
-/*0X8*/ U32    AREA+/*0X2*/ u8    Area
-/*0XC*/ U32    WARP;+/*0X3*/ u8    NodeNum;
 }; };
 </​code>​ </​code>​
Line 32: Line 34:
   /*0x10*/ u32   ​biAreaSetup; ​     // Bank-index of area stup block    /*0x10*/ u32   ​biAreaSetup; ​     // Bank-index of area stup block 
   /*0x14*/ u16   Death Camera; ​    // Determines how far the camera follows kirby when falling into void/death   /*0x14*/ u16   Death Camera; ​    // Determines how far the camera follows kirby when falling into void/death
-  /*0x16*/ u16   unk16           // Cutscene related?+  /*0x16*/ u16   levelType       // See the next table
   /*0x18*/ u32   ​biDustSettings; ​  // Bank-index of Dust particle settings   /*0x18*/ u32   ​biDustSettings; ​  // Bank-index of Dust particle settings
   /*0x1C*/ u32   ​biDustImg; ​       // Bank-index of Dust particle image   /*0x1C*/ u32   ​biDustImg; ​       // Bank-index of Dust particle image
Line 38: Line 40:
 }; };
 </​code>​ </​code>​
 +
 +The `levelType` field can be one of these values:
 +^Value ​      ^ Description ​         ^
 +|  0  | "​Normal"​ gameplay |
 +|  1  | DDD/​Adeleine Boss (1-2-6,​1-3-9) |
 +|  2  | End of World Boss |
 +|  3  | End of stage (carpet with prizes) |
 +|  4  | Ride water on log/Log Flume(3-2-4) |
 +|  5  | Ride sled(5-1-3) |
 +|  6  | Minecart stage (4-2-2) |
 +|  7  | unused |
 +|  8  | Ride DDD (4-4-3,​2-2-6,​5-4-3) |
 +|  9  | 0-2 Boss (7-1-3) |
 +|  10  | MiniBoss (enlarged enemy) |
 +
  
 ---- ----
kirby64_the_crystal_shards/levels.1583426036.txt.gz · Last modified: 2020/03/05 16:33 by jesusyoshi54