ROM Hack [Release] Sm4shCommand

The_Marcster

Well-Known Member
Newcomer
Joined
Aug 18, 2015
Messages
98
Trophies
0
Age
24
XP
86
Country
Gambia, The
Okay, after the latest update I tried everything again and now the extracting and repacking finally works for my european version, but I modifying the game doesn't work. I tried to open Captain Falcon's moveset and parsed the animations, and everything was working fine. Just as a test I opened his forward aerial and modified the knockback a bit, closed it, saved it and then repacked everything. Then I started the game with HANS normally (EUR/DE) and tested if the change worked, but suddenly all of Falcon's moves had no hitbox anymore and his up and down smash froze the game. After that I tried to start the game in USA/EN and all of the moves got their hitboxes back but the knee, with was the only one I changed.
A few things that I noticed were that strangely the patched version had exactly the same file size as the unaltered original file and that patching a data(us_en) folder together with just the data folder didn't seem to change the result in any way.

I would appreciate any help, I have no idea what to do now...
 

The_Marcster

Well-Known Member
Newcomer
Joined
Aug 18, 2015
Messages
98
Trophies
0
Age
24
XP
86
Country
Gambia, The
I saw this post before and it sadly isn't helping me because I lack most of the basic knowledge about 3DS homebrew.
I suspect, this "secret" cia file is a 3DS program you can install? How do you do that?
Also, another thing I noticed on the Reddit post: "EDIT 3: DOESN'T WORK ON EUR OR JAP. RIP"
Is this false and it does work with european versions?
And one last thing, the post said this tutorial is for 1.1.4. Does it still work on 1.1.5?
 

HeartBound

Well-Known Member
Member
Joined
Feb 11, 2016
Messages
159
Trophies
0
Age
33
XP
105
Country
Canada
I saw this post before and it sadly isn't helping me because I lack most of the basic knowledge about 3DS homebrew.
I suspect, this "secret" cia file is a 3DS program you can install? How do you do that?
Also, another thing I noticed on the Reddit post: "EDIT 3: DOESN'T WORK ON EUR OR JAP. RIP"
Is this false and it does work with european versions?
And one last thing, the post said this tutorial is for 1.1.4. Does it still work on 1.1.5?
for 1.1.5 you need to get the cia from another site but I don't know if it works with EU. Can't you just use a USA file? I don't think it matters if your 3ds is hacked
 

Trinitro21

Well-Known Member
Member
Joined
Oct 14, 2015
Messages
133
Trophies
0
Location
Userland
XP
206
Country
United States
I was tired of waiting 10 minutes for a cia to install every time I wanted to switch between saltysd and unhacked smash, and I came up with an idea. Here's my implementation of that idea after about 2 days.
I made a modification of yifan lu's loader replacement that makes saltysd easier to use. Here's what it does:
  • if /saltysd/saltysd.bin is found
    • load that file over the code.bin to run hacked smash
  • else
    • if /saltysd/code.bin is not found
      • dump a code.bin (you can use the dump with the saltysd patcher)
This way you can control whether you play hacked or normal smash by simply renaming a file using a file manager of your choice, shortening the transition between hacked and unhacked smash from around 10 minutes to around 1 minute.
I intended the whole process to only happen when X was pressed so that the button press would determine if hacked smash was loaded, but I couldn't figure out how to get button input. I'm fine with the way it is if button input can't be detected in loader.

Attached is a folder containing the source used and a build of injector.cxi with only that patch. You'll have to add any other patches yourself if you want them.
 

Attachments

  • injector.zip
    197.7 KB · Views: 156
Last edited by Trinitro21,

shinyquagsire23

SALT/Sm4sh Leak Guy
Member
Joined
Nov 18, 2012
Messages
1,977
Trophies
2
Age
26
Location
Las Vegas
XP
3,765
Country
United States
I saw this post before and it sadly isn't helping me because I lack most of the basic knowledge about 3DS homebrew.
I suspect, this "secret" cia file is a 3DS program you can install? How do you do that?
Also, another thing I noticed on the Reddit post: "EDIT 3: DOESN'T WORK ON EUR OR JAP. RIP"
Is this false and it does work with european versions?
And one last thing, the post said this tutorial is for 1.1.4. Does it still work on 1.1.5?
There is no reason for SaltySD to not work on EUR and JAP as far as I know, but I also haven't tested either. I'm curious if @Trinitro21's code.bin loader would help to either prove or disprove this sentiment, because every time I've had someone mention this bug their .cia also didn't repack correctly, so ???
 

Ordim3n

Well-Known Member
Member
Joined
Dec 14, 2015
Messages
413
Trophies
0
Location
Planet earth
XP
257
Country
Canada
I was tired of waiting 10 minutes for a cia to install every time I wanted to switch between saltysd and unhacked smash, and I came up with an idea. Here's my implementation of that idea after about 2 days.
I made a modification of yifan lu's loader replacement that makes saltysd easier to use. Here's what it does:
  • if /saltysd/saltysd.bin is found
    • load that file over the code.bin to run hacked smash
  • else
    • if /saltysd/code.bin is not found
      • dump a code.bin (you can use the dump with the saltysd patcher)
This way you can control whether you play hacked or normal smash by simply renaming a file using a file manager of your choice, shortening the transition between hacked and unhacked smash from around 10 minutes to around 1 minute.
I intended the whole process to only happen when X was pressed so that the button press would determine if hacked smash was loaded, but I couldn't figure out how to get button input. I'm fine with the way it is if button input can't be detected in loader.

Attached is a folder containing the source used and a build of injector.cxi with only that patch. You'll have to add any other patches yourself if you want them.
We just have to build a cia with the build right???
 
Last edited by Ordim3n,

Trinitro21

Well-Known Member
Member
Joined
Oct 14, 2015
Messages
133
Trophies
0
Location
Userland
XP
206
Country
United States
We just have to build a cia with the build right???
You'll have to inject it into your firmware.bin. I can't really help with that; I use mizuki to load my injector.cxi.
There is no reason for SaltySD to not work on EUR and JAP as far as I know, but I also haven't tested either. I'm curious if @Trinitro21's code.bin loader would help to either prove or disprove this sentiment, because every time I've had someone mention this bug their .cia also didn't repack correctly, so ???
That reminds me, I forgot to put the IDs for other regions into the loader. I'll fix that.
 

Attachments

  • injector.zip
    197.9 KB · Views: 110
  • Like
Reactions: I pwned U!

Mattshark

Well-Known Member
Member
Joined
Aug 31, 2015
Messages
254
Trophies
0
Age
24
XP
239
Country
United States
Currently testing it; however, I don't think the program and your SaltySD CIA are the only things you'll need; you probably need to do a lot of other repacking in the process. I'm currently trying a set-up that worked when I used the 1.1.4 update and injected custom music into it, but with up-to-date files and .rsf and whatnot, so I'll reply how it goes!

--------------------- MERGED ---------------------------

You'll have to inject it into your firmware.bin.
Wait, you mean the firmware.bin that your CFW comes with?
I've never messed around with that file; are you sure you can't just replace your update's cxi with it?
 

Mattshark

Well-Known Member
Member
Joined
Aug 31, 2015
Messages
254
Trophies
0
Age
24
XP
239
Country
United States
Wait...
Does this CXI replace the existing CXI in the smash update, or does it just modify parts of it?
Or does it modify the CFW itself (which I don't think it does)?
 

Trinitro21

Well-Known Member
Member
Joined
Oct 14, 2015
Messages
133
Trophies
0
Location
Userland
XP
206
Country
United States
Wait, you mean the firmware.bin that your CFW comes with?
I've never messed around with that file; are you sure you can't just replace your update's cxi with it?
Yeah, I mean that file. You can't replace the update's cxi with a system module's cxi.
Wait...
Does this CXI replace the existing CXI in the smash update, or does it just modify parts of it?
Or does it modify the CFW itself (which I don't think it does)?
It modifies the firmware.bin that the cfw loads.
I have yet to figure out completely how to use it in a cfw that doesn't support loading injector.cxi files, but I did notice that Rei appears to be working on that feature.
 
Last edited by Trinitro21,

Mattshark

Well-Known Member
Member
Joined
Aug 31, 2015
Messages
254
Trophies
0
Age
24
XP
239
Country
United States
Yeah, I mean that file. You can't replace the update's cxi with a system module's cxi.

It modifies the firmware.bin that the cfw loads.
I have yet to figure out completely how to use it in a cfw that doesn't support loading injector.cxi files, but I did notice that Rei appears to be working on that feature.
Dang it.
I guess my attempt was a failure then... :/

(Wow, there's no ecomotion for that face? Weird. :P)
 

Trinitro21

Well-Known Member
Member
Joined
Oct 14, 2015
Messages
133
Trophies
0
Location
Userland
XP
206
Country
United States
I finally figured out how to get loader injection working. Here's how you can use my loader on most CFWs:
  • Open up your firmware.bin in a hex editor. If the first four symbols aren't "FIRM" then your firmware.bin is encrypted. Can't help you there. Maybe switch to aureinand or some other cfw that uses decrypted firms.
  • Find the string "loader" and back up 0x200 bytes (on n3DS firms you should end up at 0x26600, on o3DS 0x26400).
  • Open up the attached build of injector.cxi in a hex editor.
  • Copy and overwrite all the contents of injector.cxi into the firmware.bin at the address you found (ctrl+b is paste write on HxD if you use that).
  • Save your firmware.bin.
 

Attachments

  • injector.zip
    198.6 KB · Views: 149

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • BigOnYa @ BigOnYa:
    So does that mean your date was not good? It burns now?
    +2
  • K3Nv2 @ K3Nv2:
    Got two new stds in one night
    +1
  • BigOnYa @ BigOnYa:
    Giggity
    +1
  • The Catboy @ The Catboy:
    I don't bite! Minus the times when I did bite
  • The Catboy @ The Catboy:
    Like 5 minutes ago
  • K3Nv2 @ K3Nv2:
    Billie needs her lunch
  • K3Nv2 @ K3Nv2:
    Ffs papa brought back the cheeseburger pizza it's like the only decent pie they had since the 80s
  • BigOnYa @ BigOnYa:
    I'm not a fan of papa johns, but that does sound good. We hardly order out pizza, I like making my own, but when we do its donatoes
  • K3Nv2 @ K3Nv2:
    I get them like once every two months anymore
  • K3Nv2 @ K3Nv2:
    Just because it's half a mile from where I live
  • BigOnYa @ BigOnYa:
    Request next time you order, that Shaq deliver it to you
  • K3Nv2 @ K3Nv2:
    I want him to buy me a chain also
  • K3Nv2 @ K3Nv2:
    Open it right next to the one we have
    +1
  • BakerMan @ BakerMan:
    guys should i make a new thread and just count the amount of posts until kyle, luke or leo joins the thread for fun?
  • BakerMan @ BakerMan:
    kyle's fine, just waiting for that wario joke

    luke and leo though, they yap until the thread's enjoyability is about halved
  • K3Nv2 @ K3Nv2:
    Leo is Luke's alterego when he gets hard
  • BigOnYa @ BigOnYa:
    Luke is gone, he got banned. And I'm surprised Leo hasn't yet
  • K3Nv2 @ K3Nv2:
    Subway was actually pretty decent tonight
  • BigOnYa @ BigOnYa:
    Wut you get, a seafood and psi salad sub
  • K3Nv2 @ K3Nv2:
    Psi had my footlong meatball special
    +1
  • PandaPandel @ PandaPandel:
    i want a meatball sandwich
    now
  • K3Nv2 @ K3Nv2:
    Gay
  • BigOnYa @ BigOnYa:
    Bout time you came out and admitted it
    +1
  • K3Nv2 @ K3Nv2:
    Bigonya talks to himself often
    +1
  • btei @ btei:
    papa johns makes me SHIT
    btei @ btei: papa johns makes me SHIT