Difference between revisions of "Pikmin area generator file/File format"
(Add item object info) |
(add parameter info) |
||
Line 154: | Line 154: | ||
Todo: Parameters, other objects | Todo: Parameters, other objects | ||
+ | |||
+ | Parameters: Objects have a list of parameters starting after the object specific data. Each parameter name is three characters (e.g. p00, p01, ...) followed by one byte that seems to have the size of the parameter value, usually 4. After each parameter name comes a 4 byte integer which is the value of the parameter. |
Revision as of 19:12, 27 December 2017
This page describes the format of the object generator files in Pikmin. These files have the file ending .gen
. Generators handle the spawning of objects, such as pellets or enemies, in the levels. Each such object is spawned by a generator.
Offset | Type | Description |
---|---|---|
0x0 | char[4] | a 4 byte string saying v1.0, presumably the version of the format or the version of the file |
0x4 | float | unknown[unsure] |
0x8 | float | unknown[unsure] |
0xC | float | unknown[unsure] |
0x10 | float | unknown[unsure] |
0x14 | uint32 | an unsigned integer specifying the amount of generators in the file |
Directly after the integer specifying the amount of generators follow the generators themselves. The format of each generator is explained in the following table.
Offset | Type | Description |
---|---|---|
0x0 | char[4] | Four spaces, presumably the name of the generator base that is used in all object types |
0x4 | char[4] | version string, usually v0.0 |
0x8 | uint32 | unknown[unsure] |
0xC | uint32 | unknown[unsure] |
0x10 | uint8[32] | 32 bytes of data. unknown[unsure] |
0x30 | float[3] | XYZ position of object |
0x3C | float[3] | unknown[unsure] |
0x48 | char[4] | 4 byte string specifying the type of the object. Type name is reversed |
0x4C | char[4] | version string |
0x50 | uint8[...] | Variable amount of data depending on type of object |
Object name | Description |
---|---|
piki | Pikmin |
debg | Debug object unknown[unsure] |
item | Item |
pelt | Pellet |
work | Work object unknown[unsure] |
plnt | Plant |
mpar | Map Parts |
teki | Enemies |
boss | Boss |
mobj | Map object |
navi | unknown[unsure] |
actr | Actor unknown[unsure] |
Data formats for each object type. Offsets are relative to the end of the general generator data, see above for the generator format.
Offset | Type | Description |
---|---|---|
0x00 | uint32 | String length (in the following offsets the string length will be "n") |
0x04 | string | Name of object |
0x04+n | uint8[32] | 32 bytes of data |
0x24+n | uint8[32] | 32 bytes of data |
Todo: Parameters, other objects
Parameters: Objects have a list of parameters starting after the object specific data. Each parameter name is three characters (e.g. p00, p01, ...) followed by one byte that seems to have the size of the parameter value, usually 4. After each parameter name comes a 4 byte integer which is the value of the parameter.