ROM Hack CTRPluginFramework - Blank Plugin - Now with Action Replay

MrHaqs

Well-Known Member
Newcomer
Joined
Jun 12, 2016
Messages
97
Trophies
0
Age
21
Location
Home
XP
219
Country
United Kingdom
Hey, I'm not sure if it's possible, but is there a way to make a code that will increase/decrease a value every time you input a button combo?
an example would be:
if R+X:
Add 100 to ADDRESS VALUE
end if
Yea we was just discussing that, look a page back and on this one, however the solution isn't very pleasant.
 

Bikkudie

Member
Newcomer
Joined
Jul 22, 2018
Messages
16
Trophies
0
Age
22
XP
74
Country
Canada
I would also like to make a code that gets it's values from another code so that it persists through loading zones. Is there any way of doing that and if so, could someone explain it please. Sorry if this has been answered already.

A better way of explaining what I need to do is that I only really need to know how to have a code that reads a value at a certain address.

example:
GET XXXXXXXX FROM YYYYYYYY
YYYYYYYY = XXXXXXXX
END
This would allow any kind of code that gets reset when the game loads to stay at the same value after it's finished loading.
 
Last edited by Bikkudie,

MrHaqs

Well-Known Member
Newcomer
Joined
Jun 12, 2016
Messages
97
Trophies
0
Age
21
Location
Home
XP
219
Country
United Kingdom
I would also like to make a code that gets it's values from another code so that it persists through loading zones. Is there any way of doing that and if so, could someone explain it please. Sorry if this has been answered already.

A better way of explaining what I need to do is that I only really need to know how to have a code that reads a value at a certain address.

example:
GET XXXXXXXX FROM YYYYYYYY
YYYYYYYY = XXXXXXXX
END
This would allow any kind of code that gets reset when the game loads to stay at the same value after it's finished loading.
Can't you just set the offset that changes through a loading screen to a static number?

By this I mean just changing the offset and keeping the cheat activated?

Also after some testing i've realised that the F1 code does allow adding but its really fast (sort of) for example in majoras mask 3d eur:
Code:
DD000000 00000400
F1776318 00000001
Adds one ruppee but after pushing X however it's really sensitive in a way and thinks your holding x and adds more ruppees and I think this was @Bummibaer 's problem as his value was changing too fast so he thought it was multiplying but if you tap x really fast it does add one ruppee.
 

MrHaqs

Well-Known Member
Newcomer
Joined
Jun 12, 2016
Messages
97
Trophies
0
Age
21
Location
Home
XP
219
Country
United Kingdom
That doesn't work for some values if the value was changed by another code
Oh then you'll have to look for pointers and as for that you're going to have to investigate yourself. But heres a video that could help you out:



Its the first video I found so I don't know if it would help.
 
Last edited by MrHaqs,

Bikkudie

Member
Newcomer
Joined
Jul 22, 2018
Messages
16
Trophies
0
Age
22
XP
74
Country
Canada
I don't think that it's pointers as the location never changes, it's always at 089EFC9C. The value just gets reset to 3F800000 after some loading zones, I'll still check the video just in case.
 

MrHaqs

Well-Known Member
Newcomer
Joined
Jun 12, 2016
Messages
97
Trophies
0
Age
21
Location
Home
XP
219
Country
United Kingdom
I don't think that it's pointers as the location never changes, it's always at 089EFC9C. The value just gets reset to 3F800000 after some loading zones, I'll still check the video just in case.
Then changing the value of fhe offset should keep it the same should it not?

What game are you testing and what code are you trying to make?
 

Bikkudie

Member
Newcomer
Joined
Jul 22, 2018
Messages
16
Trophies
0
Age
22
XP
74
Country
Canada
I'm basically trying to take the code that adds to a value when a button is pressed and have it's value persist through load zones that would reset it. I'm using it on the player's scale value in the game Pokemon Super Mystery Dungeon as a test so that I can use it in other games and for other addresses once it works.
 

MrHaqs

Well-Known Member
Newcomer
Joined
Jun 12, 2016
Messages
97
Trophies
0
Age
21
Location
Home
XP
219
Country
United Kingdom
I'm basically trying to take the code that adds to a value when a button is pressed and have it's value persist through load zones that would reset it. I'm using it on the player's scale value in the game Pokemon Super Mystery Dungeon as a test so that I can use it in other games and for other addresses once it works.
Oh ok well I can't help you then I'm afraid, sorry about that just keep trying you'll get it eventually.
 

Bikkudie

Member
Newcomer
Joined
Jul 22, 2018
Messages
16
Trophies
0
Age
22
XP
74
Country
Canada
That's alright, I honestly didn't think anyone would know how to do it.

(EDIT)
I found a way to do it, or at least a start! It looks like this:
Code:
D3000000 089EFC00 --- Sets offset 1
DD000000 00004020 --- Checks for ZL+Left (this will need to be changed to get it fully working)
D9000000 0000009C --- Sets Data#1 to the value at [0000009C + offset]
DF000002 00020000 --- Copies Data#1 to Storage#1 (not sure if required)
D0000000 00000000 --- End if
DD000000 00004010 --- Checks for ZL+Right (can be changed to whatever)
DF000002 00010000 --- copies storage#1 to data#1
D6000000 0000009C --- writes the value at [0000009C+offset] to the value at data#1
D2000000 00000000 --- End all

One thing that definitely be changed if possible is the ZL+Right check. If at all possible it could check if the value at the address is back to it's default and then set it back to it's previous value.

EDIT 2
We might be able to drop the storage bits if we use
D2000000 00000001
to exit the code WITHOUT clearing the data

Final Edit

I got it fully working! it's a bit messy though, so feel free to clean it up if you want.
It requires 1 address that gets reset between load zones (NOT THE ONE YOU ARE GOING TO HAVE SAVE)
here is the full working code:
STORAGE BETWEEN LOADING ZONES
Code:
D3000000 [ADDRESS TO CHANGE] (ADDRESS 1) sets offset 1
D3000001 [ADDRESS THAT GETS RESET DURING LOADS] (ADDRESS 2) sets offset 2
DF000000 00000001 sets offset 2 as active
60000000 [DEFAULT VALUE OF ADDRESS 2] checks if the value of address 2 is not it's default value
DF000000 00000000 sets offset 1 as active
D9000000 00000000 copies the value at address 1 into data
DF000002 00020000 copies data to storage
D0000000 00000001 end if
DF000002 00010000 storage back to data
DF000000 00000001 offset 2 active
50000000 [DEFAULT VALUE OF ADDRESS 2] checks if address 2's value is equal to it's default
DF000000 00000000 offset 1 active
D6000000 00000000 sets address 1 to stored value
DF000000 00000001 offset 2 active
F1000000 00000001 (WORKS BEST IF ADDRESS 2 IS A FLOAT*) adds 1 to address 2
D2000000 00000001 exit immediately

*a float should be stored as a 4 byte value with a hex value of 3F800000 if the default value is 1.000
 
Last edited by Bikkudie,

MUDD_BR

Well-Known Member
Member
Joined
Nov 17, 2008
Messages
691
Trophies
1
XP
1,435
Country
Brazil
Hello!
I´ve done all (maybe not) the steps and get this working, but no cheats appear when I touch Action Replay through the games. I´ve downloaded the DB from github and try within the folders with the game name inside sd:\cheats, won´t work. Tryied to move all the .txt files for sd:\cheats but won´t work either. Any hint?
 

Bikkudie

Member
Newcomer
Joined
Jul 22, 2018
Messages
16
Trophies
0
Age
22
XP
74
Country
Canada
Hello!
I´ve done all (maybe not) the steps and get this working, but no cheats appear when I touch Action Replay through the games. I´ve downloaded the DB from github and try within the folders with the game name inside sd:\cheats, won´t work. Tryied to move all the .txt files for sd:\cheats but won´t work either. Any hint?
I might be wrong on this, but the .txt files need to be named the same as the title ID of the game you want to use them with.
 
  • Like
Reactions: MUDD_BR

MUDD_BR

Well-Known Member
Member
Joined
Nov 17, 2008
Messages
691
Trophies
1
XP
1,435
Country
Brazil
I might be wrong on this, but the .txt files need to be named the same as the title ID of the game you want to use them with.
ah, I thought the pattern "00040000000D9D00.txt" already was the game ID, so I´ll make some research. Thanks, buddy!!

Edit: No, all the txt files are using correct title ID according to my research. weird...
 
Last edited by MUDD_BR,
  • Like
Reactions: Bikkudie

Kymsplat

Member
Newcomer
Joined
May 16, 2016
Messages
21
Trophies
0
Age
30
Location
London
Website
www.youtube.com
XP
324
Country
United Kingdom
ah, I thought the pattern "00040000000D9D00.txt" already was the game ID, so I´ll make some research. Thanks, buddy!!

Edit: No, all the txt files are using correct title ID according to my research. weird...

I ran into problems trying to use cheats on a cartridge. Maybe your doing the same?
I downloaded the same game and the cheats seemed to work fine iirc.
Also some homebrew apps might use sd:/cheats, I think there might be an alternative folder struc to use? Been a while since I set it up.
 
  • Like
Reactions: MUDD_BR

Bikkudie

Member
Newcomer
Joined
Jul 22, 2018
Messages
16
Trophies
0
Age
22
XP
74
Country
Canada
ah, I thought the pattern "00040000000D9D00.txt" already was the game ID, so I´ll make some research. Thanks, buddy!!

Edit: No, all the txt files are using correct title ID according to my research. weird...
Maybe try making a blank cheat in the game you are trying to get cheats for and then replace the .txt that that makes? I can't think of much else, unless you have the plugin itself in the wrong folder.
 
  • Like
Reactions: MUDD_BR

MrHaqs

Well-Known Member
Newcomer
Joined
Jun 12, 2016
Messages
97
Trophies
0
Age
21
Location
Home
XP
219
Country
United Kingdom
Thanks for the answers, @Bikkudie and @Kymsplat, I´ll try again later.
Are you using the EUR or US version of Altered beasts?
Oh and if you are I should also mention that the text file only contains one cheats so it would be easier to type and create the cheat instead of hassling yourself messing with files. :)
 
Last edited by MrHaqs,
  • Like
Reactions: MUDD_BR

MUDD_BR

Well-Known Member
Member
Joined
Nov 17, 2008
Messages
691
Trophies
1
XP
1,435
Country
Brazil
Are you using the EUR or US version of Altered beasts?
Oh and if you are I should also mention that the text file only contains one cheats so it would be easier to type and create the cheat instead of hassling yourself messing with files. :)
Thanks for the hint, but I´ve just tryied with super mario 3d land us ver.
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • Xdqwerty @ Xdqwerty:
    also gonna install twilight menu in my r4 flashcard
  • Psionic Roshambo @ Psionic Roshambo:
    One thing that just occurred to me.... The sound on the 2600 sucked less back then the harsh sound we hear now is from infinitely better speakers we have now, back when the 2600 was new speakers produced a almost muffled sound, like CRTs made old graphics look slightly better.
  • Psionic Roshambo @ Psionic Roshambo:
    I wonder if I could recommend that to some emulation devs that perhaps the sound could use some smoothing out to simulate those old TVs
  • Psionic Roshambo @ Psionic Roshambo:
    I think a few of the early systems could benefit from that, at least up to the 8 bit generation, by the 16 bit generation I think TVs had gotten a lot better in almost every way
  • Xdqwerty @ Xdqwerty:
    i dont have an sd card adapter but I have an usb sd card adapter
  • K3Nv2 @ K3Nv2:
    Old people games
  • Xdqwerty @ Xdqwerty:
    its not the one that comes with the r4
  • Xdqwerty @ Xdqwerty:
    doesnt work (my flashcard is from r4isdhc.com)
  • Xdqwerty @ Xdqwerty:
    might install ysmenu first
  • Psionic Roshambo @ Psionic Roshambo:
    Try Wood firmware
  • Psionic Roshambo @ Psionic Roshambo:
    For your R4
  • Psionic Roshambo @ Psionic Roshambo:
    It's old but it's the best firmware out for DS stuff
  • Xdqwerty @ Xdqwerty:
    it says it only works for the original R4, R4i Gold (r4ids.cn), R4iDSN (r4idsn.com) and Acekard R.P.G.
  • Xdqwerty @ Xdqwerty:
    nvm it does support mine
  • Xdqwerty @ Xdqwerty:
    but why choose it over ysmenu @Psionic Roshambo?
  • Xdqwerty @ Xdqwerty:
    bc im stupid?
  • Xdqwerty @ Xdqwerty:
    yea ik im stupid
  • Xdqwerty @ Xdqwerty:
    good night
  • Psionic Roshambo @ Psionic Roshambo:
    Just give it a try, but honestly if you have a 3DS you can play DS games without a card just off the internal SD card
  • Psionic Roshambo @ Psionic Roshambo:
    Slightly slower loading but a bit more convenient
  • BakerMan @ BakerMan:
    guys, my fuckin headphones have an out of place speaker
  • K3Nv2 @ K3Nv2:
    Did you try wearing them?
    B @ btjunior: @Xdqwerty 16