Tutorial  Updated

Building NTR custom firmware cheat plugins w/ cheat menu

so thanks to @cell9 for releasing the source for NTR cheat plugins that use the cheat menu instead of the outdated button toggles method that has interference with certain games.
Today is the moment you've all been waiting for. this is some simple steps on building your own cheat plugins!
first there are some prerequisites:
you'll need python 2.7 from here
https://www.python.org/download/releases/2.7/
and devkitpro from here
https://gbatemp.net/threads/ds-programming-environment-on-windows.292386/
and you'll need a computer with Windows XP/Vista/7/8/8.1/10 edit: this also works on the Ematic tablet computer that has Windows 8.1 on it
then get @cell9 's source code here
http://gbatemp.net/threads/source-cheat-menu-plugin-demo-for-ntr-cfw.411032/
and my improvement to the gameplg.c sample file here (i put a sample of adding in more cheat entries)
http://gbatemp.net/threads/source-cheat-menu-plugin-demo-for-ntr-cfw.411032/#post-5996714

ok so here's the steps

1) extract menuCheat.zip from @cell9 's source code thread and replace the gameplg.c in /menuCheat/source/ with the improved sample gameplg.c from my post.

2) open gameplg.c from /menuCheat/sources/ with your source code editor of choice (e.g. notepad++ on Windows or DroidEdit on Android), scroll to near the bottom where the cheats are and edit them with your own found with NTR debugger/Cheat Engine or from someone requesting a cheat plugin for codes they found but dont know how to build cheat plugins. then scroll down more for the cheat entry names and edit them to match the cheats you put in. to add more entries, simply follow the pattern and format of them with proper bracketing and tab-spacing and follow the numbering for the cheats (0, 1, 2, 3, 4, etc.) and hit save in your source code editor. make sure your edited gameplg.c is in /menuCheat/sources/ ! (use FTP transfers if you used DroidEdit like I did lmao)

3) then go to the /menuCheat/ folder and doubleclick the startenv.bat (make sure python and devkitpro are installed before you do this!) and it'll open a command prompt window with the directory aimed at /menuCheat/. then type in build.bat and hit enter! at this point it will run python and build your cheat plugin, which will appear in the /menuCheat/ folder. you can then place cheat.plg in /plugin/[titleid]/ with the appropriate titleid for your game from here
http://3dsdb.com/ and test your NTR custom firmware plugin cheats!
note: @cell9 said so himself that these plugins won't work online so don't expect to ruin games online with this!

Enjoy~
 
Last edited by supermariorick,

supermariorick

Well-Known Member
OP
Member
Joined
Jun 18, 2010
Messages
640
Trophies
1
XP
816
Country
United States
Is there any way to decompile a plugin? I have plenty downloaded from various sites, but they're often written in the button combo format, and I'm willing to do the work updating them to menu plugins, but I don't have the source.
sorry no way to reverse engineer cheat plugins without source yet
how do I get the codes for games? are they action replay codes or spider3ds codes???
these are NTR CFW cheat plugin codes. you need to cheat search with NTR debugger and possibly dump RAM and take a peek at the RAMdumps with Cheat Engine or a hex editor. spider3dstools arcodes can be converted if 0x14000000 range in RAM is supported in virtual memory for a game when loaded in NTR CFW. NTR CFW 3.3-3D can be loaded on top of any CFW installation with the BootNTR.cia file and can load these cheat plugins on any game except extra memory mode games on old3ds (Smash 4 and MH4U and probably MHX)
 

DarkRioru

reach for the stars
Member
Joined
Aug 29, 2015
Messages
2,114
Trophies
0
Age
26
Location
looking up at the stars
Website
steamcommunity.com
XP
1,882
Country
United States
these are NTR CFW cheat plugin codes. you need to cheat search with NTR debugger and possibly dump RAM and take a peek at the RAMdumps with Cheat Engine or a hex editor. spider3dstools arcodes can be converted if 0x14000000 range in RAM is supported in virtual memory for a game when loaded in NTR CFW. NTR CFW 3.3-3D can be loaded on top of any CFW installation with the BootNTR.cia file and can load these cheat plugins on any game except extra memory mode games on old3ds (Smash 4 and MH4U and probably MHX)
how do I dump ram of my games??
 

DarkRioru

reach for the stars
Member
Joined
Aug 29, 2015
Messages
2,114
Trophies
0
Age
26
Location
looking up at the stars
Website
steamcommunity.com
XP
1,882
Country
United States
look in the spider arcode by KazoWAR thread until you find a post about a tutorial of how to do this with NTR debugger. I can't just spoonfeed you every little detail about hacking video games. I have somewhat of a life.
ok... you didn't need to be rude about it.. :glare:
 
  • Like
Reactions: AileenLumina

AileenLumina

Python main, software engineer and API designer
Member
Joined
Sep 27, 2015
Messages
631
Trophies
0
Age
26
XP
614
Country
Germany
use the magnifying glass and search the spider arcode thread for making cheats with NTR debugger. this is for taking cheats and building the plugins for NTR, not on how to find the cheats yourself.
Yes, I know. It's just that you could at least link to such instructions because people like me may expect such instructions here. No offense at all, your instructions are really useful and I appreciate your work. :D
 

supermariorick

Well-Known Member
OP
Member
Joined
Jun 18, 2010
Messages
640
Trophies
1
XP
816
Country
United States
Yes, I know. It's just that you could at least link to such instructions because people like me may expect such instructions here. No offense at all, your instructions are really useful and I appreciate your work. :D
no I shouldn't have to spoonfeed what can be found with 5 seconds of searching with the right search terms in the right thread.
 

Ailuros27

Well-Known Member
Member
Joined
Apr 7, 2015
Messages
732
Trophies
0
XP
421
Country
United States
Actually, searching for this particular topic can be difficult due to the fact that GBAtemp's search won't let you search for anything shorter than five characters.
 

supermariorick

Well-Known Member
OP
Member
Joined
Jun 18, 2010
Messages
640
Trophies
1
XP
816
Country
United States
Why did you create this tutorial then?
because I wanted to know how to build them and I already know how to make basic cheats myself; and when I finally found out how to build the plugins I decided to share it. however I am no expert at making codes or cheat searching. it's not like I can teach you that anyway. spend some time with Cheat Engine and flash games and then adapt that to RAMdumps from NTR debugger. and if you can't figure out how to to use the search functions on GBAtemp how is that my problem? I don't have the answers for everything and I can't just hand ourlt what you can figure out or find yourself if the knowledge already exists somewhere. I only made this tutorial because I actually bothered looking everywhere first and only found a very bare tutorial on building for the outdated version of the plugin and did a little research to figure out how myself. you can't just always demand the answers to everything when some things are already there and all that's needed is a little extra work to get it. be glad a tutorial for this even exists. it is one of @liomajor 's posts you should be looking for and just figure out how to search on GBAtemp properly. don't just be lazy and give up the first time you can't get the search to work lmao. i found any information at all with persistence.
 
Last edited by supermariorick,

supermariorick

Well-Known Member
OP
Member
Joined
Jun 18, 2010
Messages
640
Trophies
1
XP
816
Country
United States
ok so there's a common problem with ntr debugger that I think should be made known:
if you use NTR CFW on a game that doesn't use internet connection for online services then the game disconnects from the internet to save battery - even if you have a charger plugged in. this breaks attempting to use the debugger on games like ocarina of time 3D as due to this pointless battery-saving attempt that can't be turned off even if you plug in the charger wireless connections are disabled and ntr debugger can't connect. what's worse is there is no workaround anywhere yet. i can't find arcodes then port them over as there is no source release for the ntr plugin from speedfly so i can't use rupees as the common offset address as reference to attempt to take codes found with spider arcode dumps and port them. this is obviously crippling for those that want to use NTR debugger to make cheats as a lot of games don't have online services and thus this crap happens. until @cell9 makes a workaround, there is no way to use a lot of codes on a lot of games with NTR debugger. i doubt anything new will be made after 3.3 came out that will actually fix this problem.
 

supermariorick

Well-Known Member
OP
Member
Joined
Jun 18, 2010
Messages
640
Trophies
1
XP
816
Country
United States
Hey, I can't figure out how to convert Gateshark codes to the NTR format.

Could someone create a plugin for Bravely Second please ?
http://www.fort42.com/gateshark/game1873/

Thanks !
there's no full converter yet. creating a cheat plugin with Gateshark codes would require breaking down the functions of each line and converting it to a complex cheat entry in C which is much different. so far the only easy conversions are the one line codes with simple value changes. those can be put right in to a cheat plugin but they require that they actually are the same offset address when used with NTR.
 

DJAlucard

Well-Known Member
Newcomer
Joined
Aug 15, 2007
Messages
50
Trophies
1
Age
39
Location
Restaurant at the End of the Universe
XP
298
Country
Canada
So this is what i have in the gameplg.c file, but yet when i load the game with NTR, i have the list of options, but not cheat options, have I missed a step?
LFoB30O.png
 
  • Like
Reactions: chronoss

BerserkLeon

Not-so-new member
Member
Joined
Mar 22, 2010
Messages
460
Trophies
1
Age
34
Location
Pennsylvania
XP
538
Country
United States
ok so there's a common problem with ntr debugger that I think should be made known:
if you use NTR CFW on a game that doesn't use internet connection for online services then the game disconnects from the internet to save battery - even if you have a charger plugged in. this breaks attempting to use the debugger on games like ocarina of time 3D as due to this pointless battery-saving attempt that can't be turned off even if you plug in the charger wireless connections are disabled and ntr debugger can't connect. what's worse is there is no workaround anywhere yet. i can't find arcodes then port them over as there is no source release for the ntr plugin from speedfly so i can't use rupees as the common offset address as reference to attempt to take codes found with spider arcode dumps and port them. this is obviously crippling for those that want to use NTR debugger to make cheats as a lot of games don't have online services and thus this crap happens. until @cell9 makes a workaround, there is no way to use a lot of codes on a lot of games with NTR debugger. i doubt anything new will be made after 3.3 came out that will actually fix this problem.
Hey, I haven't had to use this yet, but I just reread your post and remembered seeing something about that recently.

From BootNTR wiki:

Misc

Some games will disable Wi-Fi connection after it started, to prevent the Wi-Fi to be disconnected, use the following command in NTR Debugger before starting the game:

write(0x0105AE4, (0x70, 0x47), pid=0x1a)

It will also prevent 3DS from re-connecting a previously-disconnected Wi-Fi AP
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    Xdqwerty @ Xdqwerty: