Anonymous

Changes

From Final Fantasy Inside

FF7/WorldMap Module

3,074 bytes added, 21:57, 12 September 2021
Triangle
optimized versions of the corresponding MAP files.
''MAP file follows the structure described below and is used to load single blocks on demand. BOT file also contains the same blocks but arranged to speed up initial load time by storing each block and 3 of its neighboring blocks together. For instance, the data stored for the first 2 blocks is (numbers refer to the MAP layout below): 0,1,9,10 1,2,10,11. This pattern repeats up to block #62. Replacement blocks 63-68 are divided in groups for each replacement, i.e. block 64 and 65 are part of the same group since they both belong to the Ultima Weapon crater. These groups are then stored using the same algorithm as above, each 4-block group containing a replaced block is written out again. 1-block replacements thus add 4*4 blocks to the .BOT file while 2-block replacements add 6*4 blocks. Replacements are to be made '''in order''', when writing the data for the Ultima Weapon crater the Temple of the Ancients should be gone and so on. All of this adds up to 63*4 + 4*4 + 6*4 + 4*4 + 6*4 = 332 blocks.''
=== Content ===
| Index of vertex 2 of triangle t
|-
| ''5 bits(lowest)''
| ''Walkmap status of triangle t (see below)''
|-
| ''3 bits''
| ''Unknown, probably Mesh function ID to trigger when this triangle is stepped on.<br>Values 0-2 mean no script relatedis attached to this triangle.<br>For values 3+ subtract 3 from this value and this will give you the mesh function ID to trigger.''
|-
| 1 byte
| Coordinate v in texture for vertex 2
|-
| ''9 bits(lowest)''
| ''Texture (see below)''
|-
| ''7 bits''
| ''Location (message ID that will be displayed in the menu menus and savegames)''
|}
uint8 Vertex2Index;
''uint8 WalkabilityInfo:5;''
''uint8 UnknownMeshFuncId:3;''
uint8 uVertex0, vVertex0;
uint8 uVertex1, vVertex1;
=== Walkmap ===
 
''Each triangle can have one of the 32 different walkmap types described below.''
{| border="1" cellspacing="1" cellpadding="3" style="border: 1px solid black; border-collapse: collapse;"
|+
! style="background:rgb(204,204,204)" align="center" | code
! style="background:rgb(204,204,204)" align="center" | type
! style="background:rgb(204,204,204)" align="center" | description
|-
| 0x23''0''| ''Grass''| ''Most things can go here.''| -| ''1''| ''Forest''| ''No landing here, but anything else goes.''|-| ''2''| ''Mountain''| ''Chocobos and flying machines only.''|-| ''3''| ''Sea''| ''Deep sea (water, only gold chocobo and submarine can go here.''|-| ''4''| ''River Crossing''| ''Buggy, tiny bronco and water-capable chocobos.''|-| ''5''| ''River''| ''Tiny bronco and chocobos.''|-| ''6''| ''Water''| ''Shallow water, same as above.''|-| ''7''| ''Swamp''| ''Midgar zolom can only move in swamp areas.''|-| ''8''| ''Desert''| ''No landing.''|-| ''9''| ''Wasteland''| ''Found around Midgar, Wutai and misc other. No landing.''|-| ''10''| ''Snow''| ''Leaves footprints, no landing.''|-| ''11''| ''Riverside''| ''Beach-like area where river and land meet.''|-| ''12''| ''Cliff''| ''Sharp drop, usually where the player canbe on either side.''|-| ''13''| ''Corel Bridge''| ''Tiny bridge over the waterfall from Costa del Sol to Corel.''|-| ''14''| ''Wutai Bridge''| ''Rickety rope bridges south of Wutai.''|-| ''15''| ''Unused''| ''Doesn't seem to be used anywhere in the original data.''|-| ''16''| ''Hill side''| ''This is the tiny walkable part at the foot of a mountain.''|-| ''17''| ''Beach''| ''Where land highwindand shallow water meets.''|-| ''18''| ''Sub Pen''| ''Only place where you can enter/exit the submarine.''|-| ''19''| ''Canyon''| ''The ground in cosmo canyon has this type, walkability seems to be the same as wasteland.''|-| ''20''| ''Mountain Pass''| ''The small path through the mountains connecting Costa del Sol and Corel.''|-| ''21''| ''Unknown''| ''Present around bridges, may have some special meaning.''|-| ''22''| ''Waterfall''| ''River type where the tiny bronco can't go.''|-| ''23''| ''Unused''| ''Doesn't seem to be used anywhere in the original data.''|-| ''24''| ''Gold Saucer Desert''| ''Special desert type for the golden saucer.''|-| ''25''| ''Jungle''| ''Walkability same as forest, used in southern parts of the map.''|-| ''26''| ''Sea (2)''| ''Special type of deep water spray when flying low), only used in one small spot next to HP-MP cave, possibly related to the underwater map/submarine.''|-| ''27''| ''Northern Cave''| ''Inside part of the crater, where you can land the highwind.''|-| ''28''| ''Gold Saucer Desert Border''| ''Narrow strip of land surrounding the golden saucer desert. Probably related to the "quicksand" script.''
|-
| 0x22''29''| No sea spray from highwind, can't land'Bridgehead''| ''Small area at both ends of every bridge. May have some special meaning.''
|-
| 0x21''30''| No sea spray ''Back Entrance''| ''Special type that can be set unwalkable from highwind, canthe script.''t land
|-
| 0x20''31''| No sea spray, can land and walk''Unused''| ''Doesn't seem to be used anywhere in the original data.''
|}
 
Observe that 0x21 and 0x22 describe the same status; it is thought that
it may differentiate chocobos' behavior.
=== Texture ===
The lower 9 bits contain a texture number (0-511, but only 0-281
appear to be used). The text files ''Unfortunately, knowing which texture to use is not enough, the UV coordinates found in the Reeve download show how eachnumber maps to one mesh data are (or morepresumably) the original PSX VRAM coordinates, so to get the real coordinates you must subtract a texture-specific offset from each of the UV pairs.TEX files within WORLD_US.LGP (see also A complete table with every texture, its original size and offsets can be found [[FF7/LGP format WorldMap Module/TextureTable| LGP Archiveshere]]).The upper bits have something to do Sometimes you will end up with negative values after subtracting the offsets, this is normal, the texture coordinate mappingshould be assumed to repeat itself indefinitely in all directions== BOT format == (FIXME)''
49
edits