MAP FILES
---------
Each block consists of 0xB800 bytes.
The MAP files & the BOT files are next to identical.
This leads me to believe that they are in fact World Map's for different discs.
WM0 is divided into 70 Blocks.
The world Map is Drawn like this:-
+----+----+----+----+----+----+----+----+----+
| 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 |
+----+----+----+----+----+----+----+----+----+
| 10 | 11 Duplicates Until End |
+----+----+----+----+----+----+----+----+----+
| 12 Duplicates| 13 | Etc Etc... Haven't Looked at It yet
+----+----+----+----+
Obviously, the data for which block goes where, seems to be stored in another file.
Each block starts with at 0x40 byte header.
These are the Section Offsets.
Each Section offset is 4 bytes long.
So, in total, a Block has 64 Sections.
So, from the 70 Blocks above, if I decide to enlarge Block 1,
-------------------
!Enlarged Block 01!
-------------------
+----+----+----+----+----+----+----+----+
| 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 |
+----+----+----+----+----+----+----+----+
| 09 | 10 | 11 | 12 | 13 | 14 | 15 | 16 |
+----+----+----+----+----+----+----+----+
| 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 |
+----+----+----+----+----+----+----+----+
| 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 |
+----+----+----+----+----+----+----+----+
| 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 |
+----+----+----+----+----+----+----+----+
| 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 |
+----+----+----+----+----+----+----+----+
| 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 |
+----+----+----+----+----+----+----+----+
| 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 |
+----+----+----+----+----+----+----+----+
Each section begins with a 4 byte value that indicates the size of the section.
However,
[Beginning Offset of Section 1] + [Section Size of Section 1] + 4 != [Beginning Offset of Section 2]
You might encounter some byte(s) of 00 at the end!
Therefore, it is more reliable to read the the offsets for sections from the Section Offset Header instead.
A header follows, but I'm not sure how long the header is, or rather I haven't had the time to check where it is.
From one Section that I have tested so far, the
-------------------------------------------------------------
This Section is Completely Theoratical or Experimental! Start
-------------------------------------------------------------
If the vertexes start in different places, then the likely things are
offset 0x1F indicates the number of vertexes.
offset 0X20 indicates the offset where the vertex section begins.
or
the vertex pool should start at 0x26
or
something else that I'm not sure of.
-----------------------------------------------------------
This Section is Completely Theoratical or Experimental! End
-----------------------------------------------------------
To give an illustration about what I'm talking about, take a look at this picture
http://www.arcticnetwork.net/nextff/zhenjock/Empty.pngThis is a screenshot of one section of the world map in RAW Mode.
See the section in the center where there are even blocks of white?
Well, that's the vertex pool.
A note : Although each block shares vertexes internally, they do not share vertexes with each other.
So you can actually have very "sharp" edges for a block.
Anyway,in the vertex pool, the values are *usually* 12 bytes apart.
Meaning 3 X 4 bytes of Coordinate X/Y/Z respectively.
There are exceptions though and I haven't looked at them yet.
I don't know what the last few bytes represent yet.
That's pretty much how much I know at the moment.
Please tell me if you get anything new, ok?