Hacking Final Fantasy 3 broken model files

cjraven

New Member
OP
Newbie
Joined
Mar 24, 2023
Messages
4
Trophies
0
XP
36
Country
United Kingdom
I recently bought Final Fantasy III 3d remake on steam, and as i always do the first thing i done was look through the files.
Found it pretty funny that the steam release uses nds files.

After decompressing and using apicula to rip texture and model files out to have a look at them i found one model that worked, but a bunch that get extracted as "empty_model_file.nsbmd",
none of the viewers i have can open them and Tinke gets the error
"
Unable to read beyond the end of the stream.
at System.IO.BinaryReader.FillBuffer(Int32 numBytes) at System.IO.BinaryReader.ReadUInt16() at _3DModels.BMD0.Read(String file, Int32 id, IPluginHost pluginHost) at _3DModels.Main.Show_Info(sFile file) at Tinke.Acciones.See_File()
"
Using a hex editor and comparing it to the model that works and also reading about MDL0 data structure online i can't see much wrong, apart from the "display list end" being empty
one of the websites i got information from: (tried to but can't send because spam protection, its vg-resource/Nitro_Files)​

I don't know if i'm allowed to upload game files or if that's against some rules so i don't know how i can show the files, the files "b01" up to "b16" are the ones i've looked at so far

not sure what other information to give, just ask and if i know i'll tell you. I want to see if i can get these files viewable
 

FAST6191

Techromancer
Editorial Team
Joined
Nov 21, 2005
Messages
36,798
Trophies
3
XP
28,348
Country
United Kingdom
Normally we find it is something non standard, or the format got changed a bit from the earlier definitions, but not sure what would be doing that here if it generally conforms to the standard.

You can try mkds course modifier, or kick it really old school and go for nsbmdtool https://gbatemp.net/download/nsbmd-tool.28230/ in the hope it at least spits out some more relevant info. https://wiki.vg-resource.com/Nitro_Files is indeed about as good as it gets/as complete as it gets for any kind of specification (most things I know of other than that either referencing the things used to make that or being the things used to make it).
 

cjraven

New Member
OP
Newbie
Joined
Mar 24, 2023
Messages
4
Trophies
0
XP
36
Country
United Kingdom
Unfortunately all i got from the tool was the number of models, which i already knew because i've looked at the hex

nsbmd.exe -d -c -t -v b01.nsbmd
DEBUG: file size = 001415fc (1316348)
=================================
reading 'MDL0'...
No. of Model = 01

Although the fact that this only gets to model number and not the number of objects, materials and polygons makes me think the error is somewhere at the start of the file, so i guess the tool did help narrow down where the problem is.
Post automatically merged:

After looking in the hex a bit and comparing it to the model that works, the problem looks like it's somewhere in here
1679737299368.png

i've changed these numbers to match the other working models numbers, i knew that wouldn't fix it but i wanted to see if it changed the outcome of nsbmd, and it does. So does changing the "amount of models" number at 33.

So for anyone who knows the structure of MDL0 better than me who's just reading off a wiki, do you see what's wrong here...
nevermind just found more info while tinkering with it,
1679738743586.png

It was missing these peices of information from 0.3 General Data Sub-header i just read about in vg-resources, the "unknown section" and "uknnown data".
Manually filling this in with what's on the wiki and other working model and updating the file size and pointers gets the model opening, however it's still reading the model wrong.
1679739490158.png

I don't know why it's saying codeoffset = 00001260, looking into that now.
Post automatically merged:

Looks like it has something to do with the 2C just before the model name "b01".
changing it's values makes it count different amounts of polygons and changes the "codeoffset".

Going to keep messing around with this number to see if i can get it to work even though i don't fully understand it
Post automatically merged:

anyone know what number is supposed to be there?

vg-resource just says "// The Data stored here is used for several different things, explained when used."
i have no idea if the number is supposed to be an offset or something, and i can't see where the number gets explained.
so i can't figure out any way to know or calculate what might work.
 
Last edited by cjraven,

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • K3Nv2 @ K3Nv2:
    That sick boy yo
  • K3Nv2 @ K3Nv2:
    I was hoping I could add a custom ROM to this fire HD 10 tablet but guess no one's made twrp available
  • Psionic Roshambo @ Psionic Roshambo:
    Root it? Lol
  • Sicklyboy @ Sicklyboy:
    That shit is so locked down, tighter than a nun's ass
  • K3Nv2 @ K3Nv2:
    Don't know if that's even possible for the firmware
  • K3Nv2 @ K3Nv2:
    You can remove the bloat ware and ads easily but can't install a rom
  • K3Nv2 @ K3Nv2:
    20 some years later crash bandicoot still pisses me off
  • BigOnYa @ BigOnYa:
    Have you jail broke your ps4 yet?
  • K3Nv2 @ K3Nv2:
    I've been on since 9.0
    +1
  • BigOnYa @ BigOnYa:
    Are you gonna do your ps5 if the hack comes? Is there worries of bans, like the ps3
  • K3Nv2 @ K3Nv2:
    Probably not I got cross play friends
    +1
  • K3Nv2 @ K3Nv2:
    By then I'll have some little mini pc anyway
  • ZeroT21 @ ZeroT21:
    only ps5 updated to latest firmware can go on psn, jailbroken ones just don't use psn or they risk getting flagged or banned, altho spouting profanity in online play alredy does that
  • K3Nv2 @ K3Nv2:
    Keep current Gen consoles stock mod last gen imo
  • DinohScene @ DinohScene:
    Anyone dumb enough to get banned for spouting profanity deserves it.
  • Y @ YuseiFD:
    Then how come you do it and don't get banned ? or is it a question of getting caught doing it ?
  • BakerMan @ BakerMan:
    wtf is the point of banning swearing in games? that's utterly a dumb decision

    the new generation playing MWII won't be as hardened as the previous one playing original MW2
  • Veho @ Veho:
    What's the point of video games? Kids playing video games won't be as hardened as the previous ones getting shoved down a hillside.
    +1
  • BakerMan @ BakerMan:
    exactly my point
  • BakerMan @ BakerMan:
    kids, yall are fucking pussies, grow some asshair before you even dare touch My Friend Peppa Pig or Mario's Early Years
    BakerMan @ BakerMan: kids, yall are fucking pussies, grow some asshair before you even dare touch My Friend Peppa Pig...