Melee Gecko Codes + Guide and Discussion

JoshuaMK

Smash Cadet
Joined
May 19, 2019
Messages
56
Thank you. I just needed to get that out of the way. Now to figure out a way to move from one SSS to another. I'm gonna try to change the RANDOM BUTTON into a way to go from 1 to 2.
 

JoshuaMK

Smash Cadet
Joined
May 19, 2019
Messages
56
Punkline Punkline Just finally got around to this, I can't seem to get the Big Endian formats imported into Cheat Manager, like at all. I was looking through the formats of the current ones versus these Big Endian codes from 2011, and I noticed that some things in the format have changed since those Big Endain ones were made. Is that causing issues with it? I bet I should probably downgrade if I want to use those Big Endian formats in Cheat Manager... What version of Cheat Manager are you using?
 
Last edited:

Punkline

Dr. Frankenstack
Premium
Joined
May 15, 2015
Messages
406
Punkline Punkline Just finally got around to this, I can't seem to get the Big Endian formats imported into Cheat Manager, like at all. I was looking through the formats of the current ones versus these Big Endian codes from 2011, and I noticed that some things in the format have changed since those Big Endain ones were made. Is that causing issues with it? I bet I should probably downgrade if I want to use those Big Endian formats in Cheat Manager... What version of Cheat Manager are you using?
I'm still using version 6.7 of Cheat Engine, as I haven't bothered to update in awhile. I don't know about the latest versions, but for 6.7 the big-endian search data type AA scripts can still be installed like as described.
 

JoshuaMK

Smash Cadet
Joined
May 19, 2019
Messages
56
Welp, seems I am still having the same issues as before. Always comes up blank after the import, and when I try to use Big Endian format it brings up nothing. :/ I'm soo confused now. I literally have been just copy pasting the entire script of one of them into the AA script manager thing, and this happens everytime.

BTW Scanning for the value 0 brings up an error saying it can't divide by zero??.... I'm not even doing that but whatever
 

Punkline

Dr. Frankenstack
Premium
Joined
May 15, 2015
Messages
406
Welp, seems I am still having the same issues as before. Always comes up blank after the import, and when I try to use Big Endian format it brings up nothing. :/ I'm soo confused now. I literally have been just copy pasting the entire script of one of them into the AA script manager thing, and this happens everytime.

BTW Scanning for the value 0 brings up an error saying it can't divide by zero??.... I'm not even doing that but whatever
Oh, it looks like the 2-byte AA script isn't working. I usually just use Memory Engine for quick searches, so I only had the 4-byte value installed. The 4-byte and floating point data types still seem to work OK.

When it comes down to it, I only really use Cheat Engine for searches that I know are in a known section of RAM, since it has those nice MIN/MAX address parameters. I don't usually need to do that though, and downgrading Dolphin is otherwise a hassle; so I mainly just resort to Cheat Engine for its more robust Memory View windows -- which are not affected by these data type plugins.
 
Last edited:

JoshuaMK

Smash Cadet
Joined
May 19, 2019
Messages
56
Finally they are working! Even the 2 Byte is working now. Or at least it isn't spitting out nothing or giving errors anyway. I haven't actually tested it to make sure it actually is 100% working but at least it has the name show up and stuff. Idek what I did different this time, I just copy pasted them in and BOOM. Now I can use Cheat Engine properly! Btw I put them in on Cheat Engine 6.7. I tried 6.6 but it seemed to be bundled with malware as when I executed the program install it didn't do anything except start moving unrecognizable files deep into windows. Thankfully my Grandma had bought really good anti-virus protection when she was using the computer, so I was able to swift take them out. Might wanna let them know about this problem though so other people don't get put down the hole.

EDIT: They even appear on the current Cheat Engine 6.8.3 for some reason even though it's an entirely different file.
 
Last edited:

Punkline

Dr. Frankenstack
Premium
Joined
May 15, 2015
Messages
406
Glad you got it to work!

I tried 6.6 but it seemed to be bundled with malware as when I executed the program install it didn't do anything except start moving unrecognizable files deep into windows. Thankfully my Grandma had bought really good anti-virus protection when she was using the computer, so I was able to swift take them out. Might wanna let them know about this problem though so other people don't get put down the hole.

EDIT: They even appear on the current Cheat Engine 6.8.3 for some reason even though it's an entirely different file.
Cheat Engine is a tool used to hook into a target process running on your computer, and read/write to the memory regions it is using in RAM for the educational purpose of reverse engineering. It’s an EXTREMELY powerful program when used outside of Dolphin, and has a long-running problem of creating false positives in virus-scanning programs because it is in fact a dangerous-looking program. The download page is explicit enough in explaining this, I think.


With that said -- you’re wise to try erring on the side of caution when installing exotic hacking programs on your sweet grandmother’s computer. If you’re at all uncomfortable using Cheat Engine, then Memory Engine is a very convenient alternative.
 

Stormghetti

Smash Journeyman
Joined
Aug 23, 2015
Messages
400
Location
Spain
NNID
Stormghetti
Is it possible to make Fox's side b not go into the helpless state? (Kinda like his side b in Smash 4 and in Ultimate.)
Code:
$Special Move Master Code v3 (fix console crash) [UnclePunch]
C20D5C08 00000002 #land
39C00000 99C31878
7C7F1B78 00000000
C20D5AEC 00000002 #specialland1
39C00000 99C318D8
7C0802A6 00000000
C20D5CB0 00000002 #specialland2
39C00000 99C318D8
7C0802A6 00000000
C208A348 00000002 #wait
39C00000 99DF18D8
7C0802A6 00000000
C20D4FF4 00000002 #rebirth
39C00000 99C318D8
7C0802A6 00000000
C2081370 00000002 #cliff catch
39C00000 99C318D8
7C0802A6 00000000
C208DCE0 00000002 #hitstun
39C00000 99C318D8
7C0802A6 00000000
C20DB908 00000002 #get grabbed
39C00000 99C318D8
7C0802A6 00000000
C2099A9C 00000004 #airdodge flag
89C318D8 2C0E0001
41820008 48000008
4E800020 7C0802A6
60000000 00000000

Code:
$Fox and Falco Enter Fall After Side B and Retains Jump (a la Smash 4) v2[UnclePunch]
040ea988 4BFE1DA9
040ea6b8 60000000 #ground to air preserve jump
040e9fe8 60000000 #air to air preserve jump
C20E9F6C 00000005 #check for side B used
89C318D8 2C0E0001
41820010 39C00001
99DF1878 48000008
4E800020 7C0802A6
60000000 00000000
 
Joined
Jun 24, 2019
Messages
58
Marth Sword Modifier (1.2)
42453230 0F98XXXX
42453230 0F9AXXXX
42453230 0F9CXXXX

IceClimber (Popo) Hammer Size Modifier
42453230 0308XXXX
42453230 030AXXXX
42453230 030CXXXX

Roy Sword Modifier (1.2)
42453230 0FD8XXXX
42453230 0FDAXXXX
42453230 0FDCXXXX

Samus ArmCannon Size modifier
42453230 0A38XXXX
42453230 0A3AXXXX
42453230 0A3CXXXX

Ganondorf Hand/Sword Size modifier
42453230 0E98XXXX
42453230 0E9AXXXX
42453230 0E9CXXXX

Link Sword Size modifier
42453230 04C0XXXX
42453230 04C2XXXX
42453230 04C4XXXX

Young Link Sword Size modifier
42453230 0530XXXX
42453230 0532XXXX
42453230 0534XXXX


I found these codes and I wonder if anyone knows what they are, btw these are v1.02 codes
 

Stormghetti

Smash Journeyman
Joined
Aug 23, 2015
Messages
400
Location
Spain
NNID
Stormghetti
Marth Sword Modifier (1.2)
42453230 0F98XXXX
42453230 0F9AXXXX
42453230 0F9CXXXX

IceClimber (Popo) Hammer Size Modifier
42453230 0308XXXX
42453230 030AXXXX
42453230 030CXXXX

Roy Sword Modifier (1.2)
42453230 0FD8XXXX
42453230 0FDAXXXX
42453230 0FDCXXXX

Samus ArmCannon Size modifier
42453230 0A38XXXX
42453230 0A3AXXXX
42453230 0A3CXXXX

Ganondorf Hand/Sword Size modifier
42453230 0E98XXXX
42453230 0E9AXXXX
42453230 0E9CXXXX

Link Sword Size modifier
42453230 04C0XXXX
42453230 04C2XXXX
42453230 04C4XXXX

Young Link Sword Size modifier
42453230 0530XXXX
42453230 0532XXXX
42453230 0534XXXX


I found these codes and I wonder if anyone knows what they are, btw these are v1.02 codes
If I had to guess, you probably replace the X's with float values, but unfortunately I don't know how the codes' structures even work.
 
Last edited:

JoshuaMK

Smash Cadet
Joined
May 19, 2019
Messages
56
I imagine that considering there are 3 lines per code, that these are size modifiers for xyz axis. Just put in float values ranging from 3F00 to 4080 and test to see which is x which is y and which is z axis
 

JoshuaMK

Smash Cadet
Joined
May 19, 2019
Messages
56
Just wanted to update that I've been teaching myself ASM for the past while and have gotten really good at it, so once I am ready, Super Smash Bros Melee'd is gonna be pretty snazzy.

For example, here is a code for Mario Kart Wii that I made that allows up to 65538 lap races.
(It's my favorite game and I've set a WR in it too so ofc I would write codes for it lol)

Again, just showing the skills I've gained. This is not a Melee code.

(NTSC-U)
C252FEB4 00000011
3D808140 80AC179A
28050000 6000XXXX
41820010 80A30044
38A50001 90A30044
38A40001 40820008
90A30044 B0A30024
28050001 4182000C
7C040040 40810048
8B830023 3B9C0001
9B830023 838C179A
281C0000 40820030
28040000 40820028
894C1799 7D4903A6
838C17A2 A95C0024
7D405050 915C0044
3B9C00C4 4200FFF0
938C179A 00000000
C2791674 00000002
3D808140 8B84F0B0
9B8C1799 00000000
C27E4C9C 00000002
3D808140 807FEE20
906C179E 00000000
C27ED9F8 00000003
3D808140 838C17A2
2C1C0000 41820008
A39C0024 00000000
C25309C0 0000000A
807E0044 3D808140
816C179E 280B0000
41820038 896C17D2
280B0000 4082002C
888C1799 7C8903A6
618B179E 97CB0004
3BDE00C4 4200FFF8
396000C4 7D6B21D6
7FCBF050 9B0C17D2
60000000 00000000
C253068C 00000004
817A0044 899A0023
3803FFFF 398CFFFF
396BFFFF 917A0044
999A0023 00000000
04530110 A81D0022

(PAL)
C25349FC 00000011
3D808140 80AC179A
28050000 6000XXXX
41820010 80A30044
38A50001 90A30044
38A40001 40820008
90A30044 B0A30024
28050001 4182000C
7C040040 40810048
8B830023 3B9C0001
9B830023 838C179A
281C0000 40820030
28040000 40820028
894C1799 7D4903A6
838C17A2 A95C0024
7D405050 915C0044
3B9C00C4 4200FFF0
938C179A 00000000
C279A680 00000002
3D808140 8B8438B8
980C1799 00000000
C27EEFAC 00000002
3D808140 807F3618
906C179E 00000000
C27F84F8 00000003
3D808140 838C17A2
2C1C0000 41820008
A39C0024 00000000
C2535508 0000000A
807E0044 3D808140
816C179E 280B0000
41820038 896C17D2
280B0000 4082002C
888C1799 7C8903A6
618B179E 97CB0004
3BDE00C4 4200FFF8
396000C4 7D6B21D6
7FCBF050 9B0C17D2
60000000 00000000
C25351D4 00000004
817A0044 899A0023
3803FFFF 398CFFFF
396BFFFF 917A0044
999A0023 00000000
04534C58 A81D0022

(NTSC-J)
C253437C 00000011
3D808140 80AC179A
28050000 6000XXXX
41820010 80A30044
38A50001 90A30044
38A40001 40820008
90A30044 B0A30024
28050001 4182000C
7C040040 40810048
8B830023 3B9C0001
9B830023 838C179A
281C0000 40820030
28040000 40820028
894C1799 7D4903A6
838C17A2 A95C0024
7D405050 915C0044
3B9C00C4 4200FFF0
938C179A 00000000
C2799CEC 00000002
3D808140 8B842918
980C1799 00000000
C27EE618 00000002
3D808140 807F2678
906C179E 00000000
C27F7B64 00000003
3D808140 838C17A2
2C1C0000 41820008
A39C0024 00000000
C2534E88 0000000A
807E0044 3D808140
816C179E 280B0000
41820038 896C17D2
280B0000 4082002C
888C1799 7C8903A6
618B179E 97CB0004
3BDE00C4 4200FFF8
396000C4 7D6B21D6
7FCBF050 9B0C17D2
60000000 00000000
C2534B54 00000004
817A0044 899A0023
3803FFFF 398CFFFF
396BFFFF 917A0044
999A0023 00000000
045345D8 A81D0022

(NTSC-K)
C2522A58 00000011
3D808140 80AC179A
28050000 6000XXXX
41820010 80A30044
38A50001 90A30044
38A40001 40820008
90A30044 B0A30024
28050001 4182000C
7C040040 40810048
8B830023 3B9C0001
9B830023 838C179A
281C0000 40820030
28040000 40820028
894C1799 7D4903A6
838C17A2 A95C0024
7D405050 915C0044
3B9C00C4 4200FFF0
938C179A 00000000
C2791674 00000002
3D808140 8B84F0B0
9B8C1799 00000000
C27DD36C 00000002
3D808140 807F1C58
906C179E 00000000
C27E68B8 00000003
3D808140 838C17A2
2C1C0000 41820008
A39C0024 00000000
C2523560 0000000A
807E0044 3D808140
816C179E 280B0000
41820038 896C17D2
280B0000 4082002C
888C1799 7C8903A6
618B179E 97CB0004
3BDE00C4 4200FFF8
396000C4 7D6B21D6
7FCBF050 9B0C17D2
60000000 00000000
C252322C 00000004
817A0044 899A0023
3803FFFF 398CFFFF
396BFFFF 917A0044
999A0023 00000000
04522CB0 A81D0022

XXXX = Number of Extra Laps

#Source ASM (NTSC-U)

###################
#Inject > 807E4C9C#
###################

lis r12, 0x8140
lwz r3, -0x1130 (r31)
stw r3, 0x179e (r12)

###################
#Inject > 807ED9F8#
###################

lis r12, 0x8140 #Load Custom Lap Address in Mem81
lwz r28, 0x17a2 (r12)
cmpwi r28, 0
beq the_end
lhz r28, 0x0024 (r28)
the_end:

###################
#Inject > 8053068C#
###################

lwz r11, 0x0044 (r26)
lbz r12, 0x0023 (r26)
subi r0, r3, 1
subi r12, r12, 1
subi r11, r11, 1
stw r11, 0x0044 (r26)
stb r12, 0x0023 (r26)

###################
#Inject > 805309C0#
###################

lwz r3, 0x0044 (r30)
lis r12, 0x8140
lwz r11, 0x179e (r12)
cmplwi r11, 0
beq normal_code
lbz r11, 0x17d2 (r12)
cmplwi r11, 0
bne normal_code
lbz r4, 0x1799 (r12)
mtctr r4
ori r11, r12, 0x179e
loop_back:
stwu r30, 0x0004 (r11)
addi r30, r30, 0x00c4
bdnz+ loop_back
li r11, 0x00c4
mul r11, r11, r4
sub r30, r30, r11
stb r24, 0x17d2 (r12)
normal_code:

###################
#Inject > 80791674#
###################

lis r12, 0x8140
lbz r28, -0x0F50 (r4)
stb r0, 0 (r12)

###################
#Inject > 8052FEB4#
###################

lis r12, 0x8140
lwz r5, 0x179a (r12)
cmplwi r5, 0
ori r0, r0, 0xFFFF
beq normal
lwz r5, 0x0044 (r3)
addi r5, r5, 1
stw r5, 0x0044 (r3)
normal:
addi r5, r4, 1 #Add 1 and Compare To Wanted Lap Amount
bne store
stw r5, 0x0044 (r3) #Store Lap to Custom Position Tracker
store:
sth r5, 0x0024 (r3) #Store to Custom Lap Tracker
cmplwi r5, 1
beq lap_one #Branch If Crossing Onto Lap 1
cmplw r4, r0
ble the_end #Branch if Less Than Wanted Lap Amount
lap_one:
lbz r28, 0x0023 (r3) #Load Vanilla Lap Into Memory
addi r28, r28, 1 #Add 1 to Lap Amount
stb r28, 0x0023 (r3) #Store Lap Into Vanilla Lap Tracker
lwz r28, 0x179a (r12)
cmplwi r28, 0
bne the_end
cmplwi r4, 0 #Compare Vanilla Lap to Custom Lap Threshold + 2. (Looking at it I need to set r28 to r5.)
bne the_end
lbz r10, 0x1799 (r12) #Set CTR to 12 (For the 12 Racers.)
mtctr r10
lwz r28, 0x17a2 (r12)
loop: #This Loop Sets the Position Lap Tracker to be 3 or Less to Fix Position Issues. Don't Touch This.
lha r10, 0x0024 (r28)
sub r10, r10, r0
stw r10, 0x0044 (r28)
addi r28, r28, 0x00c4
bdnz+ loop
stw r28, 0x179a (r12)
the_end:
 
Joined
Jun 24, 2019
Messages
58
Just wanted to update that I've been teaching myself ASM for the past while and have gotten really good at it, so once I am ready, Super Smash Bros Melee'd is gonna be pretty snazzy.

For example, here is a code for Mario Kart Wii that I made that allows up to 65538 lap races.
(It's my favorite game and I've set a WR in it too so ofc I would write codes for it lol)

Again, just showing the skills I've gained. This is not a Melee code.

(NTSC-U)
C252FEB4 00000011
3D808140 80AC179A
28050000 6000XXXX
41820010 80A30044
38A50001 90A30044
38A40001 40820008
90A30044 B0A30024
28050001 4182000C
7C040040 40810048
8B830023 3B9C0001
9B830023 838C179A
281C0000 40820030
28040000 40820028
894C1799 7D4903A6
838C17A2 A95C0024
7D405050 915C0044
3B9C00C4 4200FFF0
938C179A 00000000
C2791674 00000002
3D808140 8B84F0B0
9B8C1799 00000000
C27E4C9C 00000002
3D808140 807FEE20
906C179E 00000000
C27ED9F8 00000003
3D808140 838C17A2
2C1C0000 41820008
A39C0024 00000000
C25309C0 0000000A
807E0044 3D808140
816C179E 280B0000
41820038 896C17D2
280B0000 4082002C
888C1799 7C8903A6
618B179E 97CB0004
3BDE00C4 4200FFF8
396000C4 7D6B21D6
7FCBF050 9B0C17D2
60000000 00000000
C253068C 00000004
817A0044 899A0023
3803FFFF 398CFFFF
396BFFFF 917A0044
999A0023 00000000
04530110 A81D0022

(PAL)
C25349FC 00000011
3D808140 80AC179A
28050000 6000XXXX
41820010 80A30044
38A50001 90A30044
38A40001 40820008
90A30044 B0A30024
28050001 4182000C
7C040040 40810048
8B830023 3B9C0001
9B830023 838C179A
281C0000 40820030
28040000 40820028
894C1799 7D4903A6
838C17A2 A95C0024
7D405050 915C0044
3B9C00C4 4200FFF0
938C179A 00000000
C279A680 00000002
3D808140 8B8438B8
980C1799 00000000
C27EEFAC 00000002
3D808140 807F3618
906C179E 00000000
C27F84F8 00000003
3D808140 838C17A2
2C1C0000 41820008
A39C0024 00000000
C2535508 0000000A
807E0044 3D808140
816C179E 280B0000
41820038 896C17D2
280B0000 4082002C
888C1799 7C8903A6
618B179E 97CB0004
3BDE00C4 4200FFF8
396000C4 7D6B21D6
7FCBF050 9B0C17D2
60000000 00000000
C25351D4 00000004
817A0044 899A0023
3803FFFF 398CFFFF
396BFFFF 917A0044
999A0023 00000000
04534C58 A81D0022

(NTSC-J)
C253437C 00000011
3D808140 80AC179A
28050000 6000XXXX
41820010 80A30044
38A50001 90A30044
38A40001 40820008
90A30044 B0A30024
28050001 4182000C
7C040040 40810048
8B830023 3B9C0001
9B830023 838C179A
281C0000 40820030
28040000 40820028
894C1799 7D4903A6
838C17A2 A95C0024
7D405050 915C0044
3B9C00C4 4200FFF0
938C179A 00000000
C2799CEC 00000002
3D808140 8B842918
980C1799 00000000
C27EE618 00000002
3D808140 807F2678
906C179E 00000000
C27F7B64 00000003
3D808140 838C17A2
2C1C0000 41820008
A39C0024 00000000
C2534E88 0000000A
807E0044 3D808140
816C179E 280B0000
41820038 896C17D2
280B0000 4082002C
888C1799 7C8903A6
618B179E 97CB0004
3BDE00C4 4200FFF8
396000C4 7D6B21D6
7FCBF050 9B0C17D2
60000000 00000000
C2534B54 00000004
817A0044 899A0023
3803FFFF 398CFFFF
396BFFFF 917A0044
999A0023 00000000
045345D8 A81D0022

(NTSC-K)
C2522A58 00000011
3D808140 80AC179A
28050000 6000XXXX
41820010 80A30044
38A50001 90A30044
38A40001 40820008
90A30044 B0A30024
28050001 4182000C
7C040040 40810048
8B830023 3B9C0001
9B830023 838C179A
281C0000 40820030
28040000 40820028
894C1799 7D4903A6
838C17A2 A95C0024
7D405050 915C0044
3B9C00C4 4200FFF0
938C179A 00000000
C2791674 00000002
3D808140 8B84F0B0
9B8C1799 00000000
C27DD36C 00000002
3D808140 807F1C58
906C179E 00000000
C27E68B8 00000003
3D808140 838C17A2
2C1C0000 41820008
A39C0024 00000000
C2523560 0000000A
807E0044 3D808140
816C179E 280B0000
41820038 896C17D2
280B0000 4082002C
888C1799 7C8903A6
618B179E 97CB0004
3BDE00C4 4200FFF8
396000C4 7D6B21D6
7FCBF050 9B0C17D2
60000000 00000000
C252322C 00000004
817A0044 899A0023
3803FFFF 398CFFFF
396BFFFF 917A0044
999A0023 00000000
04522CB0 A81D0022

XXXX = Number of Extra Laps

#Source ASM (NTSC-U)

###################
#Inject > 807E4C9C#
###################

lis r12, 0x8140
lwz r3, -0x1130 (r31)
stw r3, 0x179e (r12)

###################
#Inject > 807ED9F8#
###################

lis r12, 0x8140 #Load Custom Lap Address in Mem81
lwz r28, 0x17a2 (r12)
cmpwi r28, 0
beq the_end
lhz r28, 0x0024 (r28)
the_end:

###################
#Inject > 8053068C#
###################

lwz r11, 0x0044 (r26)
lbz r12, 0x0023 (r26)
subi r0, r3, 1
subi r12, r12, 1
subi r11, r11, 1
stw r11, 0x0044 (r26)
stb r12, 0x0023 (r26)

###################
#Inject > 805309C0#
###################

lwz r3, 0x0044 (r30)
lis r12, 0x8140
lwz r11, 0x179e (r12)
cmplwi r11, 0
beq normal_code
lbz r11, 0x17d2 (r12)
cmplwi r11, 0
bne normal_code
lbz r4, 0x1799 (r12)
mtctr r4
ori r11, r12, 0x179e
loop_back:
stwu r30, 0x0004 (r11)
addi r30, r30, 0x00c4
bdnz+ loop_back
li r11, 0x00c4
mul r11, r11, r4
sub r30, r30, r11
stb r24, 0x17d2 (r12)
normal_code:

###################
#Inject > 80791674#
###################

lis r12, 0x8140
lbz r28, -0x0F50 (r4)
stb r0, 0 (r12)

###################
#Inject > 8052FEB4#
###################

lis r12, 0x8140
lwz r5, 0x179a (r12)
cmplwi r5, 0
ori r0, r0, 0xFFFF
beq normal
lwz r5, 0x0044 (r3)
addi r5, r5, 1
stw r5, 0x0044 (r3)
normal:
addi r5, r4, 1 #Add 1 and Compare To Wanted Lap Amount
bne store
stw r5, 0x0044 (r3) #Store Lap to Custom Position Tracker
store:
sth r5, 0x0024 (r3) #Store to Custom Lap Tracker
cmplwi r5, 1
beq lap_one #Branch If Crossing Onto Lap 1
cmplw r4, r0
ble the_end #Branch if Less Than Wanted Lap Amount
lap_one:
lbz r28, 0x0023 (r3) #Load Vanilla Lap Into Memory
addi r28, r28, 1 #Add 1 to Lap Amount
stb r28, 0x0023 (r3) #Store Lap Into Vanilla Lap Tracker
lwz r28, 0x179a (r12)
cmplwi r28, 0
bne the_end
cmplwi r4, 0 #Compare Vanilla Lap to Custom Lap Threshold + 2. (Looking at it I need to set r28 to r5.)
bne the_end
lbz r10, 0x1799 (r12) #Set CTR to 12 (For the 12 Racers.)
mtctr r10
lwz r28, 0x17a2 (r12)
loop: #This Loop Sets the Position Lap Tracker to be 3 or Less to Fix Position Issues. Don't Touch This.
lha r10, 0x0024 (r28)
sub r10, r10, r0
stw r10, 0x0044 (r28)
addi r28, r28, 0x00c4
bdnz+ loop
stw r28, 0x179a (r12)
the_end:
Wow! that is some skill you got there
 

Punkline

Dr. Frankenstack
Premium
Joined
May 15, 2015
Messages
406

Not sure if feature or exploit.

Putting a newline like this in any other string context fails ("x" <x>) but creating a backslash escape literal char (with single quotes 'x' ) seems to have a higher priority than most things in GAS. If you do this without making a check for it in a :vararg macro, it seems to start reading some junk data. Not really sure what that’s about.

However -- if you make the .ifc check as part of a macro reading a vararg string -- it seems to ignore whitespace (including comments) until it finds a newline. The newline then becomes the escaped character for that single-quotes-encapsulated input -- and this seems to let both the program and the input use a newline.


This may let you create hacky support for newline characters (and comments) in your macros that use vararg strings.
I guess?

Note, your assembler must support the :vararg feature for this, like MCM:

Code:
.macro test, b, va:vararg
.ifnb \b
  .ifc \b, '\
';
    test \va
    .exitm
  .endif
  .byte \b; test \va
.endif
.endm

test 1 2 3 4
test 5 "6" '\# comment and newline in the middle of a vararg string
', 7 8
 
Last edited:
Joined
Nov 9, 2014
Messages
665

Not sure if feature or exploit.

Putting a newline like this in any other string context fails ("x" <x>) but creating a backslash escape literal char (with single quotes 'x' ) seems to have a higher priority than most things in GAS. If you do this without making a check for it in a :vararg macro, it seems to start reading some junk data. Not really sure what that’s about.

However -- if you make the .ifc check as part of a macro reading a vararg string -- it seems to ignore whitespace (including comments) until it finds a newline. The newline then becomes the escaped character for that single-quotes-encapsulated input -- and this seems to let both the program and the input use a newline.


This may let you create hacky support for newline characters (and comments) in your macros that use vararg strings.
I guess?

Note, your assembler must support the :vararg feature for this, like MCM:

Code:
.macro test, b, va:vararg
.ifnb \b
  .ifc \b, '\
';
    test \va
    .exitm
  .endif
  .byte \b; test \va
.endif
.endm

test 1 2 3 4
test 5 "6" '\# comment and newline in the middle of a vararg string
', 7 8
LOL @ that image. Thank you for discovering this.
 

Punkline

Dr. Frankenstack
Premium
Joined
May 15, 2015
Messages
406
LOL @ that image. Thank you for discovering this.
lol nvm, my dumb ass forgot about multi-line comments:
Code:
.macro msg, w, va:vararg
.ifnb \w; .asciz "\w";  msg \va
.endif
.endm

msg I /* comments */ am a /*

more
comments */ fool
Edit - apparently you can also do this for regular pseudo-ops
Code:
.byte 1, 2, 3 /*
*/, 4
 
Last edited:

CloudyDay

Smash Rookie
Joined
Mar 9, 2019
Messages
7
I wonder if it's possible to make a code or a mod(idk, you people are the creative one out here), for example, like

Melee but all meteors smashes are spikes.

I just wondering if it's possible tho
P.s.: it needs to work on android, and yes, i play melee on it, so stfu(not really).
 
Last edited:

Stormghetti

Smash Journeyman
Joined
Aug 23, 2015
Messages
400
Location
Spain
NNID
Stormghetti
I wonder if it's possible to make a code or a mod(idk, you people are the creative one out here), for example, like

Melee but all meteors smashes are spikes.

I just wondering if it's possible tho
P.s.: it needs to work on android, and yes, i play melee on it, so stfu(not really).
Definitely possible. Just change the angles on the attacks with meteor angles to the angle of spikes instead (290) with Crazy Hand, unless you want meteors to spike so you can have more angles to choose from? Meteor smashes range from 260 degrees to 280, so spike angles are next.

I don't code, so this is the only way for me to do this. Of course, a code is more convenient, but you'd have to wait for someone else to make it for you.
 

CloudyDay

Smash Rookie
Joined
Mar 9, 2019
Messages
7
Definitely possible. Just change the angles on the attacks with meteor angles to the angle of spikes instead (290) with Crazy Hand, unless you want meteors to spike so you can have more angles to choose from? Meteor smashes range from 260 degrees to 280, so spike angles are next.

I don't code, so this is the only way for me to do this. Of course, a code is more convenient, but you'd have to wait for someone else to make it for you.
I totally got what you're saying.
The process that came in mind for me is, since Falco and Marth have these spikes due to a developer oversight, I was just thinking: "Would it be possible for all the other characters that doesn't have it obtain one?". Or maybe, like, "import" the fixed PAL hitboxes for Falco and Marth and, probably, a code to disable the meteor cancel. Because let's be real here, EVERYONE hates it.


OR... just the code that disables meteor cancelling
 
Last edited:

Stormghetti

Smash Journeyman
Joined
Aug 23, 2015
Messages
400
Location
Spain
NNID
Stormghetti
I totally got what you're saying.
The process that came in mind for me is, since Falco and Marth have these spikes due to a developer oversight, I was just thinking: "Would it be possible for all the other characters that doesn't have it obtain one?". Or maybe, like, "import" the fixed PAL hitboxes for Falco and Marth and, probably, a code to disable the meteor cancel. Because let's be real here, EVERYONE hates it.


OR... just the code that disables meteor cancelling
I wouldn't say those two were "developer oversights", just that the by the time they wanted to change their D-Airs, the game had already released, so they ported those ideas to PAL instead. Either way, there's your code.
 

BTolson

Smash Rookie
Joined
Mar 7, 2014
Messages
1
Hi - I'm very new to this. Wondering if there are codes for endless friendlies but you get a random character after each match on a random stage?
 

JoshuaMK

Smash Cadet
Joined
May 19, 2019
Messages
56
Wow , been a bit since the last comment. Anything is possible with codes btw, the REAL question lies in whether or not its realistic.
 

CbM_

Smash Apprentice
Joined
Jan 6, 2020
Messages
80
Location
Vienna, Austria
Switch FC
SW-1723-7582-5511
is there a code that makes all textures black? just like in asumsaus´videos... or will i need to change all textures manually?
 
Top Bottom