Page 1 of 2
MadWorld [Wii] .dat
Posted: Thu Aug 13, 2020 7:08 am
by qs12
I haven't found any Noesis scripts to open these files, Any help will be appreciated
http://www.mediafire.com/file/3mm0r5akf ... l.zip/file
Re: MadWorld [Wii] .dat
Posted: Thu Aug 13, 2020 9:29 am
by Petrgold
It's a Platinum Games game, you should ask Kerilk to add support for it
https://github.com/Kerilk/noesis_bayonetta_pc
It already supports pretty much all their games (bayonetta, TW101, Metal Gear Rising, Astral Chain, Nier Automata, Vanquish etc)
The naming convention in your samples. seems to be he same as the other games.
Re: MadWorld [Wii] .dat
Posted: Thu Aug 13, 2020 9:52 am
by shakotay2
Using
hex2obj (view link in my sig):
.
pl0010_1-dat.png
(no time to care for face indices)
Re: MadWorld [Wii] .dat
Posted: Fri Aug 14, 2020 1:23 am
by Kerilk
The animation format seems to be the same as Bayonetta WiiU. The model format I have never seen, and skeleton seem to be havok related. The texture container is also unknown. So this one would take me a lot of work, don't know when I'll have time to add it.
Re: MadWorld [Wii] .dat
Posted: Fri Aug 14, 2020 4:07 am
by qs12
Kerilk wrote: ↑Fri Aug 14, 2020 1:23 am
The animation format seems to be the same as Bayonetta WiiU. The model format I have never seen, and skeleton seem to be havok related. The texture container is also unknown. So this one would take me a lot of work, don't know when I'll have time to add it.
Thank you! I'll be looking forward to the future for support to this game, Take your time.

Re: MadWorld [Wii] .dat
Posted: Fri Aug 14, 2020 1:57 pm
by Joschka
Great to see some work on that game, I'd love to have animations viewable.
The UInt at 0x20 gives the "JK" section offset, which is the one who seems to contain model information.
Here's what I have after a quick look (thanks to Shakotay for the vertex information)
Code: Select all
bs.readUShort() #magic
vertexFlag = bs.readUByte() #pos as shorts if 0x12, float if 0x13
bs.readUByte()
vertexCount = bs.readUInt()
vertexOffset = bs.readUInt()
bs.readUInt() #???
bs.readUInt() #???
bs.readUInt() #???
bs.readUInt() #???
bs.readUInt() #???
bs.readUInt() #???
bs.readUInt() #???
bs.readUInt() #???
jointCount = bs.readUInt()
jointParentingOffset = bs.readUInt() #joint indices seem to be after that section, fixed length ?
bs.readUInt() #???
jointPosOffset = bs.readUInt()
I'll work a bit more on it this evening. UV and normal coords are probably in those unknown sections but I didn't look into it yet, was looking for face indices. I have an idea about where they could be but I need to do some testing first.
Re: MadWorld [Wii] .dat
Posted: Fri Aug 14, 2020 6:18 pm
by Joschka
Had more time to work on this, got the faces and the submeshes. I tried to find some skinning info but didn't find anything promising. There are also some weird indices interleaved between the face indices, gave me some trouble to figure faces out.
I didn't look into normals and UVs but I assume they must be in one of the sections following the vertex positions, couldn't check myself.
Anyways I won't have more time to work on this, hopefully someone finishes the job (to use the plugin you need to rename the .dat extension to .datM to avoid conflict with the bayonetta plugin). Don't forget to enable face cull when previewing.

Re: MadWorld [Wii] .dat
Posted: Sat Aug 15, 2020 10:11 pm
by Joschka
Had some stuff cancelled today so had some time to work more on it after all.
Skinning cracked :
I'm confused about Normals and UVs though. I'm pretty sure to know where they are but for some reason they have a count inferior to the position count, so I can't feed the buffer or it'll complain about an out of bounds error. Did anyone see a similar thing in another format ? It's the first time I see something like this myself, not really sure if I should pad the buffer with zeros or something like that.
Anyways, all that info is in that updated script, the normals and uv parts are commented out to avoid crashing for now.
So yeah only UVs and Normals left. Hopefully Kerilk can get the anims now.
fmt_datM.zip
Re: MadWorld [Wii] .dat
Posted: Sun Aug 16, 2020 1:34 am
by qs12
Joschka wrote: ↑Sat Aug 15, 2020 10:11 pm
Had some stuff cancelled today so had some time to work more on it after all.
Skinning cracked :
I'm confused about Normals and UVs though. I'm pretty sure to know where they are but for some reason they have a count inferior to the position count, so I can't feed the buffer or it'll complain about an out of bounds error. Did anyone see a similar thing in another format ? It's the first time I see something like this myself, not really sure if I should pad the buffer with zeros or something like that.
Anyways, all that info is in that updated script, the normals and uv parts are commented out to avoid crashing for now.
So yeah only UVs and Normals left. Hopefully Kerilk can get the anims now.
fmt_datM.zip
If you'd like I can supply more files.
Re: MadWorld [Wii] .dat
Posted: Sun Aug 16, 2020 3:01 am
by Kerilk
Hello,
I had some time to work on the models today, and thanks to Joschka's work I have the model format mostly figured out:
https://github.com/Kerilk/bayonetta_too ... d%20mdb.bt
Normal and UVs are indexed, same as positions.
I am having trouble with figuring the texture format:
https://github.com/Kerilk/bayonetta_too ... d%20tpl.bt
I am not having a lot of luck with rawtex:
MadWorl.jpg
This is the best I could get.
Re: MadWorld [Wii] .dat
Posted: Sun Aug 16, 2020 10:10 am
by Allanoon
I dunno if it'll be helpfull at all, apologize in case...
There're some general infos on the format here
http://wiki.tockdom.com/wiki/TPL_(File_Format)
With a list of programs that can open them~
Re: MadWorld [Wii] .dat
Posted: Sun Aug 16, 2020 11:41 am
by Joschka
Quick and dirty Noesis script to get pl0010 and pl0030 textures, doesn't work on pl0000 but that's probably because there's some wrong offset or something, didn't look much into it, just wanted to see if I could get some textures to work.
Big thanks to Zheneq's Noesis wii texture library https://github.com/Zheneq/Noesis-Plugin ... ndo_tex.py
You need to download the above script and put it next to the attached one, change the .dat to .datMT and you should get the textures (you'll need to cycle blend for some of them).
tex_madWorld.zip
It's just meant as a proof of concept since Kerilk will integrate it in the bayonetta plugin.
Kerilk wrote: ↑Sun Aug 16, 2020 3:01 am
Normal and UVs are indexed, same as positions.
Nice catch on that one, I never saw that before, these interleaved indices make a lot more sense now.
Re: MadWorld [Wii] .dat
Posted: Sun Aug 16, 2020 2:59 pm
by Kerilk
I have all the information I need. I just need to write it in C++. Getting more samples (a lot) would also be useful just to identify all vertex formats.
Re: MadWorld [Wii] .dat
Posted: Sun Aug 16, 2020 9:23 pm
by qs12
Kerilk wrote: ↑Sun Aug 16, 2020 2:59 pm
I have all the information I need. I just need to write it in C++. Getting more samples (a lot) would also be useful just to identify all vertex formats.
Here you go:
http://www.mediafire.com/file/osgxh1fwo ... s.zip/file
Keep up the good work!

Re: MadWorld [Wii] .dat
Posted: Fri Aug 21, 2020 1:47 am
by Kerilk
Okay, I updated the templates if anyone is interested. I don't understand the format fully yet, it was much more complicated than it seemed at first, but I should be good to start adding support into noesis. This will take some time.