Ads keep us online. Without them, we wouldn't exist. We don't have
paywalls or sell mods - we never will. But every month we have large bills
and running ads is our only way to cover them. Please consider unblocking us. Thank you from GameBanana <3
- A Mod for Super Monkey Ball Banana Mania.
This mod required modifying the banana models themselves because they were technically split in half length-wise which meant unsymmetrical textures wouldn't look correct.
Here's the gist of the steps I took and the tools used:
Extract meshes (banana01, fusa01) and textures (banana01, obj_banana_gold01, obj_banana_corruption01) with AssetStudio from a banana mania game file (in this case, "object")
Modify the textures with Paint.net
Import extracted mesh into Blender, perform banana surgery
Export finished banana as obj
Open Unity and install the "FBX Exporter" package (Google this - it's a preview package by Unity themselves)
Import obj into Unity
Right click obj and "Convert to FBX Prefab variant"
Install this Unity script https://www.reddit.com/r/Unity3D/comments/59pywj/extracting_meshes_from_fbx_files/
Right click on your new .fbx file and "Extract Meshes"
Put the extracted .asset file somewhere safe
Open UABEA and open the relevant banana mania asset file (in this case, "object"). Open in memory is fine, afterwards click "Info" to view files
Find the mesh to replace and click "Export Dump"
Place this in the same folder as your .asset file from step 10
Open the .asset file from step 10 and the text file from step 13 side-by-side - I like to use Sublime
Replace values in the .txt file with values from the .asset file. Most of this can be done by hand but for the m_IndexBuffer and _typelessdata fields you will want to use this script: https://colab.research.google.com/drive/1PZ_WhlzwVpEOvt0ICodxVQYNkp9AdjiC?usp=sharing
Save the .txt file
In UABEA select the mesh again and do "Import Dump" and select the text file you just made
Also find the relevant texture file and click "Plugins > Edit Texture > Load" to load your custom texture
When done click "File> Save"
Close the "Assets Info" window
Close the UABEA window. It will ask you if you want to save. Click "YES"
Save the file, reopen UABEA, and then open the file you just made
In UABEA click "File > Compress" and use the default LZ4 compression
When it finishes, you can now place that file back into Banana Mania and start it, hopefully without issues
Unfortunately this method doesn't seem to work for more complicated models, such as the monkeys themselves. When I tried modifying AiAi's UV map, somewhere during the AssetStudio->Blender->Unity conversions the model's vertex count tripled and the mesh export was missing a lot of data.