Home Gallery Resources The Team Rules chat Login Register
  Show Topics
Pages: [1]
1  Super Smash Bros. Brawl Hacking / General Hacking Discussion / Brawl mods on Android on: January 12, 2018, 11:18:12 AM

It works! Gameplay is somewhat slow but we're getting close. There's also some obvious but possibly complicated changes that can allow better performance. I'm using a Samsung Galaxy Note8 but keep in mind that a lot of older phones can't even run Dolphin Emulator. My setup is loaded through Minima Launcher (Hook Fix) and combined with a virtual SDHC card. Gecko OS can also be used. I average ~37 FPS with Minima Launcher and Gecko OS.

Setting up a Dolphin environment for Android is similar to PC but some important settings haven't been implemented in the UI yet. If you get stuck on setup issues or driver bugs, https://forums.dolphin-emu.org/ is the best place to ask Dolphin-related questions. Thanks to the other Dolphin devs for making most of this possible!
Note: They did most of the coding, not me.

Here is some non-intuitive information if you do decide to go for this. This project is under active development so these things may change:

1. The following issues involve missing Android UI options that should be manually set in the INIs:

2. Android: Add "Install WAD" to UI: IOS 36 needs to be installed for Gecko OS to work. IOS 21 is needed for masterpiece demo games to work when not booting from the game list. The "Install WAD" feature is needed for this but it is not implemented in the Android UI yet. I worked around this by moving the dolphin-emu folder to my computer, installing IOS via Dolphin on Windows, and moving it back.

3. Android: Ubershaders appear to be completely recompiled every time: I personally don't want to use Android Ubershaders until this is fixed.

4. Minima Launcher and Gecko OS no longer require workarounds. Project M Launcher is the only launcher that can load masterpiece demo games but it suffers from Project M Launcher can't use DSP HLE Emulation (average FPS ~30)

Helpful information from JosJuice regarding applying a launcher workaround without changing global settings:
The file 00000000.ini should get applied to all DOLs and ELFs and also the GameCube IPL (if you're choosing to boot into the IPL itself rather than booting to a game when the Skip IPL setting is disabled). It isn't possible to be more specific than that.
2  Help & Tutorials / Help / Enemy SFX Fade Fix function on: January 07, 2017, 03:03:05 PM
Can somebody tell me what this code does? I've seen it pop up in a few places but I'm not sure when it is useful.

Enemy SFX Fade Fix [ds22]
* C21C7574 00000004
* 2C1A2431 41800010
* 2C1A26F8 41810008
* 38000005 901F0000
* 60000000 00000000
3  Help & Tutorials / Help / Process for adding an external .brstm reference does not work or is unclear on: October 21, 2016, 12:38:20 AM
The lack of documentation on the process for adding an external .brstm reference for smashbros_sound.brsar indicates that the feature is still WIP or I'm misunderstanding something.

GitHub issue: https://github.com/libertyernie/brawltools/issues/84
"I added a new external reference to my .brsar file. There appears to be a few problems with this process.
1. I cannot choose an external file path outside of the folder that my .brsar is in.
2. Adding a valid path to a .brstm does not change the InfoHeaderOffset
3. The last bgm folder in the .brsar is for Z58.brstm. I tried adding Z59 and adding a new sound for my new external reference. The InfoIndex remains at 0.

Since there is a lack of documentation on adding external references, I'm assuming that this process is still a WIP. I'm logging this issue in case I'm missing something that a Brawlbox notification could help clarify."

Please let me know if you can shed any light on this issue. Thanks!
4  Help & Tutorials / General Tutorials / Brawlex Advancements (Supplement to the Brawlex thread's original post) on: August 03, 2016, 12:31:21 AM
This thread contains information that requires a thorough understanding of how Brawlex works. If you are new to Brawlex, start with the information in the first post of the Brawlex thread (http://forums.kc-mm.com/index.php?topic=65113.0).

The idea of this thread is to add information that was not covered in the Brawlex thread's first post. This important information can get lost among the questions. I've started by adding my own information but others are welcome to add their findings too. Please don't post requests for a tutorial here. Please limit posts to new (well tested) information or questions/clarifications about the information that has been posted on this thread. Ctrl+F will be your friend here!

Also, PmEx (Project M + Brawlex) has some different specifications than Brawlex although they share many similarities. Please look here for PmEx information: http://forums.kc-mm.com/index.php?topic=74722.0

4GB (or larger) virtual SD for Dolphin usage

15 Costumes per moveset:
I managed to get 15 costumes working for every character!

Note: * is a wildcard character and refers to the Internal Name of a character assigned in Fighter##.dat

Brawlex supports Fit*00-11, Fit*Dark, and Fit*Spy for a total of 14 costumes per moveset. It also supports Fit*Fake but somehow the path for that file became corrupted (except for Bowser). It turns out that Brawlex was looking for the wrong file in the corrupted path so the solution only requires some creative renaming.

To use the corrupted Fit*Fake path you'll need to rename the Fit*.pcs you want to add to FitKirbyFighter65Ex.pac, where Fighter65Ex is the Internal Name assigned to Fighter65.dat (use Fighter65Ex if Fighter65.dat does not exist). The extension change is also important, Brawlex wants to load a .pcs named .pac.

Place your properly named FitKirbyFighter65Ex.pac in ...\pf\fighter\*\Fit*Fakekirby

Transforming characters (Pokemon Trainer, Samus/ZSS, Zelda/Sheik, Wario/Wario-Man) require an additional step. Although the game initially loads Fit*Fake from a corrupted pathway (except Bowser), if a character transforms it will load Fit*Fake from the proper pathway. Transforming characters should have files in both the corrupted and expected locations to utilize Fit*Fake.

An example, if the Internal Name of my Fighter65.dat is "Vaati" and I want to use the corrupted Fit*Fake pathway for the Zelda moveset, I would rename FitZelda00.pcs to FitKirbyVaati.pac and place it in ...pf\fighter\zelda\FitZeldaFakekirby
Since Zelda is a transforming character, I would also place FitZeldaFake.pcs and FitZeldaFake.pac in ...\pf\fighter\zelda and repeat the process for Sheik.

Use costume ID 0D to call the Fit*Fake slot in CSSSlot##.dat. Don't forget that some characters will require Fit*Entry## files to be used! I highly recommend looking at Dolphin logs to see what happens if you have a freeze.

Tested with multiple characters on both Dolphin and a real Wii. No regressions found so far!

20 Costume slots per moveset MenSelchrFaceA_TopN__0.pat0 (adapt the rest of Brawlex's config files to this layout) Note, we can't use all 20 of these slots yet though:
I'm was a little hesitant to answer Nebulon's question because I know someone will eventually try the "20 CSPs for all Brawlex characters" setup and waste hours improperly renaming files.

For my peace of mind, I'm going to post my working MenSelchrFaceA_TopN__0.pat0. It can be used in troubleshooting or a base for setting up Brawlex.

If you download this file, do note that you can deviate from what I chose. You will also end up renaming/editing A TON (POSSIBLY THOUSANDS) of files depending on how many characters you have.

105 moveset CSS (still requires more research to work though):
Minor Brawlex improvement!

My pack is not publicly released since there would be too many people to credit and it contains experimental features

Brawlex can now hold up to 105 slots in the CSS! (Previously 100)
New Limitation if this is used:
Using this modification without unlocking all characters in Brawl will likely cause a crash.

Unfortunately CSSRoster.dat seems hardcoded to only accept 100 slots. Brawlex ignored the added slots after adding them via a hex editor. Well at least this covers the CSS portion of getting to 105 slots. Here are the files (use the two included files to replace the ones in sc_selcharacter.pac -> MiscData30): http://www.mediafire.com/download/aa2twu2d78eajh2/CSS+105+slots.rar

My next idea is to isolate and remove the CSSRoster.dat dependency from BX CSS Expansion v2.0.0.x's sora_menu_sel_char.rel so the custom random and custom css codes can be used once again with Brawlex for loading more than 100 CSS slots. This is not going well however.

At least PhantomWings told us what changes were made for alt CSP loading in BX CSS Expansion v2.0.0.x. PhantomWing's posts are helpful for learning how to edit modules.
The external CSP loader more or less stands as it's own unit inside sora_menu_sel_char.rel (Common3's MiscData[13].rel file). The only reason it's paired up with the CSS Roster Expansion is that their hook points both happen to be in there.

I'm pretty booked for this coming weekend and the next, so I don't think I'll be able to help you any time soon, but if you'd like to look into it yourself, you can take a look at the module in Resources\Common3 of the 2.0.0.x package and try to extract the changes yourself. There are 3 things that you'll need to copy out from the module into a vanilla sora_menu_sel_char.rel module. The hook is at section[1] 0x1109C while the corresponding hook routine is at section[7] 0x0. There's also a directory string at section[5] 0xE40 that you'll need to copy and/or change depending on where you want to load from.

Best of luck.

Alternate Stage/.rel Loader (vBrawl compatible) (ASRL, virtually unlimited stages with almost any module file)
A few notes for anyone who tries to use ASRL with Brawlex:
1. The layout of the custom SSS code that accompanies the new ASRL is slightly messed up but well documented. You can use your old custom SSS code and just replace the new STGCUSTOM26-28 if you want too. Switching the association of STGCUSTOM26-28's stage cosmetics with their replaced stage is easier than making whole new stage cosmetics (and PAT0 entries...).
2. Big Blue is missing from the ASRL setup but it works fine if you add it. (Unlike Castle Siege and Lylat Cruise)
3. The DATA section of "ASRL - Stages" and "ASRL - Modules" codes are identical (except Flat Zone 2, which uses 0x47570E50 for "ASRL - Stages" and 0x47570E52 for "ASRL - Modules" (credit to secretchaos1)). The ASL tool edits the "ASRL - Stages" code so you can just copy over the changes for the "ASRL - Modules" code, with the exception of Flat Zone 2.
4. The old Custom Sound Engine is incompatible with the new ASRL. The new Custom sound engine must be used. Keep in mind that it loads files from a different location and has slightly different acceptable filename ranges.
5. The Tracklist Modifier code is compatible with STGCUSTOM26-28 too (don't forget about the byte count!)

Best resolution images in BX CSS Expansion v2.0.0.x's cs_tex###.brres:
Quote from: Ebola16
cs_tex###.brres's size limit is 250 KB. Since we now can use up to 15 costumes for each moveset, we can exceed this size limit.
To prevent this, at 128*160 pixel CSP's, you can have one of the following:
12 CI8 encoded images @248-250KB
11 CI8 and 2 CMPR encoded images @248-250KB
10 CI8 and 4 CMPR encoded images @248-250KB
9 CI8 and 6 CMPR encoded images @247-250KB
Also, this link is useful for creating shared pallets to reduce texture sizes if applicable: Shared CSP data - near CI8 quality, sub-CMPR size

Brawlex .rel conflict glitch:
Try to avoid having a player select an original brawl character for one match and then select a clone based on that character for the next match as this can cause instability (backing out of the CSS after every match can avoid this problem but the crash is infrequent enough for me that I don't think it's worth it). Probably the cause of SSBB Alloc Buffer failed. Some of the codes on JOJI's website may help with this problem.

CSS Expansion, homerun, multiman Wifi fix:
Another update for CSS Expansion stuff; Same process as before, just replace the sora_menu_sel_char or miscData[13] in common3 with this and you will be able to use homerun contest and multiman brawl with CSS Expansion in Wiimmfii


ds22's Code Showcase

"Elevated config" definition:
I believe Elevated config refers to setting "0x0C Edit Flags" in the config files to 0x01. This allows the game to read "Not set unless specified in Edit Flags" values. I use them for making Brawlex Boss slots usable. They also seem to be necessary for transforming Brawlex characters, though I have not set one up myself. Although pikazz has: http://forums.kc-mm.com/index.php?topic=66478.0

GLITCH Brawlex Record ID:
I noticed a problem with the way BrawlEx handles single player records (Break the Targets, Multiman, etc.) It's character specific, and I can't seem to find a work around.

The issue is that playing as certain characters saves their records over other characters. For instance, King Dedede's records save as Pokemon Trainer, and Wolf saves as Toon Link. Others, like Mario and Link, save perfectly fine.

I've experimented a lot and found out that it has to be the BrawlEx Common2.pac file. I tried to set up the configs for characters to redirect the save slot, but it didn't have an effect. No codes are impacting this either. I've tried to look through Common2 but I wasn't able to determine what was causing this issue.

I contact Ebola16 about this, and he came to the same conclusion as me, that it must be either Common2 (specifically the sora_melee.rel) or the main BrawlEx .rel file (bx_fighter.rel).

GLITCH Kirby Spy costume crashes
Using Kirby's Spy costume slot outside of Clear brawl can cause crashes relating to the copy ability, even if it is replaced with another model. Dark and Fake costumes do not have this problem.

After a few matches (2-4) in a row where Spy costume Kirby copies an ability, there is a high chance that Brawl will freeze when trying to start the next match with Kirby. Dolphin logs indicate the crash occurs shortly after beginning to create Kirby's fighter instance.

GLITCH WORKAROUND "Using the BX CSS Roster Expansion will prevent Final Smash music for Luigi, Peach, and Dedede from playing":
We finally have a workaround for the "Using the BX CSS Roster Expansion will prevent Final Smash music for Luigi, Peach, and Dedede from playing" glitch although it's not ideal.

Final smash music is stored as seq instead of the normal strm type in smashbros_sound.brsar. Brawlex's CSS Roster Expansion allows other seq files to play properly (like the Starman music) but not final smash music. Diddy Kong made the enable SEQ hacking - SEQ music bypass hack which solves this problem. It is possible to change the seq references to a strm file in smashbros_sound.brsar with Brawlbox and a little hex editing. He also wrote a nice guide for making these kind of changes: http://smashboards.com/threads/how-to-change-the-item-jingles-in-brawl-not-that-this-community-gives-a.349060/

Conveniently, Smash Custom Music already has the final smash brstms (although you now have the ability to chose whatever .brstm you want)!
Dedede: http://www.smashcustommusic.com/24019
Peach: http://www.smashcustommusic.com/24017
Donkey Kong: http://www.smashcustommusic.com/24018
Luigi: http://www.smashcustommusic.com/24016

Some important things I want to emphasize:
1. You'll need to replace your .iso's smashbros_sound.brsar with an edited one (preferred), use File Patch Code 4.1 or above (possibly unstable), or use Riivolution.
2. Replacing the final smash brstm files with ones already in Brawl will use up some of your space for music.
3. I had one PSA (Flame Orbitar Pit) play Donkey Kong's Final Smash music after making this edit so I changed the PSA to fix the inappropriate sound.

See the SEQ music bypass hack information on the Brawl Vault download page for more benefits and drawbacks. You can manually edit the .brsar if you want to do things differently than Diddy Kong.

Note: Probably incompatible with SoundBank Expansion System (RSBE.Ver) [JOJI]

How to move the "Ready to Fight" bar offscreen

JOJI's SSBB HACK website (Japanese language, English translation is WIP)
I'm fairly confident that SoundBank Expansion System (RSBE.Ver) [JOJI] depends on smashbros_sound.brsar to be at a certain offset on Brawl's ISO.  The code won't work for people who recompile their ISO with WIT from an extracted filesystem or use working around Brawlex's Final Smash Music glitch.

Speaking of JOJI's code, there's a bit of a game-breaking flaw with it. If you use an Expansion SFX ID for a Fighter's Blast Zone KO cries, the game will crash upon being Kirbycided/Dededecided.

Codes (no KC-MM nor SmashBoards profile) has came up with a fix for said issue, but due to JOJI's policy on wanting permission to distribute codes, Codes has sent him a PM with the fix. Though so far, there's been no reply from JOJI.

Pyotrluzhin's Lab

Tracklist Modifier
The Tracklist Modifier v1.0 code causes Brawlex mods to freeze if a player backs out to the start screen and then pushes start again due to "Can't Alloc Heap Buffer." Use Song Forcer Codes or Tracklist Modifer [standardtoaster] instead.

Wiimms ISO Tools (WIT) modified ISO file size limit
WIT has the ability to increase the size of an .iso. There is a limitation to this however. As explaind by Wiimms on gbatemp:

"There is at least one limit:
The H3 checksum area is limited (always constant 0x18000 (=98304) bytes). So it can hold 4915 checksums. This limits a partition to 9.,5 GiB.
I never tested, if a larger H3 is possible.

details (I wrote it in german): https://wiiki.wii-homebrew.com/Wii-Image#Verschl.C3.BCsselung_und_Pr.C3.BCfsummen "
5  Help & Tutorials / Help / [Solved] Roy Project M 3.6 final smash for vBrawl on: July 24, 2016, 09:52:23 AM
I know there's a lot of Roy movesets available but do any of them have Roy's Project M 3.6 final smash for a vBrawl compatible moveset?

Edit: Found it http://forums.kc-mm.com/Gallery/BrawlView.php?Number=210282
6  Help & Tutorials / Help / [Solved] Convert this Cinema 4D file into an .obj? on: June 24, 2016, 03:28:23 PM
Can someone convert this Cinema 4D file into an .obj?



jerm of cgsociety did this for me. He rocks.

I turned this into a Brawlbox issue: https://github.com/libertyernie/brawltools/issues/63
7  Help & Tutorials / Help / Do you have Neji Hyuga (deleted hack)? on: April 10, 2016, 07:09:46 AM
Does anyone still have Neji Hyuga (pre-shippuden)? The original has been deleted. I wanted to see if I could make the import not require an edited fitmotion and I don't feel like importing him from scratch.

8  Help & Tutorials / Help / Do you have Komachi over Sheik (deleted hack?) on: February 21, 2016, 04:56:15 PM
Does anyone still have Komachi over Sheik? The original has been deleted. http://forums.kc-mm.com/Gallery/BrawlView.php?Number=30397

The images are also gone so here is an image of the character
9  Super Smash Bros. Brawl Hacking / General Hacking Discussion / Do you have Titanoverlord (Deleted Hack)? on: January 25, 2016, 05:05:00 AM
Do you have Titanoverlord (Deleted Hack)? http://forums.kc-mm.com/Gallery/BrawlView.php?Number=24160
10  Help & Tutorials / General Tutorials / Virtual SDHC card (4-32GiB in size) for Dolphin usage on: July 22, 2015, 02:09:30 PM
This will only work with Dolphin 5.0-5044 or later for SDHC support. Don't forget to use the SDHC Extension 1.1 code when using SDHC.

After looking at mksdcard documentation (http://developer.android.com/tools/help/mksdcard.html), I realized a virtual SD card of any size can be created. I modified ifrit05's "Dolphin SDCard Maker v1.0.bat" to include a 4GB option for more room. My modification can be downloaded here (for Windows, extract before using): http://www.mediafire.com/download/713qu5m08tf8av9/mksdcard+menu.rar

To use:
1. Run "Dolphin SDCard Maker v1.0.bat"
2. Press the appropriate number to generate a virtual SD (SD.raw) of the specified size.
3. Once mksdcard finishes, a SD.raw file will be generated. Place it in Dolphin's SD Card Path, which is the "Wii" folder in your Dolphin Emulator setup by default.

To change a SD.raw filesize option to something other than the given choices:
1. Right-click "Dolphin SDCard Maker v1.0.bat"
2. Select "Edit"
3. Find "start mksdcard.exe -l SDCard XM sd.raw" where "X" could be any filesize in megabytes.
4. Replace X with the size that you want
5. Run "Dolphin SDCard Maker v1.0.bat" and select the option you edited

1. Make sure "Insert SD Card" is checked in Dolphin Config options "Wii" Tab.
2. Using a 4GB SD.raw caused a brief "Receiving Vault Data" message to pop up before Brawl's intro video started. Interestingly, this message does not pop up if my SD.raw size is 2 or 3GB. I filed a report for this issue here: 4GB or larger SD cards cause "Receiving Vault Data..." message to display before title screen in SSBB
3. Use a program such as WinImage to add files to SD.raw
11  Help & Tutorials / General Tutorials / How to move the "Ready to Fight" bar offscreen on: January 02, 2015, 04:58:14 PM
I recently figured out how to get rid of the "Ready to Fight" bar. Editing the bones of the bar did not seem to work since its animation would return it to the original position. Editing the animation will get the job done. The file I provide below moves the bar 200 units in the Y direction, but any direction will do as long as it's a large enough translation.

1. Open sc_selcharacter.pac in BrawlBox
2. Expand MiscData [30]
3. Expand AnmChr(NW4R)
4. Download this: http://www.mediafire.com/download/zxaoqy20pzwxdgp/MenSelchrReady_TopN__X.chr0
(The Y Translations are set to 200 for each keyframe)
5. Right click MenSelchrReady_TopN__0, select replace, and replace it with the downloaded file
6. Repeat step 5 for MenSelchrReady_TopN__1, MenSelchrReady_TopN__2, and MenSelchrReady_TopN__3
7. Save

Goodbye "Ready to Fight" bar that blocks the bottom row of Brawlex!
Pages: [1]