PyotrLuzhin's Lab

PyotrLuzhin

Smash Journeyman
Joined
Jul 1, 2014
Messages
470
Location
Altair's Lair
#1
This is the place where I'll post codes that don't fit into any particular category. Enjoy!

Character Codes:
BrawlEX Hold Shield Rewrite [PyotrLuzhin, ds22]

046847BC 60000000
046847C0 48000008
4A000000 90000000
1619C600 00000028
00010203 04050607
08090A0B 0C0D0E0F
37111213 14311617
18191A1B 1C1D1E1F
20212223 24252627

E0000000 80008000
C268482C 00000006
39800000 3C809019
6084C600 2C0C0028
4182001C 7C0CE800
41820010 398C0001
38840001 4BFFFFE8
8BA40000 00000000
C2685BE4 00000007
39800000 3C809019
6084C600 88640000
2C0C0028 4182001C
7C032800 41820010
398C0001 38840001
4BFFFFE4 7D856378
90A1003C 00000000

Green: CSS Slots
The CSS slots in the code are stored in byte pairs, ranging from 0x00 (mario) to 0x27 (Sonic). The first row reads 00 01 02 03, which translates to Mario, Link, Donkey Kong, and Samus. If you wanted to put a BrawlEX clone (let's say 3F) over Mario, for example, you'd replace the green 00 in the code with 0x3F.

Stage-Related Codes:
STAGE IDS:
Page 1
13=lylat
33=hyrule castle
05=metal cavern
06=bowser's castle
14=silph co.
2F=Peach's castle
17=infinite glacier
19=castle siege
1C=Wario Land
1F=FoD
02=Final Destination
0D=Yoshi's Island
1D=Distant Planet
0B=Norfair
2A=Yoshi's Story
23=GHZ
21=Smashville
01=Battlefield
2E=Pokemon Stadium
03=Delfino's Secret
2D=Dreamland

Page 2
22=Shadow Moses
07=Kongo Jungle
20=New Pork City
2C=Onett
31=Big Blue
16=Port Town Aero Dive
18=Game and Watch
04=Luigi's Mansion
2B=Jungle Japes
30=Corneria
32=Brinstar
29=Temple
09=Pirate Ship
15=Spear Pillar
37=Training Room
08=Rumble Falls
0E=Halberd
0C=Frigate Orhpeon
1E=Skyworld
25=Hanenbow
24=Pictochat
Fixed Song Forcer for PMEX (with CSE Support) [PyotrLuzhin, wiiztec]
C210F9FC 00000006
3D808058 A18C58BA
5400801E 5400843E
2C1B00XX 40820014
2C0CYYYY 4082000C
38000000 6000ZZZZ
901D0000 00000000

XX = Stage ID
YYYY=Button Combo (http://gamehacking.org/faqs/Jokerwii.htm)
ZZZZ=Song ID

2D Characters on Other Stages V1.2 [PyotrLuzhin]
C26CF6F4 0000000D
92020018 9222001C
92420020 3A000002
3E20901C 3A314720
8A510000 7C009000
40A20018 3C6080B8
C01D0008 80634EA8
D0030008 48000020
2C1200CC 41820018
3A10FFFF 2C100000
4182000C 3A310001
4BFFFFC8 82020018
8222001C 82420020
60000000 00000000
046CF6F8 4800001C

2D Characters on Other Stages V1.2 Data [PyotrLuzhin]
4A000000 90000000
161C4720 0000000Y
ZZZZZZZZ ZZZZZZZZ
ZZZZZZZZ 00000000


Y=Number of stages (in hex)
ZZ=Stage IDs (Byte Pairs)

Cosmetic Codes:
Hold Z for Dark Characters v2 (Emerald Spectrum) [PyotrLuzhin]
C268478C 00000013
91220018 9142001C
7C7D1B78 801801B4
2C000000 41820060
801801DC 2C000000
41800054 2C0000F0
4182004C 39200001
3C60805A A143003A
7D290030 7D2A5039
40820034 80630040
540A3032 7C635214
8803027C 80630244
7C000775 40820018
38000010 7C600039
4182000C 38600001
48000008 38600000
3DE00004 61EF3AD8
7C6FA12E 81220018
8142001C 7FA3EB78
60000000 00000000
4A000000 90180F20
300436F8 00000001
1000009D 0000000C
100000B3 00000008
100000B2 00000001
E0000000 80008000
4A000000 90180F7C
300436F8 00000001
1000009D 0000000C
100000B3 00000008
100000B2 00000001
E0000000 80008000
4A000000 90180FD8
300436F8 00000001
1000009D 0000000C
100000B3 00000008
100000B2 00000001
E0000000 80008000
4A000000 90181034
300436F8 00000001
1000009D 0000000C
100000B3 00000008
100000B2 00000001
E0000000 80008000

Hold Z for Dark Characters v2 (No Emerald Spectrum) [PyotrLuzhin]
C268478C 00000013
91220018 9142001C
7C7D1B78 801801B4
2C000000 41820060
801801DC 2C000000
41800054 2C0000F0
4182004C 39200001
3C60805A A143003A
7D290030 7D2A5039
40820034 80630040
540A3032 7C635214
8803027C 80630244
7C000775 40820018
38000010 7C600039
4182000C 38600001
48000008 38600000
3DE00004 61EF3AD8
7C6FA12E 81220018
8142001C 7FA3EB78
60000000 00000000
4A000000 90180F20
300436F8 00000001
1000009D 0000000C
E0000000 80008000
4A000000 90180F7C
300436F8 00000001
1000009D 0000000C
E0000000 80008000
4A000000 90180FD8
300436F8 00000001
1000009D 0000000C
E0000000 80008000
4A000000 90181034
300436F8 00000001
1000009D 0000000C
E0000000 80008000
*UNTESTED

Item Codes:
Assist Trophies Use Normal Item Limit [PyotrLuzhin]
049b0a60 60000000
*Note: this code currently spawns multiple assist trophies, but every assist trophy after the first one will summon the same character.
 
Last edited:

PyotrLuzhin

Smash Journeyman
Joined
Jul 1, 2014
Messages
470
Location
Altair's Lair
#6
i would love a press blank for a alternate character like what the pmdt did for wario man or giga bowser
i would do press Z for big boss snake instead of regular snake
i've rewritten the code to be easier to work with, and I plan to release it soon.

Oh... em... gee... Is there a version of the Alt Stage Song Forcer code that can be used on a per track/alt basis?
It looks like I'll have to rewrite Oshtoby's original code, but it's on the list of things to do.
 
Joined
Jan 4, 2013
Messages
1,138
Location
Kentucky
#7
i've rewritten the code to be easier to work with, and I plan to release it soon.


It looks like I'll have to rewrite Oshtoby's original code, but it's on the list of things to do.
I was referring to Wiiztec's code, the version that allows you to have multiple songs for multiple alts. I'm pretty sure Oshtoby's code works with CSE. At least from what I've tested. This is the best thing though! I don't have to do all the crazy stuff that I was going to do initially since it didn't work. Actually... (bee are bee)
 

blerb

Smash Journeyman
Joined
May 12, 2006
Messages
365
Location
Nowhere, Ontario
#10
CSE is a code Dant developed a few years back that allows for unique sound files instead of replacing existing ones. It's a bit buggy iirc tho. Google "Dantarion custom sound engine" and you should be able to find it + guides

That aside, I hope you decide to work on expanding the available costume slots. ASF1nk mentioned previously that 16 slots would be possible, but as we have seen, that's yet to be the case

Thanks for keeping Brawl modding alive!
 
Joined
Jan 4, 2013
Messages
1,138
Location
Kentucky
#11
Can someone tell me what CSE is?
CSE is a code Dant developed a few years back that allows for unique sound files instead of replacing existing ones. It's a bit buggy iirc tho. Google "Dantarion custom sound engine" and you should be able to find it + guides

That aside, I hope you decide to work on expanding the available costume slots. ASF1nk mentioned previously that 16 slots would be possible, but as we have seen, that's yet to be the case

Thanks for keeping Brawl modding alive!
Don't use that one. Use the one Pyotr made recently heheh It's here:
http://smashboards.com/threads/custom-sound-engine-v3-0-currently-in-public-testing-phase.431467/

The alt song forcer code in the OP works with this version of CSE.
 

PyotrLuzhin

Smash Journeyman
Joined
Jul 1, 2014
Messages
470
Location
Altair's Lair
#12
CSE is a code Dant developed a few years back that allows for unique sound files instead of replacing existing ones. It's a bit buggy iirc tho. Google "Dantarion custom sound engine" and you should be able to find it + guides

That aside, I hope you decide to work on expanding the available costume slots. ASF1nk mentioned previously that 16 slots would be possible, but as we have seen, that's yet to be the case

Thanks for keeping Brawl modding alive!
i recently rewrote several parts of CSE, so you might want to check out Amazerommu's link right above me. As for your suggestion, I might be able to enable even more than 16, but you'd have to reorganize sc_selcharacter.pac pretty extensively. Alternatively, you could just give your chars new cosmetic IDs, which wouldn't be too hard either.

and you're welcome haha! This is only the tip of the iceberg.
 
Last edited:
Joined
Jan 4, 2013
Messages
1,138
Location
Kentucky
#14
i recently rewrote several parts of CSE, so you might want to check out Amazerommu's link right above me. As for your suggestion, I might be able to enable even more than 16, but you'd have to reorganize sc_selcharacter.pac pretty extensively. Alternatively, you could just give your chars new cosmetic IDs, which wouldn't be too hard either.

and you're welcome haha! This is only the tip of the iceberg.
Does this possibly mean.... there could be fully working alt voices down the road??
 

wiiztec

Smash Journeyman
Joined
Dec 19, 2007
Messages
382
Location
Attleboro, MA
NNID
wiiztec
#17
Fixed Song Forcer for PMEX (with CSE Support) [PyotrLuzhin, wiiztec]
C210F9FC 00000006
3D808058 A18C58BA
5400801E 5400843E
2C1B00XX 40820014
2C0CYYYY 4082000C
38000000 6000ZZZZ
901D0000 00000000

XX = Stage ID
YYYY=Button Combo (http://gamehacking.org/faqs/Jokerwii.htm)
ZZZZ=Song ID
Is the only difference ori instead of li at the end? looks like people should be able to use my guide to customize it
 

C.YI

Smash Rookie
Joined
Jan 1, 2016
Messages
15
#22
I'm having trouble utilizing the Fixed Song Forcer code. From what I understand, this code would let me load an alternate song on a stage if I press a certain button combination.

This is the code I have written:
C210F9FC 00000006
3D808058 A18C58BA
5400801E 5400843E
2C1B0062 40820014
2C0C0140 4082000C
38000000 6000C002
901D0000 00000000

62 refers to custom stage 23.
0140 refers to A+L combination for gamecube controller.
C002 refers to the .brstm I am using which is named as 0000C002.brstm.

I am using this along with the Custom Sound Engine v3.0 and have confirmed that this code is working. However, the alternate songs do not play when I press the button combination for the stage. The default song continues to play. I am currently using Oshtoby's stage dependent song loader for the default track only if that makes a difference.

I am having trouble understanding why the alternate song isn't playing. Any help would be appreciated.
 
Joined
Jan 4, 2013
Messages
1,138
Location
Kentucky
#25
I'm having trouble utilizing the Fixed Song Forcer code. From what I understand, this code would let me load an alternate song on a stage if I press a certain button combination.

This is the code I have written:
C210F9FC 00000006
3D808058 A18C58BA
5400801E 5400843E
2C1B0062 40820014
2C0C0140 4082000C
38000000 6000C002
901D0000 00000000

62 refers to custom stage 23.
0140 refers to A+L combination for gamecube controller.
C002 refers to the .brstm I am using which is named as 0000C002.brstm.

I am using this along with the Custom Sound Engine v3.0 and have confirmed that this code is working. However, the alternate songs do not play when I press the button combination for the stage. The default song continues to play. I am currently using Oshtoby's stage dependent song loader for the default track only if that makes a difference.

I am having trouble understanding why the alternate song isn't playing. Any help would be appreciated.
Wait... that is right. Hmmmmmmmmmmmmm. Oh I think it might actually have to do with Oshtoby's code that you're using.
 
Last edited:

C.YI

Smash Rookie
Joined
Jan 1, 2016
Messages
15
#26
Wait... that is right. Hmmmmmmmmmmmmm. Oh I think it might actually have to do with Oshtoby's code that you're using.
Hmm I should've mentioned that at one point, I removed Oshtoby's code for this specific stage. Instead, I used the Fixed Song Forcer code to attempt to load the default track by indicating 0100 in the code. Unfortunately, even the default track failed to load as a result.

Should I attempt to remove Oshtoby's code for all of my stages?

Edit: I removed almost all of my codes to see if there were any that were conflicting with the Song Forcer code. The alternate songs would still not play. I am using Dolphin if that makes a difference.
 
Last edited:

wiiztec

Smash Journeyman
Joined
Dec 19, 2007
Messages
382
Location
Attleboro, MA
NNID
wiiztec
#27
I'm having trouble utilizing the Fixed Song Forcer code. From what I understand, this code would let me load an alternate song on a stage if I press a certain button combination.

This is the code I have written:
C210F9FC 00000006
3D808058 A18C58BA
5400801E 5400843E
2C1B0062 40820014
2C0C0140 4082000C
38000000 6000C002
901D0000 00000000

62 refers to custom stage 23.
0140 refers to A+L combination for gamecube controller.
C002 refers to the .brstm I am using which is named as 0000C002.brstm.

I am using this along with the Custom Sound Engine v3.0 and have confirmed that this code is working. However, the alternate songs do not play when I press the button combination for the stage. The default song continues to play. I am currently using Oshtoby's stage dependent song loader for the default track only if that makes a difference.

I am having trouble understanding why the alternate song isn't playing. Any help would be appreciated.
Song ID is not the same as the filename
 

PyotrLuzhin

Smash Journeyman
Joined
Jul 1, 2014
Messages
470
Location
Altair's Lair
#31
New code alert!

Hitboxes are Enabled in Training Mode (PM Debug Mode Required) [PyotrLuzhin]
C294B4E4 00000007
90620000 90A20004
3C608058 60633FFC
2C040005 3CA00001
41820008 38A00000
90A30000 80620000
80A20004 90830054
60000000 00000000

If you want training mode to start in full debug mode, use this code instead:

Start out in PM Debug Mode in Training (Full Debug) [PyotrLuzhin]
C294B4E4 00000007
90620000 90A20004
3C608058 60633FFC
2C040005 38A00001
41820008 38A00000
90A30000 80620000
80A20004 90830054
60000000 00000000
 
Joined
Apr 28, 2016
Messages
23
Location
Ontario
#32
Am I missing something with the Fixed Song Forcer code, or does it only work as one instance (as in, it can only be used for one stage at a time)? Whenever I attempt to add a second stage to the code, the game seems to choose just one to work properly. Surely I must have made some sort of mistake.

Edit: Attempting to get this working again but no luck. I'm unfamiliar with asmwiird, having only ever worked with actual codes themselves. Could anybody who has got this new Song Forcer working explain what exactly needs to be changed from wiiztec's guide to be compatible with CSE?

Edit 2: Never mind, got it working. May have been a problem on Dolphin's end. For those who haven't got it working, follow wiiztec's guide but change the top two lines to:

lis r12,0x8058
lhz r12,22714(r12)

And every time you come across the following:

li r0,0xMMMM

Change it to:

li r0,0
ori r0,r0,0xMMMM
 
Last edited:

Amazerommu

Smash Lord
Joined
Jan 4, 2013
Messages
1,138
Location
Kentucky
#33
Am I missing something with the Fixed Song Forcer code, or does it only work as one instance (as in, it can only be used for one stage at a time)? Whenever I attempt to add a second stage to the code, the game seems to choose just one to work properly. Surely I must have made some sort of mistake.

Edit: Attempting to get this working again but no luck. I'm unfamiliar with asmwiird, having only ever worked with actual codes themselves. Could anybody who has got this new Song Forcer working explain what exactly needs to be changed from wiiztec's guide to be compatible with CSE?

Edit 2: Never mind, got it working. May have been a problem on Dolphin's end. For those who haven't got it working, follow wiiztec's guide but change the top two lines to:

lis r12,0x8058
lhz r12,22714(r12)

And every time you come across the following:

li r0,0xMMMM

Change it to:

li r0,0
ori r0,r0,0xMMMM
Have you tried with the version of wiiztec's code that allows multiple songs per multiple alts per stage?

"s4: cmpwi r27,0xSS
bne end #(s5 if not last chunk)
s4a1: cmpwi r12,0xA1A1
bne s4a2
s4a1m1: cmpwi r0,0xIFM1
bne s4a1m2
li r0,0xTHM1
s4a1m2: cmpwi r0,0xIFM2
bne end
li r0,0xTHM2
s4a2: cmpwi r12,0xA2A2
bne end
s4a2m1: cmpwi r0,0xIFM1
bne s4a2m2
li r0,0xTHM1
s4a2m2: cmpwi r0,0xIFM2
bne end
li r0,0xTHM2"

I've been using ^ this from the guide and changing the li r0,0 stuff as needed trying to get this to work but my wii keeps restarting when it tries to load Project M.
 
Last edited:
Joined
Apr 28, 2016
Messages
23
Location
Ontario
#34
Have you tried with the version of wiiztec's code that allows multiple songs per multiple alts per stage?

"s4: cmpwi r27,0xSS
bne end #(s5 if not last chunk)
s4a1: cmpwi r12,0xA1A1
bne s4a2
s4a1m1: cmpwi r0,0xIFM1
bne s4a1m2
li r0,0xTHM1
s4a1m2: cmpwi r0,0xIFM2
bne end
li r0,0xTHM2
s4a2: cmpwi r12,0xA2A2
bne end
s4a2m1: cmpwi r0,0xIFM1
bne s4a2m2
li r0,0xTHM1
s4a2m2: cmpwi r0,0xIFM2
bne end
li r0,0xTHM2"

I've been using ^ this from the guide and changing the li r0,0 stuff as needed trying to get this to work but my wii keeps restarting when it tries to load Project M.
That's a little worrying. I've only tried it in Dolphin so far and it works fine there, so I'll have to try it on the Wii when I get the chance. For reference, something like this works fine for me:

lis r12,0x8058
lhz r12,22714(r12)
slwi r0,r0,16
srwi r0,r0,16

s1: cmpwi r27,0x40
bne end
s1a1: cmpwi r12,0x0000
bne s1a2
s1a1m1: cmpwi r0,0x2807
bne s1a1m2
li r0,0
ori r0,r0,0xC001
s1a1m2: cmpwi r0,0x280E
bne s1a1m3
li r0,0
ori r0,r0,0xC002
s1a1m3: cmpwi r0,0x2808
bne end
li r0,0
ori r0,r0,0xC003
s1a2: cmpwi r12,0x0100
bne end
s1a2m1: cmpwi r0,0x2807
bne s1a2m2
li r0,0
ori r0,r0,0xC004
s1a2m2: cmpwi r0,0x280E
bne s1a2m3
li r0,0
ori r0,r0,0xC005
s1a2m3: cmpwi r0,0x2808
bne end
li r0,0
ori r0,r0,0xC006

end:stw r0,0(r29)
 

Amazerommu

Smash Lord
Joined
Jan 4, 2013
Messages
1,138
Location
Kentucky
#35
That's a little worrying. I've only tried it in Dolphin so far and it works fine there, so I'll have to try it on the Wii when I get the chance. For reference, something like this works fine for me:

lis r12,0x8058
lhz r12,22714(r12)
slwi r0,r0,16
srwi r0,r0,16

s1: cmpwi r27,0x40
bne end
s1a1: cmpwi r12,0x0000
bne s1a2
s1a1m1: cmpwi r0,0x2807
bne s1a1m2
li r0,0
ori r0,r0,0xC001
s1a1m2: cmpwi r0,0x280E
bne s1a1m3
li r0,0
ori r0,r0,0xC002
s1a1m3: cmpwi r0,0x2808
bne end
li r0,0
ori r0,r0,0xC003
s1a2: cmpwi r12,0x0100
bne end
s1a2m1: cmpwi r0,0x2807
bne s1a2m2
li r0,0
ori r0,r0,0xC004
s1a2m2: cmpwi r0,0x280E
bne s1a2m3
li r0,0
ori r0,r0,0xC005
s1a2m3: cmpwi r0,0x2808
bne end
li r0,0
ori r0,r0,0xC006

end:stw r0,0(r29)
Thank you... I think the problem is too many lines of code. I didn't think I would have that problem ever. I'm currently seeing if I can fix this issue.
 
Last edited:

Cynapse

Smash Ace
Joined
Jul 3, 2015
Messages
905
Location
Kansas City
#36
Thank you... I think the problem is too many lines of code. I didn't think I would have that problem ever. I'm currently seeing if I can fix this issue.
M2000 had a way past this by editing something in the gameconfig.txt. Don't remember what specifically...think it was codelistend
 

Amazerommu

Smash Lord
Joined
Jan 4, 2013
Messages
1,138
Location
Kentucky
#37
M2000 had a way past this by editing something in the gameconfig.txt. Don't remember what specifically...think it was codelistend
So the game loads now but... I'm still having an issue getting the code to work. It's like it doesn't even wanna try lol. I tried a small portion to test for Battlefield's Melee alt.

lis r12,0x8058
lhz r12,22714(r12)
slwi r0,r0,16
srwi r0,r0,16

s1: cmpwi r27,0x01
bne end
s1a1: cmpwi r12,0x0040
bne end
s1a1m1: cmpwi r0,0x26FC
bne s1a1m2
li r0,0
ori r0,r0,0xC000
s1a1m2: cmpwi r0,0x27EE
bne s1a1m3
li r0,0
ori r0,r0,0xC001
s1a1m3: cmpwi r0,0x2711
bne end
li r0,0
ori r0,r0,0xC002
end:stw r0,0(r29)

I don't know what could be wrong with this thing...
 
Last edited:
Joined
Mar 8, 2011
Messages
25
#39
This is the place where I'll post codes that don't fit into any particular category. Enjoy!

Character Codes:
BrawlEX Hold Shield Rewrite [PyotrLuzhin, ds22]

046847BC 60000000
046847C0 48000008
4A000000 90000000
1619C600 00000028
00010203 04050607
08090A0B 0C0D0E0F
37111213 14311617
18191A1B 1C1D1E1F
20212223 24252627

E0000000 80008000
C268482C 00000006
39800000 3C809019
6084C600 2C0C0028
4182001C 7C0CE800
41820010 398C0001
38840001 4BFFFFE8
8BA40000 00000000
C2685BE4 00000007
39800000 3C809019
6084C600 88640000
2C0C0028 4182001C
7C032800 41820010
398C0001 38840001
4BFFFFE4 7D856378
90A1003C 00000000

Green: CSS Slots
The CSS slots in the code are stored in byte pairs, ranging from 0x00 (mario) to 0x27 (Sonic). The first row reads 00 01 02 03, which translates to Mario, Link, Donkey Kong, and Samus. If you wanted to put a BrawlEX clone (let's say 3F) over Mario, for example, you'd replace the green 00 in the code with 0x3F.

]
about this code can I get a further explanation as to what It does exactly like does this mean that if you hold shield over say mario than you can load a different character
 
Last edited:

squeakyboots13

Smash Journeyman
Joined
Oct 4, 2013
Messages
381
#40
I've tried using the Hold Z for Dark Characters code and it appears to load every player in their dark costume instead of just the person using it. Is it supposed to work like that because it doesn't look like that was the case in your video of it?

Edit: And now it suddenly stopped doing that. Weird.
 
Last edited:
Top