ROM Hack Need help ripping models and animations from Mario Hoops 3-on-3

axelsynn

Member
OP
Newcomer
Joined
Aug 20, 2019
Messages
9
Trophies
0
XP
44
Country
Canada
Hello all.

I have been trying to rip the models and animations from the NDS game Mario Hoops 3-on-3. The problem is that the game uses a file format that, although similar in name, is completely different from the regular BMD and BCA files that other NDS games use (.nsbmd, .BMD0)

axutgLR.png


This means that programs like Apicula and MKDS Course Modifier can't open them at all, even after decompressing them with Tinke. I've also tried GameCube model viewers but those don't work as well since it's a BMD file made specifically for the NDS.

I've asked around on the VGResource and these are some of the helpful responses I got:

"That "LZ7" is lz10-compressed, judging from DSDecmp output and the first byte being 0x10. Apicula not being able to open the file might be down to the file having "bmd" be the first 3 bytes as opposed to the "normal" (?) fourcc "BMD0" and the model files in sm64ds don't actually have any fourccs/magics for a container at all."

"Magic doesn't match. Not like they'd be likely to use gcn formats when formats specced to integrate with the DS's graphics processor exist.
Most likely it's some variant of the formats with the magic BMD0, you should get somewhere looking for similar data structures."

"Yeah, CorruptTurret is right. That isn't an NSBMD file. Besides the magic number, NSBMDs have lists of ASCII names for materials/meshes/bones that you can easily recognize in a hex editor that are missing from your BMD file."

I'm not a programmer so I have no idea what i'm supposed to look for in a Hex editor to try and open these files and seeing as how this is quite literally the only NDS game I had any interest in ripping models from it's become quite the personal vendetta for me so I really hope someone can help in any way. :(

Here's what I know so far:

- The game uses the bmd file format similar to Mario 64 DS but the ones there don't have any magics for a container.
- They're not the same bmd files as GameCube models.
- In a hex editor, the header is "bmd" as opposed to "bmd0" that .nsbmd files have.
- When compared to an .nsbmd file in hex editor there are a lot of details missing (is this related to decompression? idk...)
- Tinke is capable of decompressing the file but whether or not it's the correct way of decompressing I don't know...
- Programs that can open Mario 64 DS bmd files can't open these ones at all.

I'm pretty desperate. Please help.

Links for files:

http://www.mediafire.com/file/hhs7i3cbxku8uuj/Files.rar/file (This contains a BMD and BCA file both compressed and decompressed. [with Tinke])

http://www.mediafire.com/file/qr94quer4ps5peq/Files2.rar/file (This contains all the files in the game that consist of BMD and BCA, all compressed.)


Thanks in advance.
 
Last edited by axelsynn,

FAST6191

Techromancer
Editorial Team
Joined
Nov 21, 2005
Messages
35,107
Trophies
2
Website
trastindustries.com
XP
24,632
Country
United Kingdom
If you are not going to be able to program something yourself then this will probably not get too far -- there are few people doing much with DS 3d and it is usually annoying to try to make converters, and random sports game is not a terribly enticing prospect. You might be able to recreate something using no$gba's 3d viewer if you really want -- ds models are usually simple enough that you can recreate vertices quickly enough by manual transcription. Animations might be a different matter.

The decompression is probably accurate as that is related to the BIOS and SDK rather than 3d formats.

Anyway interesting. I have seen non NSBMD formats before from nintendo games but those were very early games. Still if it is mid 2006 (around ROM number 500 for others playing along at home) it could probably have started prior to NSMBD being crystallised.

The obvious place to start other than the gamecube stuff would probably the metroid prime hunters viewer DSgraph, or at least its models ( https://gbatemp.net/threads/reversing-engineering-metroid-prime-hunters-animations.447545/ https://docs.google.com/spreadsheet...t?pageId=114425860165022438636#gid=1209037446 ).

If as those people speculate it is an earlier format and you don't want to adapt an open source tool to it then you might be able to go the other way and if the node list matches the hardware (and presumably also the NSBMD we have come to know and love) you might be able to inject it into a NSBMD file. Not sure what the animations will do as we don't have many DS animation rippers.
 

axelsynn

Member
OP
Newcomer
Joined
Aug 20, 2019
Messages
9
Trophies
0
XP
44
Country
Canada
Hey! Thanks for the response. I'll gladly take the models only as I knew the animations would be a longshot.

I'm curious about the no$gba debugger 3D viewer as I've actually seen you mention it in an older post of yours. If it's not too much trouble can you tell me how to use it? I think that might be my best shot at getting the models at least.
 

FAST6191

Techromancer
Editorial Team
Joined
Nov 21, 2005
Messages
35,107
Trophies
2
Website
trastindustries.com
XP
24,632
Country
United Kingdom
I never found much use for it so if you click on it (should be in the same locations as tile viewers, memory viewers and whatever else) and click around for 45 seconds you will probably know more than I presently do as it is not one of the more complex aspects of it.

Models wise I would look into the possibility of injecting the model data itself into a donor NSMBD file and using that. Other than compression most 3d model formats stay pretty true to the hardware and don't do much in the way of post processing. Not much good if you want to edit it within a game but for conversion for another game or ripping for your own uses then that is a different matter.
 

axelsynn

Member
OP
Newcomer
Joined
Aug 20, 2019
Messages
9
Trophies
0
XP
44
Country
Canada
I see. Someone suggested on a different website (an old post regarding these very same .bmd files) to try and replace some of the Mario64DS bmd files with the decompressed ones for Mario Hoops. I guess what you're suggesting is similar to that? I'll give it a shot.
 

FAST6191

Techromancer
Editorial Team
Joined
Nov 21, 2005
Messages
35,107
Trophies
2
Website
trastindustries.com
XP
24,632
Country
United Kingdom
Some more was mentioned in PM but for the sake of others reading along at home.

If you want to rip them and the Mario64 stuff does not have anything then that would not get you much further.

But yeah the idea would be take the vertex list from the Mario Hoops game and inject into a NSMBD file (possibly also NSBCA for the animations, and maybe nsbtx for textures if what limited texture options the NSBMD format affords are not enough) that other tools are designed to handle/capable of handling. I have not yet looked at these files but generally something as fiddly as 3d but also as relatively simple as DS 3d hardware (I have 80s software rendered 3d that is probably more advanced) will stick close to the hardware and just be a list of commands/data the hardware inherently understands, with the remainder of the format being a wrapper for it so the game can quickly fetch what it needs, or adjust any hardware settings (and a dev does not have to order a recompile every time they tweak a model or something).

Finding a suitable donor file may or may not be tricky (there is a reason a specific game is used for DS SDAT sound ripping) or you may have to explore more of the file to figure out its formats (or check the DS 3d viewer of an emulator to see if you can match options for the one you want) but even if it is garbled (compare say viewing a 2d image in 8bpp when it is originally 4bpp) you can tell you are somewhere on the right path.
 
General chit-chat
Help Users
    NeoGaming @ NeoGaming: I don't mean no disrespectBut there's something about herI can't let goBaby you know I love...