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
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 using Dolphin debug 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.http://www.mediafire.com/download/vtjobu85187fipj/MenSelchrFaceA_TopN__0.pat0
105 moveset CSS (still requires more research to work though):
Minor Brawlex improvement!Alternate Stage/.rel Loader (vBrawl compatible)
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.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 0x1109C while the corresponding hook routine is at section 0x0. There's also a directory string at section 0xE40 that you'll need to copy and/or change depending on where you want to load from.
Best of luck.
(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:
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
Brawl WIT-modified file size limit? (Needs more testing)
has the ability to increase the size of an .iso. There may be a limit to this however somewhere between 9,548,640 and 9,603,872 KB (I'm on Windows so 1KB=1024 Bytes). Once the limit is passed, Dolphin fails to open common*.pac or boot.pac for unknown reasons.
Additionally, the limit of a .wbfs file compiled by WIT (for USB loading) appears to be lower than that. WIT will fail to compile the .wbfs and complain about the WBFS limit. It'd be helpful if the WBFS limit was defined somewhere...
Practical application: Every character will need a .pac and .pcs file for P:M All-star mode as they are now treated as transforming characters. At 100 movesets with almost 15 costumes each, having the .pac and .pcs files for every costume isn't feasible without SDHC support (which Dolphin lacks). I was hoping to transfer my entire fighter folder to my .iso but it appears to be too large (custom music also takes up a lot of .iso space and my dummy files have been deleted).
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).Dolphin emulator will begin throwing read errors if the virtual SD card contains more than ~1.95 GB of data
"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":
How to move the "Ready to Fight" bar offscreenPyotrluzhin's Lab
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)!
Donkey Kong: http://www.smashcustommusic.com/24018
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.