Skip to content
View in the app

A better way to browse. Learn more.

ResHax

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.
Help us keep the site running.

.BUM files from UPPERS (PS Vita)

Featured Replies

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

Solved by shak-otay

  • Supporter

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

  • Supporter
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

  • Author

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.

  • Supporter
  • Solution

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"))

 

  • Author

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. 

  • Supporter

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

  • Author

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

  • Supporter
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:

Create an account or sign in to comment

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.