Changes

Jump to navigation Jump to search
m
Minor improvements
Line 141: Line 141:  
|-
 
|-
 
| 0xC0
 
| 0xC0
| 0x8
+
| 0x4
| Unknown
+
| [[#Crane availability|Crane availability]]
 +
|-
 +
| 0xC4
 +
| 0x4
 +
| Unknown (usually 0x3?)
 
|-
 
|-
 
| 0xC8
 
| 0xC8
Line 154: Line 158:  
| 0xD8
 
| 0xD8
 
| 0x8
 
| 0x8
| Unknown
+
| Unknown (usually zero?)
 
|-
 
|-
 
| 0xE0
 
| 0xE0
Line 199: Line 203:  
| 0x2440
 
| 0x2440
 
| [[#Crane Instance Properties|Crane instance properties]]
 
| [[#Crane Instance Properties|Crane instance properties]]
 +
|}
 +
 +
=== Crane availability ===
 +
This section defines where a machine is available to be used.
 +
 +
{| class="wikitable"
 +
|-
 +
! Value
 +
! Crane availability
 +
|-
 +
| 0x0
 +
| Available on crane game
 +
|-
 +
| 0x1
 +
| Unknown
 +
|-
 +
| 0x2
 +
| Available on tutorial crane
 
|}
 
|}
   Line 338: Line 360:  
In case of prizes, this allows the player to get a prize more than once or repeat it inside the collection.
 
In case of prizes, this allows the player to get a prize more than once or repeat it inside the collection.
   −
Except for the index, all of the properties are saved as float32 values.
+
Unless stated otherwise, all of the properties are saved as float32 values.
    
{| class="wikitable"
 
{| class="wikitable"
Line 348: Line 370:  
| 0x0
 
| 0x0
 
| 0x4
 
| 0x4
| Component index
+
| Component index (u32)
 
|-
 
|-
 
| 0x4
 
| 0x4
Line 371: Line 393:  
|-
 
|-
 
| 0x18
 
| 0x18
| 0x48
+
| 0x4
 +
| Unknown property (usually around 0.2?)
 +
|-
 +
| 0x1C
 +
| 0x4
 +
| Unknown property
 +
|-
 +
| 0x20
 +
| 0x4
 +
| Unknown property (usually 0.5?)
 +
|-
 +
| 0x24
 +
| 0x4
 +
| Unknown property (linked with 0x28?)
 +
|-
 +
| 0x28
 +
| 0x4
 +
| Unknown property (linked with 0x24?)
 +
|-
 +
| 0x2C
 +
| 0x4
 +
| Component gravity at start (0x0 = gravity, 0x1 = no gravity)
 +
|-
 +
| 0x30
 +
| 0x30
 
| Unknown properties
 
| Unknown properties
 
|}
 
|}
Line 466: Line 512:  
| 0x24
 
| 0x24
 
| 0x4
 
| 0x4
| Start address of collision floating points
+
| Start address of collision data
 
|-
 
|-
 
| 0x28
 
| 0x28
 
| 0x4
 
| 0x4
| End address of collision floating points
+
| End address of collision data
 
|-
 
|-
 
| 0x2C
 
| 0x2C
Line 498: Line 544:  
| 0x80 + 2 * (w * h)
 
| 0x80 + 2 * (w * h)
 
|  
 
|  
| Collision floating points
+
| [[#Collision data|Collision data]]
 
|}
 
|}
   Line 528: Line 574:  
| 0x10
 
| 0x10
 
| 0x4
 
| 0x4
| End address of header data
+
| End address of header data (ORed with 0x80?)
 
|-
 
|-
 
| 0x14
 
| 0x14
Line 543: Line 589:  
|-
 
|-
 
| 0x4C
 
| 0x4C
| 0x80
+
| 0xB4
| Unknown (usually zero?)
  −
|-
  −
| 0xCC
  −
| 0x34
   
| Padding
 
| Padding
 
|-
 
|-
Line 622: Line 664:  
| 0x64
 
| 0x64
 
| 0x4
 
| 0x4
| Unknown
+
| Unknown (related to category ID?)
 
|-
 
|-
 
| 0x68
 
| 0x68
Line 679: Line 721:  
|-
 
|-
 
| 0x4C
 
| 0x4C
| 0xB4
+
| 0x34
 
| Padding
 
| Padding
 
|-
 
|-
Line 738: Line 780:  
| 0x1C
 
| 0x1C
 
| 0x4
 
| 0x4
| Start address of collision floating points
+
| Start address of collision data
 
|-
 
|-
 
| 0x20
 
| 0x20
 
| 0x4
 
| 0x4
| End address of collision floating points
+
| End address of collision data
 
|-
 
|-
 
| 0x24
 
| 0x24
Line 766: Line 808:  
| 0x80 + (w * h)
 
| 0x80 + (w * h)
 
|  
 
|  
| Collision floating points
+
| [[#Collision data|Collision data]]
 
|}
 
|}
   Line 832: Line 874:  
| 0x34
 
| 0x34
 
| 0x4
 
| 0x4
| Start address of collision floating points
+
| Start address of collision data
 
|-
 
|-
 
| 0x38
 
| 0x38
 
| 0x4
 
| 0x4
| End address of collision floating points (stuck at 0x45XX, but correct value works)
+
| End address of collision data (stuck at 0x45XX, but correct value works)
 
|-
 
|-
 
| 0x3C
 
| 0x3C
Line 844: Line 886:  
| 0x40
 
| 0x40
 
| 0x4
 
| 0x4
| Unknown (random identifier?)
+
| Unknown. Same as value in offset 0x0 in [[Home_Menu#BadgeIdentifier|BadgeIdentifier]]
 
|-
 
|-
 
| 0x44
 
| 0x44
Line 908: Line 950:  
|  
 
|  
 
|  
 
|  
| Collision floating points
+
| [[#Collision data|Collision data]]
 
|}
 
|}
   Line 941: Line 983:  
| 0x3900
 
| 0x3900
 
| 0x800
 
| 0x800
| 32x32 RGB565 image of full badge (used in badge selector in Home Menu)
+
| 32x32 RGB565 image of full badge (used in badge selector in Home Menu if badge is 1x1)
 
|-
 
|-
 
| 0x4100
 
| 0x4100
Line 957: Line 999:  
|  
 
|  
 
| 0x800
 
| 0x800
| 32x32 Optional additional RGB565 image tile(s). Only exists if badge is not 1x1 (unknown use)
+
| 32x32 Optional additional RGB565 image tile(s). Only exists if badge is not 1x1 (used in badge selector in Home Menu if badge is not 1x1)
 
|-
 
|-
 
|  
 
|  
Line 997: Line 1,039:  
# Unknown
 
# Unknown
 
# Unknown
 
# Unknown
 +
 +
== Collision data ==
 +
The collision of an object is defined by a set of polygons combined together.
 +
 +
The polygons are represented using the vertices of each polygon, and those vertices are represented using their coordinates according to the in game image resolution.
 +
 +
{| class="wikitable"
 +
|-
 +
! Offset
 +
! Size
 +
! Description
 +
|-
 +
| 0x0
 +
| 0x4
 +
| Number of polygons
 +
|-
 +
| 0x4
 +
| 0x44
 +
| Polygon data
 +
|-
 +
|
 +
| 0x44
 +
| Additional polygons data
 +
|}
 +
 +
=== Polygon data ===
 +
The data of a polygon starts with the number of vertices. The coordinates of each vertice are then stored as float32 values on an allocated 0x40 byte section.
 +
 +
The vertices can't be next to each other, there is a 2 pixel circular restricted area around each vertice. If the coordinates don't fill the 0x40 byte section, the remaining data is set to null bytes.
 +
 +
{| class="wikitable"
 +
|-
 +
! Offset
 +
! Size
 +
! Description
 +
|-
 +
| 0x0
 +
| 0x4
 +
| Number of vertices
 +
|-
 +
| 0x4
 +
| 0x4
 +
| X coordinate of vertice
 +
|-
 +
| 0x8
 +
| 0x4
 +
| Y coordinate of vertice
 +
|-
 +
|
 +
| 0x4
 +
| X coordinate of additional vertices
 +
|-
 +
|
 +
| 0x4
 +
| Y coordinate of additional vertices
 +
|}
106

edits

Navigation menu