This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
|
mario_golf:resource_table [2017/04/19 06:35] mib_f8sm9c [Level Data] |
mario_golf:resource_table [2025/10/18 21:21] (current) |
||
|---|---|---|---|
| Line 23: | Line 23: | ||
| 0x28: ? | 0x28: ? | ||
| 0x30: Surface mapping (whether ground is rough, fair, green, etc) | 0x30: Surface mapping (whether ground is rough, fair, green, etc) | ||
| + | | ||
| + | For more information, see: | ||
| + | * [[mario_golf:level_pointers]] | ||
| + | * [[mario_golf:height_data_info]] | ||
| + | ====== ====== Temporary Notes ====== ====== | ||
| + | |||
| + | |||
| + | Here's some notes about the level data that aren't 100% verified or tested, but should be fairly close to the truth. | ||
| + | |||
| + | ====== Object List ====== | ||
| + | |||
| + | The object list contains information about objects placed in a level. This would include any sort of tree or tree-like object. The format is as follows: | ||
| + | |||
| + | First byte of the object list details the number of entries in the list. Immediately following is a series of 0xC blocks which contain information about the object. Here's a WIP of the contents of each entry: | ||
| + | |||
| + | 0x0: X (ushort or short?) | ||
| + | 0x2: Y | ||
| + | 0x4: Z | ||
| + | 0x6: Type (list of values below) | ||
| + | 0x7: Empty, 0x00 | ||
| + | 0x8: Width factor (ushort) | ||
| + | 0xA: Height factor (half-resolution, 0x2 here matches with 0x1 in width) | ||
| + | | ||
| + | At the end the list is filled with 0xFF to the closest 16-byte address. | ||
| + | |||
| + | [[mario_golf:object_type_list]] | ||
| + | ====== Level Conjecture ====== | ||
| + | |||
| + | It is easily seen by looking at the decompressed surface map that the level is comprised of a 2d array of tiles. Looking at how the level is laid out, I believe that each tile is 0x0010 long when using X/Z coordinates (such as the object list above). The first level is 100 tiles by 200 tiles large, and the X/Z coordinates for the objects in it varied from 0x0000-0x0FFF and 0x0000-0x1FFF. | ||