User Tools


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
mario_golf:resource_table [2017/04/19 06:35]
mib_f8sm9c [Level Data]
mario_golf:resource_table [2017/06/27 02:11] (current)
skeletons ↷ Links adapted because of a move operation
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.