Author Topic: [FF8] Texture Hunting  (Read 4153 times)

Mcindus

  • *
  • Posts: 929
  • Artist, Modder, Musician.
    • View Profile
    • Lunatic Pandora
[FF8] Texture Hunting
« on: 2016-11-09 17:20:04 »
Hello!  I was wondering if someone could help me find the location of the GF texture files (TIMs) within the game??
I've found nearly everything else, and it's causing me to have to go back and overhaul some of my mods.

The reason I'm looking is that the TIM files have transparency information that the Tonberry dumps are missing.

I would LOVE to find them. :)

Maki

  • 0xBAADF00D
  • *
  • Posts: 621
  • 0xCCCCCCCC
    • View Profile
Re: [FF8] Texture Hunting
« Reply #1 on: 2016-11-09 18:10:55 »
Hello!  I was wondering if someone could help me find the location of the GF texture files (TIMs) within the game??
I've found nearly everything else, and it's causing me to have to go back and overhaul some of my mods.

The reason I'm looking is that the TIM files have transparency information that the Tonberry dumps are missing.

I would LOVE to find them. :)

It depends... Some are from magic.fs, some are from battle.fs,
the fileformat is chaotic af: http://wiki.qhimm.com/view/FF8/FileFormat_magfiles
Enviro objects uses unknown TEX texture, but fortunately GFs are not.

Give me a sec, I'll give you full list.
They just have changed extension.


Code: [Select]

SHIVA = battle\mag184_d.dat

QUETZACOATL = battle\mag115_h.03  and battle\mag115_h.04

IFRIT = *Alternative format mag200_b.01 (open as raw x42 skew+1)...

SIREN = battle\mag094_b.1t4 and battle\mag094_b.1t5

BROTHERS = *Alternative format mag204_b.03, .04 ...

DIABLOS = battle\mag324_h.01

CARBUNCLE = magic\mag277.tim (Ignore .TIM! It's multipacked texture, scan raw/dump manually!!)

LEVIATHAN = *Alternative format battle\mag005_b.03

PANDEMONA = battle\mag290_h.00

CERBERUS = uses Bahamuth files?

BAHAMUTH = *Alternative format mag202_b.03 (x42 skew+2)



*Alternative format is some weird texture I was writing about. It's paletted texture, no header, looks okay only with ??x42 (1:1) skew +1
I noted it to implement this texture format into Rinoa's toolset, but never did it due to fact that there were many wmset section requests.. (I believe I wrote somewhere the palette specification, I guess...)
EDIT: I found it! https://github.com/MaKiPL/FF8-Rinoa-s-Toolset/issues/18 - this weird texture specification.
« Last Edit: 2016-11-10 13:33:51 by Maki »

Mcindus

  • *
  • Posts: 929
  • Artist, Modder, Musician.
    • View Profile
    • Lunatic Pandora
Re: [FF8] Texture Hunting
« Reply #2 on: 2016-11-10 05:53:16 »
You are awesome! I'm already grabbing the files you mentioned and placing them in folders.  Have you had any luck finding Alexander, Doomtrain, Cactuar, Tonberry King, or Eden?

Odin, Phoenix, Boko, Gilgamesh, and Minimog would be bonuses lol.  I think I have moomba.

I might just have to scan through both directories for more.  :)

Thanks for finding these for me!

Maki

  • 0xBAADF00D
  • *
  • Posts: 621
  • 0xCCCCCCCC
    • View Profile
Re: [FF8] Texture Hunting
« Reply #3 on: 2016-11-12 14:43:15 »
Sorry for delay! Rainbow Six: Siege is for free since yesterday. :D

Alexander

battle/mag203_b.05 and 06 *Alternative format  (skew+2)
by the way:

Doomtrain
Unfortunately loader function for Magic_191_Doomtrain is... null...
Okay, found it later in code. It's in EXE, right here: .data:00F78384
here: https://www.dropbox.com/s/uizxx6jfyd7usw7/doomtrain.tim?dl=0
I'm not quite sure if that's all. Every GF has it's own functions so every single GF requires reversing, eh..

Cactuar
magic/battle333.tim for effects
and in EXE, this is probably it: https://www.dropbox.com/s/3k19f9010669249/cactuar.tim?dl=0

Tonberry

magic/mag098_1.tim

Eden

Magic/mag205_b.00 *Alternative format (has some Eden textures)
Magic/mag205_b.01 *Alternative format (Many Eden textures packed)

Odin
in EXE .data:00FAD4A8 (oh, it's only sky and effects)

that's all for now.. ;c
« Last Edit: 2016-11-12 15:03:40 by Maki »

Maki

  • 0xBAADF00D
  • *
  • Posts: 621
  • 0xCCCCCCCC
    • View Profile
Re: [FF8] Texture Hunting
« Reply #4 on: 2016-12-10 19:56:43 »
Alt texture: (this is the only thing missing before I can proceed with software release and take on requests... :cry:)


The files are mixed, but they all seem to share the same format:

Alternative format (Ifrit for example):
Code: [Select]
0x00 - Probably always null
0x04 - Bones data
0x08 - Unknown (used to determinate texture size*)
0x0C - Geometry pointer
0x10 - SCOT pointer
0x14 - texture pointer

everything else can be single file (like single texture or SCOT file)

SCOT file is heavily related to "AudioTransition" effects and any other special effects (disassembler mentions SCOT to display audio transition debug info)
Some files are raw texture. Texture format is MONOCHROMATIC (yes) 1 byte per pixel. I couldn't find color palette yet.
Texture resolution is based on size:
Code: [Select]
0x2000 = 32x32
0x4000 = 64x64
0x8000 = 128x128
0x10000 = 256x256
This works perfectly for all special effects texture, animation textures (animation key frames), static GF and magic environment textures, but bugs a bit on G.F. itself

code help: https://github.com/MaKiPL/FF8-Rinoa-s-Toolset/blob/master/SerahToolkit_SharpGL/GF_AlternativeTexture.cs

Packed texture getting:
1. See 0x08, it points almost always to null data, but also indicates where to stop watching texture pointers
2. Jump to pointer 0x14 (almost always 0x30)
3. Note all pointers if not zero until streamPosition==*(0x08)
4. If no pointers, file has no texture.
5. Jump to texture (pointer+*(0x14)) e.g. 48+21675
6. There's no sizes, so if there's another texture after the one you're getting, then subdivide next texture position from current position to get size and determine texture resolution. If it's the last texture, then it gets a bit tricky, as in many ways the file is not ending with texture but SCOT for example..

What gives the textures color is mystery as now...

EDIT:
Okay, fixed GF textures resolution:

still no palette data...
« Last Edit: 2016-12-11 09:56:32 by Maki »