ROM Hack Smash3DS - Updated ROM Hacking Guide

D

Deleted User

Guest
vMzR8jh.png


I am going to leave this here because it isn't worth making a thread about.

BLUE: What seems like the header for each set of V (Vertex), VN (Vertex Normal), and VT (Vertex Texture)
RED: The vertex (it's split into 3 sections [X, Y, Z] in that order) 00 00 (X) | 00 00 (Y) | 00 00 (Z)
One increment (01) in the first half of a segment (01 00) is equal to 0.0003045535.
One increment (01) in the second half of a segment (00 01) is equal to 0.07796571.
One increment (01) on both halves of a segment (01 01) is equal to 0.07827026.
Notice that 01 01 equals 0.00030455 (0.0003045535 rounded to the nearest 100 millionth) plus 0.0779571.
Also note that the numbers aren't always rounded at the 100 millionth mark. They are rounded at the place that ends 00 XX. For example: 34 36 is 4.225985 (goes to 1 millionth place). 34 00 is 0.01583678 (goes to the 100 millionth place). 00 36 is 4.210148 (goes to the 1 millionth place). 0.01583678 rounded to the nearest millionth is 0.015837. 0.015837 + 4.210148 = 4.225985. Still researching the exact equation to find a number based just on the Bytes.
GREEN: The vertex normal (split into three sections [X, Y, Z] in that order)
One increment (01) is 0.007874016. Since there is only one segment per axis you would expect it to be easier to just multiply 0.007874016 by the decimal value of the byte, well that is not the case as results from Ohana3dsRebirth vary. 0.007874016 * 2 = 0.015748032. However Ohana3ds rounds it up one, but the places vary per exportation.
GREY: No idea what this is. Doesn't have a visible effect from what I can see but is probably something like a bone position because those do not show up in OBJ files. Now that I think about it, this is most likely a bone.
PURPLE: The vertex texture (split into two sections [U, V] in that order (u and v are coordinates for 2d textures to be mapped on a 3d model))
One increment (01) in the first half of the segment is equal to 3.020859E-05 (0.00003020859)
One increment (01) in the second half of the segment is equal to 0.007733399
One increment (01) on both halves of the segment is equal to 0.007763607
Not sure about the way to find the decimal value on these yet either.

If anybody is curious, the most productive way to design a model importer (from my eyes) would be to do the following:
  1. Create a list of all possible Vertices, Vertex Normals, and Vertex Textures
  2. Create a pointer file system where the user would export a model from Ohana3dsRebirth, put it into a different modeling software (such as blender) and then export it to a different file from there (creating the Ohana version of a OBJ and the original Wavefront version of a OBJ) and find the exact same vertices, vertex normals, and vertex textures from the same object in each file and create a pointer file telling the system where the vertex from blender belongs in the file from Ohana
  3. After making the pointer file, edit the model (not adding nor subtracting vertices) in the same software used to make the new OBJ file used for the pointer and replace the OBJ used for the pointer with the edited version (leaving the pointer file to show where the edited vertices come into play)
  4. A: Try and import this new model (after replacing the Ohana version with the new vertices thanks to the pointer file) and plug it into smash since it will have all of the same object names
    B: If A doesn't work, you will need a tool to create a pointer file for the original exported Ohana obj to the MBN file that converts the vertices to bytes and finds their location in the MBN and creates the pointer. Then you can use the tool to move the edited vertices into the MBN manually and it then allows the model to be played in game.
If anybody can and wants to check my info, please do. I do not want to be spreading false information. Oh, and by editing the vertex textures you can create more user friendly texture patterns.

EDIT: If anything is made or developed using this information, please, cite me. I know it probably common knowledge from anybody who has fucked around in the models and stuff so please, just cite me if u use this.

EDIT: I forgot to mention that these small little edits do work in game, I have no idea how a full model override would be handled, especially since I haven't worked on animations yet

EDIT: This method only works for the c0X models. The h0X models have a different format.
Putting this here because it should also go in this thread, even though I left it in the other
 
  • Like
Reactions: ih8ih8sn0w

Ordim3n

Well-Known Member
Member
Joined
Dec 14, 2015
Messages
413
Trophies
0
Location
Planet earth
XP
257
Country
Canada
There you have it, the color changer script for the hand and coin. for instructions, please read the readme.
@ih8ih8snow if you want the offsets, they're hard-coded in the script.
 

Attachments

  • CSS hand and coin color changer.7z
    1.5 KB · Views: 205

ih8ih8sn0w

Koreaboo
Member
Joined
Aug 22, 2015
Messages
1,677
Trophies
0
Age
25
Location
Hell
XP
898
Country
United States
There you have it, the color changer script for the hand and coin. for instructions, please read the readme.
@ih8ih8snow if you want the offsets, they're hard-coded in the script.
It might just be because I'm tired, but I don't see anything relating to chara_down or changing the bottom screen colors o-o

edit: you should also include that you need to use the 1.1.6 chara_up.lm or things break
 
Last edited by ih8ih8sn0w,

Ordim3n

Well-Known Member
Member
Joined
Dec 14, 2015
Messages
413
Trophies
0
Location
Planet earth
XP
257
Country
Canada
It might just be because I'm tired, but I don't see anything relating to chara_down or changing the bottom screen colors o-o

edit: you should also include that you need to use the 1.1.6 chara_up.lm or things break
1. I haven't looked into chara_down yet
2. Thanks to tell me that, because I always used 1.1.6 chara_up.lm, but I think that 1.1.5 should work, but I'm not sure.
 
  • Like
Reactions: ih8ih8sn0w

Yudowat

That one guy that shows up occasionally
OP
Member
Joined
Jun 12, 2015
Messages
552
Trophies
0
XP
341
Country
Australia
Have you ever thought that the CSS hand is boring? Well this is for you
3044977649d7ebabd37f07ec8c0a3fa9.jpg
Ah yes, I don't care that it's messed up, I'm just impressed that you managed to remove bayo /s
Serious: What are you trying to accomplish with the triforce though? a new hand model?
 

Senoue

Well-Known Member
Member
Joined
Jul 12, 2011
Messages
168
Trophies
0
Age
29
Website
Visit site
XP
202
Country
United States
I followed the Asia guide, but when I type CIA in the HackingTools, but it directs to it being a .3ds file. I can't get the romfs or anything for the update/DLC cia. Is there a video tutorial on this or am I doing something wrong? I put the update in Decrypt9 and had it be decrypted just fine. It's just getting the romfs I am having trouble with.
 

ih8ih8sn0w

Koreaboo
Member
Joined
Aug 22, 2015
Messages
1,677
Trophies
0
Age
25
Location
Hell
XP
898
Country
United States
I followed the Asia guide, but when I type CIA in the HackingTools, but it directs to it being a .3ds file. I can't get the romfs or anything for the update/DLC cia. Is there a video tutorial on this or am I doing something wrong? I put the update in Decrypt9 and had it be decrypted just fine. It's just getting the romfs I am having trouble with.
What version of the tools are you using?
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    The Real Jdbye @ The Real Jdbye: it won't make it better or worse