Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Topics - JWP

Pages: [1]
1
Scripting and Reverse Engineering / [FF8] mngrp.bin
« on: 2016-08-15 21:08:55 »
I had a quick look at mngrp.bin and it looks like it contains a bunch of different sections.
All of the sections in mngrp.bin are listed in the mngrphd.bin file in the following format:
DWORD offset //this is +1 from the actual offset
DWORD size

also some of the data appears to be duplicate data from other files, the file looks something like this:
Code: [Select]
0x000000 tkmnmes1.bin - 0x00
0x000800 tkmnmes2.bin - 0x01
0x002000 tkmnmes3.bin - 0x02
0x004000 ?
0x012000 ? - 0x07
0x013000 ? - character portraits - 0x09
0x019800 ? - GF portraits - 0x0A
0x020000 magita.tim - 0x0C
0x020800 ? - title screen - start00.tim?
0x02E800 ? - weapons
0x03B000 mag07.tim - 0x18
0x047800 mag00.tim - duplicate of 0x02E800?
0x054000 mag01.tim
0x060800 mag02.tim
0x06D000 mag03.tim
0x079800 mag04.tim
0x086000 mag05.tim
0x092800 mag06.tim
0x09F000 mag08.tim- 0x2C
0x0AB800 mag09.tim
0x0B8000 mc00.tim - 0x30
0x0C4800 mc01.tim - 0x31
0x0D1000 mc02.tim - 0x32
0x0DD800 mc03.tim - 0x33
0x0EA000 mc04.tim - 0x34
0x0F6800 mc05.tim - 0x35
0x103000 mc06.tim - 0x36
0x10F800 mc07.tim - 0x37
0x11C000 mc08.tim - 0x38
0x128800 mc09.tim - 0x39
0x135000 ? - playstation controls - field
0x146800 ? - playstation controls - world map
0x158000 ? - playstation controls - battle
0x169800 mag10.tim - 0x47
0x176000 mag11.tim - 0x48
0x182800 mag12.tim - 0x49
0x18F000 mag13.tim - 0x4A
0x19B800 mag14.tim - 0x4B
0x1A8000 ? - text - 0x57
0x1AB000 ? - text - 0x58
0x1AB800 ? - text - 0x59
0x1AC800 ? - text
0x1AD800 ? - text - 0x5F
0x1AE000 ? - text - 0x60
0x1AE800 ? - text
0x1AF000 ? - text
0x1AF800 ? - text
0x1B0000 ? - text
0x1B0800 ? - text
0x1B1000 ? - text
0x1B1800 ? - text
0x1B2000 ? - text
0x1B2800 ? - text
0x1B3000 ? - text
0x1B3800 ? - text
0x1B4000 ? - text
0x1B4800 ? - text
0x1B5000 ? - text
0x1B5800 ? - text
0x1B6000 ? - text
0x1B6800 ? - text
0x1B7000 ? - text
0x1B7800 ? - text
0x1B8000 ? - text
0x1B8800 ? - text
0x1B9000 ? - text
0x1B9800 ? - text
0x1BA000 ? - text
0x1BA800 ? - text
0x1BB000 ? - text
0x1BB800 ? - text
0x1BC000 ? - text
0x1BC800 ? - text
0x1BD000 ? - text
0x1BD800 ? - 0x7F - used in information section
0x1BE000 ? - text, unknown format - 0x80 - used in information section
0x1C2800 ? - text, unknown format - 0x81
0x1C6800 ? - text, unknown format - 0x82
0x1CB000 ? - text, unknown format - 0x83
0x1CF000 ? - text, unknown format - 0x84
0x1D1800 ? - text, unknown format - 0x85
0x1D6000 ? - text, unknown format
0x1D7000 ? - text, unknown format
0x1D7800 ? - text, unknown format
0x1D8000 ? - text, unknown format
0x1D8800 ? - text, unknown format
0x1D9000 ? - text, unknown format
0x1D9800 ? - text, unknown format
0x1DA000 ? - text, unknown format - 0xA7
0x1DA800 ?
0x1DB000 ?
0x1DB800 ?
0x1DC000 ?
0x1DC800 ?
0x1DD000 ?
0x1DD800 ?
0x1DE000 ? - 0xAF
0x1DE800 ? - 0xB0
0x1DF000 ? - text with binary data - 0xB1
0x1DF800 ? - 0xB2
0x1E0000 ? - text with binary data -0xB3
0x1E0800 ? - chocobo world cartoon
0x1ED000 ? - chocobo world help
0x1F9800 mag17.tim - 0xB6
0x206000 ? - chocobo world cartoon
0x212800 ? - duplicate of 0x206000
0x21F000 m000.bin
0x21F800 m001.bin
0x220000 m002.bin
0x220800 m003.bin
0x221000 m004.bin
0x221800 m000.msg
0x223000 m001.msg
0x225000 m002.msg
0x225800 m003.msg
0x226000 m004.msg
0x227800 ? - text - 0xCC
0x228000 ? - 0xCD

I'll do a bit more digging into the file but it'll probably take a while. If anyone has any other information, feel free to reply :).
There's also a bunch of tim files in there, the names of these are in the exe. e.g. I think 0x13000 is Face_b00/b01.tim and 0x19800 is Gf_big00/01.tim, I'll need to do a bit more looking into this.

2
Scripting and Reverse Engineering / FF8 Field Models
« on: 2007-08-22 18:16:20 »
I've been having a few issues extracing the data from the field models. I can find the locations of each section of data, I just think that my interpretation of the data is slightly off.
I've been trying to extract the geometry from the d002.mch file, here are the structures I'm using:

struct vertex {
   short x;
   short y;
   short z;
   short unk;
};

struct TextureMap {
   BYTE u;
   BYTE v;
};

struct face {
   u32 opcode; 0x07060125 = triangle, 0907012d = Quad
   BYTE unk[8];
   u16 verticies[4]; //vertex id's
   u16 verticies1[4]; //Edge data???
   u32 Vertex_Colours[4];
    TextureMap TextureData[4]; //haven't tested yet
    u32 Padding[3];
   //64 bytes
};

my understanding of the skeleton is such that I've managed to work out how all the bones fit together and the various lengths and I know that all the vertex offsets are relative to the bones that they are linked with. I can tell that most of what I've extracted seems to be alright since I have a (mostly) intact head of squall and body.

EDIT 1: I've fixed the missing polys issue, it was to do with importing the quads wrong and due to this I've also managed to fix the normals issue just by flipping all the
normals.

The issues that I'm having:
      FIXED: I've had trouble with the normals, so I've just duplicated all the polygons with the opposite normals for now.
      FIXED: There appear to be some polygons missing, like a few triangles of the head and body. (I'll upload a screenshot when I find somewhere to upload it)
      The arms and legs appear disjointed and there's a large gap between the body and the arms (I'm guessing this is mostly due to the arrangement of the skeleton  and the orientation of the various limbs). I've managed to reduce the deformation somewhat but it's still slightly messed up.

EDIT: I managed to get the textures working now, although I had to manually scale and flip the coords.

Does anyone with a better understanding of the format have a clue what's going wrong?

3
I thought there seemed a distict lack of information on FF8 compared to FF7, so today I thought I'd tear apart the FF8 battle models.

Using some information from mirex I've been able to make a program that separates a .dat file into it's different parts.
I've just been looking at the 2 simplist sections to start with, these are:
section 7 - monster data, things like the name of the monster, draw magic, devour info, mug, dops etc are stored here - I've managed to decode a fair chunk of this section.
section 8 - this appears to be some sort of battle script, the only thing I've looked at so far in this section is the dialogue that appears near the end of the file, I've deduced that 0x3F is the start of a dialogue box and 0x3E ends it and I've managed to find some codes that place character names instead.

What I was wondering is if anyone has decoded any of the battle script format because it'd be pretty stupid to waste time on something that's already been done.

Pages: [1]