Jump to content

.BUM files from UPPERS (PS Vita)


Go to solution Solved by shak-otay,

Recommended Posts

Posted (edited)

There's a noesis script for "To LOVE-Ru Darkness: Gravure Chances" that also tackled .BUM files, but it doesn't seem to work with this game. I've attached the script and sample files from this game. Any help is much appreciated. There's also the Steam PC port if anyone wants to research that, but there's no script that I know of that properly decompresses the game's main .DAT file. The .BUM file type was also apparently used for Senran Kagura: New Link, a game that, like Uppers, happens to be a Marvelous-owned IP. So maybe there's some connection there.

Uppers Sample.zip

Edited by OugiSHU
  • Engineers
Posted (edited)

From a quick glance (sub meshes need to be assembled):

mesh_viewer_oZ8Laxfblu.png

edit:

Quote

There's a noesis script for "To LOVE-Ru Darkness: Gravure Chances" that also tackled .BUM files, but it doesn't seem to work with this game.

On my side the script works partially, "Detected file type: To LOVE-Ru Darkness: Gravure Chances
datasize:  0x7a228"

fails with index error then after bone names. Might be fixable.

edit 2: the skeleton was created, at least. xml version, see zip

bones.zip

Edited by shak-otay
  • Like 1
  • Engineers
Posted (edited)
7 hours ago, shak-otay said:

On my side the script works partially, "Detected file type: To LOVE-Ru Darkness: Gravure Chances

datasize:  0x7a228"

fails with index error then after bone names. Might be fixable.

The script works better now. Strangely it's the "Senran Kagura" one. (Need to check the differences...)

Noesis_CH_A000_skel.png

Edited by shak-otay
  • Like 2
Posted

Thank you for looking into this. So an existing Senran Kagura script was able to read these models in the end? Can I ask for an upload of the modified script to try it out? I want to see also if Noesis exports without breaking the UVs.

  • Engineers
  • Solution
Posted

The change in the fmt_sknl_bum.py in your uploaded zip is simple but it probably breaks the parenting. Don't have the time to check this.

So use on your own risk, simply comment out like so:

            #else:
            #    matrix[3] = eval(slide.parentNode.getAttribute("TRNS"))

 

  • Like 1
Posted

You were right. The weighting breaks, and there aren't any UVs. The mesh and bone positions are correctly exported, though. I tried on both NPC models and playable models. 

  • Engineers
Posted (edited)

There are uvs, but they're wrong, so not visible.

The rapi "uv line" (for FVF size/stride 36) needs to be patched like so:

				rapi.rpgBindUV1BufferOfs(ARAY[DRWA[a][0][1]][2], noesis.RPGEODATA_HALFFLOAT, ARAY[DRWA[a][0][1]][1], 20)

Strangely the uvs are not visible with .dae export, so I tried wavefront obj:

bum-uvs.png

Edited by shak-otay
  • Like 1
Posted

That worked! UVs show up and work perfectly with an FBX export too! Applying textures to this test model, she looks metallic skinwise in Blender, but I'm guessing that's to do with the game's toon shader (or I'm in need of another texture). I also tried on a playable character, and it worked perfectly! All that's still busted is the weighting of the rig, but I'm thankful with this much all the same! Thank you kindly! Can I tip you for your help at all?

Test.jpg

  • Engineers
Posted
55 minutes ago, OugiSHU said:

Thank you kindly! Can I tip you for your help at all?

The usual tipping currency here is thanks and likes.:classic_smile:

  • Thanks 1

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...