Hmm.. seems like there isn't just a memregion of the correct size.
I would have to do some dumps and I'm not working on the 3ds currently. Sorry. Maybe somebody else can do it.
Hmm.. seems like there isn't just a memregion of the correct size.
I would have to do some dumps and I'm not working on the 3ds currently. Sorry. Maybe somebody else can do it.
Hm, I'm trying to use parts of your modded client in a private project but for some reason I don't receive any traffic from commands (works fine on the clean build from your repo).
In particular, I'm trying to get the pid for a specific process but due to the lack of response your logMsg.StartsWith("pid: ") addition and subsequently my modified routine doesn't trigger. Listprocess() doesn't show any response apart from null in the log either, it's really weird. Sayhello() on the other hand shows the green flash on the console as intended so somehow it's just ingoing traffic I guess?
Any ideas from top off your head? Otherwise I'll just send you a trimmed down version of the project source code if you feel like looking at it. Lemme know.
NTR responds with 1 message that has all these pids together. Separate them into a string array using String.split(Environment.NewLine); Then get the pids.
Yeah, the problem is that I don't get this very response from the server for some reason. Not sure what's wrong, neither running the command "Listprocess()" nor the actual "SendEmptyPacket(5)" returns anything.
Or if it is returned, it's not picked up in PacketRecvThread
Hello, GBAtemp.
Some weeks ago I created a fork of the original NTR debugger made by cell9 from the following github page: https://github.com/44670/NTRClient . My intention was to create some easier cheating methods for the 3ds then having to write a NTR plugin yourself or buying gateway. I also wanted to make it easier for people to start working with the NTR debugger, therefor I added some buttons to make life easier. Since some of you have already seen this debugger on reddit I finally decieded to make a post here. Also because people wanted to use gateshark codes with NTR.
This does only work with kernel access. You need a sysNAND version of 9.2 or below. I'd recommend using NTR on emuNAND. All versions are supported.
I'm no longer working on this project. If somebody wants to for the project, go to the github page and do so. Hope somebody does so.
Basic tab
This is the "BASIC" tab as of Version 1.2-2
As you can see in the first tab I created separate buttons to 'connect', 'disconnect', 'list all processes', 'see the memlayout', 'dump a file of a specified memregion', 'See an address' and 'write to an address'.
When starting your 3ds you have to start NTR first with any method you like. I prefer the BootNTR cia for version NTR 3.3. When you started NTR press X+Y and start the debugger. When that's finished just connect the debugger on your pc by entering the Nintendo 3ds IP address in the corresponding textfield. Press 'Connect'. This might take some tries, NTR is pretty buggy when connecting. Often the connection will just 'Timeout' after maybe 30 seconds. If that happens you have to try again. This is a problem with NTR itself. Once you connected start a game and press the 'List processes' button. You should see a list of all currently running processes on your 3ds. One of them should stand out. Game Process names often start capitalized or are in full caps. The process name is not the same as the game name. 'Monster Hunter 4 Ultimate' for example has the process name 'REDGIANT'. Next to the process list you should see the PID of that process. Enter the PID, which looks something like: 29, 2A, 3A, 3F, 34.. etc , into the 'Process PID' textbox - You mustn't write the 0x in front of the PID.
Once you finished setting up everything you can finally start using cheats. I prepared some sample cheatcodes in the corresponding tabs ( EUR, USA, JPN ), but there aren't very many. You might also notice the Gateshark tab. For some gateshark instructions please open the following SPOILER
The gateshark tab as of version 1.2-2
This is the gateshark tab. You can use most gateshark codes using this. Codes that require button presses will ignore the button presses, since you can't emulate this. There are also a few not yet supported gateshark codes, mostly the conditional codes. If your code doesn't work, please report it in the comments.
Using the gateshark codes with the modified NTR debugger:
Once you grabbed a gateshark code from fort42 simply insert it into the textbox with the default code
Code:
00000000 00000000
and override it. Press 'Try Gateshark' first to see this code can be compiled. This doesn't automatically mean the code will work! If some numbers and letters appeared in the right textbox hit 'Execute Gateshark'. This will execute it.
For gateshark codes that have multiple different effect depending on the button presses, please split them using the following:
To split a gateshark code into multiple different codes we will use the following example ( because I'm bad at explaining )
Code:
B8100000 00000000 ; READ OFFSET FROM 8100000
DD000000 00000001 ; BUTTON COMBO INDEX 1
00100000 12345678 ; WRITE 12345678 TO 100000
D0000000 00000000 ; END BUTTON COMBO
DD000000 00000002 ; BUTTOM COMBO INDEX 2
00200000 90ABCDEF ; WRITE 90ABCDEF TO 200000
D0000000 00000000 ; END BUTTON COMBO
We can split this code into 3 different parts. The following spoiler shows the same code again, with the parts infront of the lines:
Code:
1 : B8100000 00000000 ; READ OFFSET FROM 8100000
2 : DD000000 00000001 ; BUTTON COMBO INDEX 1
2 : 00100000 12345678 ; WRITE 12345678 TO 100000
2 : D0000000 00000000 ; END BUTTON COMBO
3 : DD000000 00000002 ; BUTTOM COMBO INDEX 2
3 : 00200000 90ABCDEF ; WRITE 90ABCDEF TO 200000
3 : D0000000 00000000 ; END BUTTON COMBO
As you can see part 2 and 3 are the individual codes with the button presses in front of them. Part 1 is needed for both part 2 and part 3, since it's written without any button combo needed. That way we can split this into 2 different codes. It will look the following:
Code:
[OUR CODE 1]
B8100000 00000000 ; READ OFFSET FROM 8100000
DD000000 00000001 ; BUTTON COMBO INDEX 1
00100000 12345678 ; WRITE 12345678 TO 100000
D0000000 00000000 ; END BUTTON COMBO
[OUR CODE 2]
B8100000 00000000 ; READ OFFSET FROM 8100000
DD000000 00000002 ; BUTTOM COMBO INDEX 2
00200000 90ABCDEF ; WRITE 90ABCDEF TO 200000
D0000000 00000000 ; END BUTTON COMBO
Don't worry about the unneccessary Button combos, the debugger will simply ignore them.
Well done, you just split your code into 2. You can also ask me if you need help. That's no problem
Here are some screenshots of the modified NTR debugger.
When starting the debugger
NTR debugger in use:
As of version 1.4 I started making some small previews of upcoming features. If you want to view them just open the following spoiler
Clearing the log
Heartbeat codes - Gateshark codes automatically executed all 4 seconds.
DISCLAIMER
I am in no way responsive or to blame if you get caught cheating online and get banned. This is primarily for singleplayer use only! If you got banned it's your own fault!
I know but I thought there is some kind of code to make it look like that in the gateway cheats menu, it would be helpful, oh well thanks for the quick reply, bye.
Hello, GBAtemp.
Some weeks ago I created a fork of the original NTR debugger made by cell9 from the following github page: https://github.com/44670/NTRClient . My intention was to create some easier cheating methods for the 3ds then having to write a NTR plugin yourself or buying gateway. I also wanted to make it easier for people to start working with the NTR debugger, therefor I added some buttons to make life easier. Since some of you have already seen this debugger on reddit I finally decieded to make a post here. Also because people wanted to use gateshark codes with NTR.
This does only work with kernel access. You need a sysNAND version of 9.2 or below. I'd recommend using NTR on emuNAND. All versions are supported.
I'm no longer working on this project. If somebody wants to for the project, go to the github page and do so. Hope somebody does so.
Basic tab
This is the "BASIC" tab as of Version 1.2-2
As you can see in the first tab I created separate buttons to 'connect', 'disconnect', 'list all processes', 'see the memlayout', 'dump a file of a specified memregion', 'See an address' and 'write to an address'.
When starting your 3ds you have to start NTR first with any method you like. I prefer the BootNTR cia for version NTR 3.3. When you started NTR press X+Y and start the debugger. When that's finished just connect the debugger on your pc by entering the Nintendo 3ds IP address in the corresponding textfield. Press 'Connect'. This might take some tries, NTR is pretty buggy when connecting. Often the connection will just 'Timeout' after maybe 30 seconds. If that happens you have to try again. This is a problem with NTR itself. Once you connected start a game and press the 'List processes' button. You should see a list of all currently running processes on your 3ds. One of them should stand out. Game Process names often start capitalized or are in full caps. The process name is not the same as the game name. 'Monster Hunter 4 Ultimate' for example has the process name 'REDGIANT'. Next to the process list you should see the PID of that process. Enter the PID, which looks something like: 29, 2A, 3A, 3F, 34.. etc , into the 'Process PID' textbox - You mustn't write the 0x in front of the PID.
Once you finished setting up everything you can finally start using cheats. I prepared some sample cheatcodes in the corresponding tabs ( EUR, USA, JPN ), but there aren't very many. You might also notice the Gateshark tab. For some gateshark instructions please open the following SPOILER
The gateshark tab as of version 1.2-2
This is the gateshark tab. You can use most gateshark codes using this. Codes that require button presses will ignore the button presses, since you can't emulate this. There are also a few not yet supported gateshark codes, mostly the conditional codes. If your code doesn't work, please report it in the comments.
Using the gateshark codes with the modified NTR debugger:
Once you grabbed a gateshark code from fort42 simply insert it into the textbox with the default code
Code:
00000000 00000000
and override it. Press 'Try Gateshark' first to see this code can be compiled. This doesn't automatically mean the code will work! If some numbers and letters appeared in the right textbox hit 'Execute Gateshark'. This will execute it.
For gateshark codes that have multiple different effect depending on the button presses, please split them using the following:
To split a gateshark code into multiple different codes we will use the following example ( because I'm bad at explaining )
Code:
B8100000 00000000 ; READ OFFSET FROM 8100000
DD000000 00000001 ; BUTTON COMBO INDEX 1
00100000 12345678 ; WRITE 12345678 TO 100000
D0000000 00000000 ; END BUTTON COMBO
DD000000 00000002 ; BUTTOM COMBO INDEX 2
00200000 90ABCDEF ; WRITE 90ABCDEF TO 200000
D0000000 00000000 ; END BUTTON COMBO
We can split this code into 3 different parts. The following spoiler shows the same code again, with the parts infront of the lines:
Code:
1 : B8100000 00000000 ; READ OFFSET FROM 8100000
2 : DD000000 00000001 ; BUTTON COMBO INDEX 1
2 : 00100000 12345678 ; WRITE 12345678 TO 100000
2 : D0000000 00000000 ; END BUTTON COMBO
3 : DD000000 00000002 ; BUTTOM COMBO INDEX 2
3 : 00200000 90ABCDEF ; WRITE 90ABCDEF TO 200000
3 : D0000000 00000000 ; END BUTTON COMBO
As you can see part 2 and 3 are the individual codes with the button presses in front of them. Part 1 is needed for both part 2 and part 3, since it's written without any button combo needed. That way we can split this into 2 different codes. It will look the following:
Code:
[OUR CODE 1]
B8100000 00000000 ; READ OFFSET FROM 8100000
DD000000 00000001 ; BUTTON COMBO INDEX 1
00100000 12345678 ; WRITE 12345678 TO 100000
D0000000 00000000 ; END BUTTON COMBO
[OUR CODE 2]
B8100000 00000000 ; READ OFFSET FROM 8100000
DD000000 00000002 ; BUTTOM COMBO INDEX 2
00200000 90ABCDEF ; WRITE 90ABCDEF TO 200000
D0000000 00000000 ; END BUTTON COMBO
Don't worry about the unneccessary Button combos, the debugger will simply ignore them.
Well done, you just split your code into 2. You can also ask me if you need help. That's no problem
Here are some screenshots of the modified NTR debugger.
When starting the debugger
NTR debugger in use:
As of version 1.4 I started making some small previews of upcoming features. If you want to view them just open the following spoiler
Clearing the log
Heartbeat codes - Gateshark codes automatically executed all 4 seconds.
DISCLAIMER
I am in no way responsive or to blame if you get caught cheating online and get banned. This is primarily for singleplayer use only! If you got banned it's your own fault!
"No connection could be made because the target machine actively refused it " Any help on fixing this? also I do not know if I opened the proper debugger folder since there really is not one labeled it.
Ok I got to the part where I need the pid and of course I have that of the game process but where do I enter it? there is no pid box under ip.
at this point I put that PID into the hex id and then put in some codes and my 3ds crashed. this is really fun XD
If there are no processes in the combobox, just press the list processes button. It will send 'listprocesses()', then just select the process you need.
@imthe666st
Can you please link to the newer better tool you're talking of in your report before I close this? I'd like somewhere to redirect users before locking the thread.
For using Gateshark cheats, the original intent of this debugger, use Nanquitas Gateshark2NTR as seen in this thread.
ShinyMK created CTR-V for Video streaming as seen in this thread.
After a couple days of Nintendo releasing their 18.0.0 firmware update, @SciresM releases a brand new update to his Atmosphere NX custom firmware for the Nintendo...
Today, April 8th, 2024, at 4PM PT, marks the day in which Nintendo permanently ends support for both the 3DS and the Wii U online services, which include co-op play...
Hello, GBAtemp members! After a prolonged absence, I am delighted to announce my return and upgraded form to you today...
Introducing tempBOT AI 🤖
As the embodiment...
With Apple having recently updated their guidelines for the App Store, iOS users have been left to speculate on specific wording and whether retro emulators as we...
The highly popular and accurate FPGA hardware, MisterFGPA, has received today a brand new update with a long-awaited feature, or rather, a new core for hardcore...
The time has finally come, and after many, many years (if not decades) of Apple users having to side load emulator apps into their iOS devices through unofficial...
A new Nintendo Switch firmware update is here. System software version 18.0.1 has been released. This update offers the typical stability features as all other...
The romhacking community is always a source for new ways to play retro games, from completely new levels or stages, characters, quality of life improvements, to flat...
Retro handheld manufacturer Anbernic is releasing a refreshed model of its RG35XX handheld line. This new model, named RG35XX 2024 Edition, features the same...
Quite a bit of news have unfolded in the past couple of days in regards to the Sonic franchise, for both its small and big screens outings.
To start off, the...
Today, April 8th, 2024, at 4PM PT, marks the day in which Nintendo permanently ends support for both the 3DS and the Wii U online services, which include co-op play...
Hello, GBAtemp members! After a prolonged absence, I am delighted to announce my return and upgraded form to you today...
Introducing tempBOT AI 🤖
As the embodiment...
After a couple days of Nintendo releasing their 18.0.0 firmware update, @SciresM releases a brand new update to his Atmosphere NX custom firmware for the Nintendo...
Nintendo might just as well be a law firm more than a videogame company at this point in time, since they have yet again issued their now almost trademarked usual...
With Apple having recently updated their guidelines for the App Store, iOS users have been left to speculate on specific wording and whether retro emulators as we...
The time has finally come, and after many, many years (if not decades) of Apple users having to side load emulator apps into their iOS devices through unofficial...
A new Nintendo Switch firmware update is here. System software version 18.0.1 has been released. This update offers the typical stability features as all other...
Two classic titles join the Nintendo Switch Online Expansion Pack game lineup. Available starting April 24th will be the motorcycle racing game Extreme G and another...
The highly popular and accurate FPGA hardware, MisterFGPA, has received today a brand new update with a long-awaited feature, or rather, a new core for hardcore...
Nintendo has recently announced through their social media accounts that a new Indie World stream will be airing tomorrow, scheduled for April 17th, 2024 at 7 a.m. PT...