ROM Hack Cheat Codes AMS and Sx Os, Add and Request

dsrules

Well-Known Member
Member
Joined
Sep 20, 2005
Messages
8,730
Trophies
2
XP
6,293
Country
If it is not enforced then it is 50/50, meaning that you have a very loose net which lost 50% of your search, when he structure the search as a [0, (the other half of the double)] the search would be 32bit aligned as he is searching for u32.

R15+4084E800 can be any address, it would be 64bit aligned only if R15 has a 64bit aligned address but you don't know that
nevermind, sometimes the pointer path can be deceiving
 

henr19

Well-Known Member
Newcomer
Joined
Sep 14, 2009
Messages
60
Trophies
1
XP
363
Country
United States
Request for Double Dragon Gaiden R.O.T.D. USA version [01005D001AE48000] latest update 1.0.4 please? Love to see invincibility, infinite hp, special bar, coins, combo meter, etc. Thanks! I tried the search function, but saw nothing. :cry:
 

TomSwitch

Well-Known Member
Member
Joined
Jan 10, 2019
Messages
4,545
Trophies
1
Age
44
XP
14,702
Country
United States
nevermind, sometimes the pointer path can be deceiving
Normally the compiler will make 64bit variable 64bit aligned. When you see this kind of strange thing normally that means very bad news for code maker as the game engine is not what you might be used to.

I kind of suspect this game is a 3GL and 4GL hybrid. Some of the code that handle certain element is 3GL but the base game engine is 4GL ( probably some kind of scripting language ).

Try to hack the game and let me know what you discover.

Normal symptom of 4GL game, can't find pointer and can't find hook for ASM.
 
Last edited by TomSwitch,

TobiasAmaranth

Well-Known Member
Member
Joined
Feb 6, 2009
Messages
456
Trophies
1
Age
38
Location
Texas
Website
werewolfdarkarts.com
XP
2,627
Country
United States
Advertisement


what u need to do is find where XYZ position to get out of it will take awhile, the game doesnt have jump will be harder to find it. Walkthrough wall i have no idea what to looking at dont really want to waste my time on this game

The game opened up a rail network so if you can teleport me to literally any early game player location, that'd work too. Frustratingly the rail network is on the other side of the barricade it stuck me behind.
 

piek50

Well-Known Member
Member
Joined
Jun 24, 2019
Messages
687
Trophies
0
XP
2,223
Country
Suriname
Can someone please make :
Rebel Transmute 1.0.2
TID: 01004E301CB88000
BID: CE6BF9EEB72289DC
Infinite jump/moonjump

thanks in advance.
 

dsrules

Well-Known Member
Member
Joined
Sep 20, 2005
Messages
8,730
Trophies
2
XP
6,293
Country
Normally the compiler will make 64bit variable 64bit aligned. When you see this kind of strange thing normally that means very bad news for code maker as the game engine is not what you might be used to.

I kind of suspect this game is a 3GL and 4GL hybrid. Some of the code that handle certain element is 3GL but the base game engine is 4GL ( probably some kind of scripting language ).

Try to hack the game and let me know what you discover.

Normal symptom of 4GL game, can't find pointer and can't find hook for ASM.
pointer and asm should work, the only problem is finding the real address
the hp that @Gamerjin found was probably just the face value?
each hp value might have it's own address, locking 1 address would not work
normal hp 207
cc.jpg


 

Gamerjin

Well-Known Member
Member
Joined
May 25, 2016
Messages
2,798
Trophies
1
XP
6,493
Country
United States
pointer and asm should work, the only problem is finding the real address
the hp that @Gamerjin found was probably just the face value?
each hp value might have it's own address, locking 1 address would not work
funny you mention that, because i think i have it figured out. see if these work for you:
Code:
[hp]
580F0000 02F71190
580F1000 00000118
580F1000 00000054
780F0000 00000008
680F0000 40B4D200 00000000

[max hp]
580F0000 02F71190
580F1000 00000118
580F1000 0000003C
580F1000 000004A4
780F0000 00000008
680F0000 40B4D200 00000000
the value set is my post game file of 5330, but i have discovered this in another save closer to the beginning, so im hoping this works, if this works, i will finally, FINALLY, be able to re-play this game from the beginning because i have COMPLETELY forgotten all time with this game.

part of the problem is that these are data-table references and finding them was a PITA, (and im not talking bread here.) i basically was doing my search method, and group editing, then systematically finding the address....
 
  • Like
Reactions: WiduraGoez

dsrules

Well-Known Member
Member
Joined
Sep 20, 2005
Messages
8,730
Trophies
2
XP
6,293
Country
funny you mention that, because i think i have it figured out. see if these work for you:
Code:
[hp]
580F0000 02F71190
580F1000 00000118
580F1000 00000054
780F0000 00000008
680F0000 40B4D200 00000000

[max hp]
580F0000 02F71190
580F1000 00000118
580F1000 0000003C
580F1000 000004A4
780F0000 00000008
680F0000 40B4D200 00000000
the value set is my post game file of 5330, but i have discovered this in another save closer to the beginning, so im hoping this works, if this works, i will finally, FINALLY, be able to re-play this game from the beginning because i have COMPLETELY forgotten all time with this game.

part of the problem is that these are data-table references and finding them was a PITA, (and im not talking bread here.) i basically was doing my search method, and group editing, then systematically finding the address....
the hp I found was decimal not double, but I will try yours later
@Gamerjin, the first hp pointer seems to work, same address as the one I found, decimal to double after got hit
2nd hp pointer is a bad pointer
 
Last edited by dsrules,

Gamerjin

Well-Known Member
Member
Joined
May 25, 2016
Messages
2,798
Trophies
1
XP
6,493
Country
United States
the hp I found was decimal not double, but I will try yours later
@Gamerjin, the first hp pointer seems to work, same address as the one I found, decimal to double after got hit
2nd hp pointer is a bad pointer
bad as in *access denied* or as in the max hp doesnt change?
also, i noticed that you were on the cargo ship, is that part of the tutorial, or are you further in the game, and can go back to the cargo ship?
 

dsrules

Well-Known Member
Member
Joined
Sep 20, 2005
Messages
8,730
Trophies
2
XP
6,293
Country
bad as in *access denied* or as in the max hp doesnt change?
also, i noticed that you were on the cargo ship, is that part of the tutorial, or are you further in the game, and can go back to the cargo ship?
yeah 2nd ptr points to nothing, I am only at the beginning of the game when able to see the hp value
 

Gamerjin

Well-Known Member
Member
Joined
May 25, 2016
Messages
2,798
Trophies
1
XP
6,493
Country
United States
yeah 2nd ptr points to nothing, I am only at the beginning of the game when able to see the hp value
im beginning to suspect that the save file plays a part in this pain-in-the-ass searching. i started a new file, and even the 1st hp pointer failed. i even tried to asm both the address directly and the previous level in the chain when it was working.
 

TomSwitch

Well-Known Member
Member
Joined
Jan 10, 2019
Messages
4,545
Trophies
1
Age
44
XP
14,702
Country
United States
im beginning to suspect that the save file plays a part in this pain-in-the-ass searching. i started a new file, and even the 1st hp pointer failed. i even tried to asm both the address directly and the previous level in the chain when it was working.
The stats is pass on to some 3GL code for processing, if you are able to trace it back to it's root then you have a easy means to hack the 4GL source of these stats. It's more for the desire to conquer the hacking challenge than to dominate the game because you can easily hack the .json file or the save to give you everything you want.

Say hack this file and give a very big base hp and she becomes virtually invincible? Very big base attack and she can do one hit kill etc etc ( I didn't try it and just making a guess about this )

For example lea.json

{
"character": "main.lea",
"sheet": "player",
"headIdx": 0,
"class": "SPHEROMANCER",
"stats": {
"hp": {
"base": 200,
"increase": 2000,
"variance": 0.1
},
"attack": {
"base": 20,
"increase": 200,
"variance": 0.9
},
"defense": {
"base": 20,
"increase": 200,
"variance": 0.5
},
"focus": {
"base": 20,
"increase": 200,
"variance": 0.3
}
},
"combatStyle": {
"comboCount": 4,
"throwCount": 0,
"throwProb": 0,
"sidewaySpeed": 0,
"normDistance": 0,
"meleeDistance": 0,
"minDistance": 0,
"foodSprites": [
"",
"",
""
]
},
 
Last edited by TomSwitch,

Gamerjin

Well-Known Member
Member
Joined
May 25, 2016
Messages
2,798
Trophies
1
XP
6,493
Country
United States
this game is weird, first its double, now its decimal. its reminding of battle brothers, where one game its 1 format, but another game its different.
i give up on this game on the damn hp pointer code.
 

dsrules

Well-Known Member
Member
Joined
Sep 20, 2005
Messages
8,730
Trophies
2
XP
6,293
Country
this game is weird, first its double, now its decimal. its reminding of battle brothers, where one game its 1 format, but another game its different.
i give up on this game on the damn hp pointer code.
could you test this pointer and see if it works for you?
use when your max hp is over 255
Code:
[Infinite HP]
580f0000 02f72d70
580f1000 000000c8
580f1000 00000080
580f1000 00000038
780f0000 0000000f
980ef000
510e1000 00000000
c015e400 00000040
780f1000 00000007
680f0000 40C38780 00000000
20000000
 
Last edited by dsrules,

TomSwitch

Well-Known Member
Member
Joined
Jan 10, 2019
Messages
4,545
Trophies
1
Age
44
XP
14,702
Country
United States
could you test this pointer and see if it works for you?
when decimal is less than 5000 becomes 99999 and pretty much nops it when hp becomes double
Code:
[Infinite HP]
580f0000 02f72d70
580f1000 000000c8
580f1000 00000080
580f1000 00000038
780f0000 0000000f
980ef000
510e1000 00000000
c015e400 00000040
610f0000 00000000 00000060
20000000
580f0000 02f72d70
580f1000 000000c8
580f1000 00000080
580f1000 00000038
780f0000 00000008
980ef000
580e1000 00000000
c083e400 00000000 00001388
640f0000 00000000 0001869f
20000000
So you actually mean decimal data type or do you mean single precision floating point?
I have only seen decimal data type once in game. It's a WTF moment, why oh why they need to be so precise. Can't remember which game.
 

dsrules

Well-Known Member
Member
Joined
Sep 20, 2005
Messages
8,730
Trophies
2
XP
6,293
Country
So you actually mean decimal data type or do you mean single precision floating point?
I have only seen decimal data type once in game. It's a WTF moment, why oh why they need to be so precise. Can't remember which game.
it always starts as decimal ex. hp 200 = c8, after got hit sometimes it stays as decimal sometimes it changes to double (like c8 > 180.0 ,4066800000000000)
if I remember correctly, the other game that starts with decimal then changes to float after got hit was Castle Crashers
 

TomSwitch

Well-Known Member
Member
Joined
Jan 10, 2019
Messages
4,545
Trophies
1
Age
44
XP
14,702
Country
United States
it always starts as decimal ex. hp 200 = c8, after got hit sometimes it stays as decimal sometimes it changes to double (like c8 > 180.0 ,4066800000000000)
if I remember correctly, the other game that starts with decimal then changes to float after got hit was Castle Crashers
you mean integer, which is fairly common that game move between integer and floating point. Compiler auto convert them for you.
The instruction is scvtf
mov w8, 0xc8
after scvtf s0, w8
s0 will have 200.0

or if you want double then after scvtf d0, w8
d0 will have 200.0
 
Last edited by TomSwitch,

Gamerjin

Well-Known Member
Member
Joined
May 25, 2016
Messages
2,798
Trophies
1
XP
6,493
Country
United States
could you test this pointer and see if it works for you?
when decimal is less than 5000 becomes 99999 and pretty much nops it when hp becomes double
Code:
[Infinite HP]
580f0000 02f72d70
580f1000 000000c8
580f1000 00000080
580f1000 00000038
780f0000 0000000f
980ef000
510e1000 00000000
c015e400 00000040
610f0000 00000000 00000060
20000000
580f0000 02f72d70
580f1000 000000c8
580f1000 00000080
580f1000 00000038
780f0000 00000008
980ef000
580e1000 00000000
c083e400 00000000 00001388
640f0000 00000000 0001869f
20000000
while im manually tracing this pointer, if you edit the value, it not the current+correct hp, it triggers a softlock. (one that is fixable by putting back the correct value.)
 

dsrules

Well-Known Member
Member
Joined
Sep 20, 2005
Messages
8,730
Trophies
2
XP
6,293
Country
while im manually tracing this pointer, if you edit the value, it not the current+correct hp, it triggers a softlock. (one that is fixable by putting back the correct value.)
but does the pointer work in different area of the game? and do you mean it also needs a 2nd pointer value?
update: I couldn't start a new game when the decimal part of the cheat is enabled, maybe the value can not be too big, if set to 999 then it has no problem
 
Last edited by dsrules,

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
    Psionic Roshambo @ Psionic Roshambo: https://www.youtube.com/watch?v=dZbUuSmFgMo