Homebrew PKMN-NTR: Real-time memory editing program for Pokémon games [WIP]

  • Thread starter Thread starter drgoku282
  • Start date Start date
  • Views Views 190,064
  • Replies Replies 1,149
  • Likes Likes 23
Another beta version: https://github.com/drgoku282/PKMN-NTR/releases/tag/3.6.6588

This adds the Breeding bot for USUM, it was tested on Ultra Moon, so Ultra Sun might not work (reverse of the Wonder Trade bot, lol). I made a bit of style changes and hope I didn't break anything. As always, if something doesn't work, please report and keep the log.

Awesome will sure to be testing of this soon!


Sent from my iPhone using Tapatalk
 
Alright i tested the latest build and for some reason the WT Bot won't work
for me, The script builder and remote control works just fine. The error tells me to go to the
wondertrade screen and try again even though im at the screen. Is there anyway to solve this?
 
Alright i tested the latest build and for some reason the WT Bot won't work
for me, The script builder and remote control works just fine. The error tells me to go to the
wondertrade screen and try again even though im at the screen. Is there anyway to solve this?

What game are you trying it in? The WT bot was only properly tested in Ultra Sun, so if you're in Ultra Moon we may have the predicted offsets wrong. Please tell us which game version you're using and post the bot log.
 
Last edited by denoflions,
What game are you trying it in? The WT bot was only properly tested in Ultra Sun, so if you're in Ultra Moon we may have the predicted offsets wrong. Please tell us which game version you're using and post the bot log.
I am on ultra sun and here's the log for the bot.
 

Attachments

The WT bot doesn't work in Ultra Moon. On the wonder trade screen with the big start button, app tells me to go to the wonder trade screen and try again. Breeding bot works just fine.
 

Attachments

Hello, not dead yet, just a quick update: I haven't got too much free time last month, so I haven't been able to work on this project, but I think I can start working on 1.2 compatibility next week.
 
Hey, just thought I'd let you know a couple of the offsets for 1.2:

NFC patching: 0x3F3424 in US, 0x3F3428 in UM
Also, the offset for the EK7 currently being viewed while in the PC is 0x30000298 (applies to all Gen 7 games, if I remember correctly)

P.S.: Feel free to check out the features I've added to my fork of PKMN-NTR (most of the stuff isn't up-to-date because I'm lazy)
 
So, in the breeding bot there is an option for quick breed where the daycare man always has an egg ready. How is this done? Is there a patch I can apply to my game like the one step egg hatch or no outlines type of ips patch that would give me the quick breed always ingame?
 
New beta version is up: https://github.com/drgoku282/PKMN-NTR/releases/tag/3.6.6637

This adds 1.2 update support and soft-reset bot for USUM. I've only tested it on Event and Wild Pokémon mode. Offsets are only tested on Ultra Sun, timing might be a bit off so report if the bots are derping.

On soft-reset bot, I didn't disable the other modes in USUM, so you guys can test them on USUM legendary pokémon. If no mode works on a certain pokemon, you can help by contributing the save file (via MP if you wish) so I can add them later. Anyways, please report if certain mode works for certain pokemon.

Hey, just thought I'd let you know a couple of the offsets for 1.2:

NFC patching: 0x3F3424 in US, 0x3F3428 in UM
Also, the offset for the EK7 currently being viewed while in the PC is 0x30000298 (applies to all Gen 7 games, if I remember correctly)

P.S.: Feel free to check out the features I've added to my fork of PKMN-NTR (most of the stuff isn't up-to-date because I'm lazy)

Cool features, but I'm also too lazy check for conflicts due outdated code, lol, might look at them in the next weeks.

So, in the breeding bot there is an option for quick breed where the daycare man always has an egg ready. How is this done? Is there a patch I can apply to my game like the one step egg hatch or no outlines type of ips patch that would give me the quick breed always ingame?

It's done by setting a single bit in the RAM (see offsets in source code). I think it's possible to have a patch.
 
thanks for fixing the bug!

the wonder trade bot seems more unstable than last time in my opinion.

after every two pokemon at the start of the box, the bot exits out. then it attempts to start a link battle. at the end of the box, the bot doesn't go forward a box (it highlights the first pokemon on the previous box) and it errors out immediately.

edit: ultra sun version
 
Last edited by dotarice,
Bot: START Gen 7 Wonder Trade bot
Bot: Backup boxes
NTR: Read 222720 bytes of data starting at address 0x33015AB0
NTR: Read 0x36600 bytes at address 0x33015AB0
packet: cmd = 9, dataLen = 222720
Bot: Look for pokemon to trade
NTR: Read pokémon data at box 4, slot 1
NTR: Read 0xE8 bytes at address 0x3301AC40
packet: cmd = 9, dataLen = 232
NTR: Read sucessful - PID 0x588BE7EC
Bot: Pokémon found - 0xEC8D
Bot: Set current box
NTR: Write value 0x00000003 at address 0x33015AA7
NTR: Write sucessful
Bot: Test if the Wonder Trade screen is shown
NTR: Read data at address 0x006A62B2 during 5000 ms
NTR: Expected value 0x00000000 to 0x00000040
NTR: Read 0x4 bytes at address 0x006A62B2
packet: cmd = 9, dataLen = 4
NTR: Read sucessful - 0x00000000
NTR: Value in range: YES
Bot: Press Start
NTR: Send button command 0xFFE during 250 ms
NTR: Button command sent, no feedback provided
Bot: Test if the boxes are shown
NTR: Read data at address 0x006A6132 during 5000 ms
NTR: Expected value 0x00004221 to 0x00004221
NTR: Read 0x4 bytes at address 0x006A6132
packet: cmd = 9, dataLen = 4
NTR: Read sucessful - 0x00004222
NTR: Value in range: No
NTR: Read 0x4 bytes at address 0x006A6132
packet: cmd = 9, dataLen = 4
NTR: Read sucessful - 0x00004222
NTR: Value in range: No
NTR: Read 0x4 bytes at address 0x006A6132
packet: cmd = 9, dataLen = 4
NTR: Read sucessful - 0x00004222
NTR: Value in range: No
NTR: Read 0x4 bytes at address 0x006A6132
packet: cmd = 9, dataLen = 4
NTR: Read sucessful - 0x00004222
NTR: Value in range: No
NTR: Read 0x4 bytes at address 0x006A6132
packet: cmd = 9, dataLen = 4
NTR: Read sucessful - 0x00004222
NTR: Value in range: No
NTR: Read 0x4 bytes at address 0x006A6132
packet: cmd = 9, dataLen = 4
NTR: Read sucessful - 0x00004222
NTR: Value in range: No
NTR: Read 0x4 bytes at address 0x006A6132
packet: cmd = 9, dataLen = 4
NTR: Read sucessful - 0x00004222
NTR: Value in range: No
NTR: Read 0x4 bytes at address 0x006A6132
packet: cmd = 9, dataLen = 4
NTR: Read sucessful - 0x00004222
NTR: Value in range: No
NTR: Read 0x4 bytes at address 0x006A6132
packet: cmd = 9, dataLen = 4
NTR: Read sucessful - 0x00004222
NTR: Command timed out
NTR: Value in range: No
NTR: Read failed or outside of range
Bot: Press Start
NTR: Send button command 0xFFE during 250 ms
NTR: Button command sent, no feedback provided
Bot: Test if the boxes are shown
NTR: Read data at address 0x006A6132 during 5000 ms
NTR: Expected value 0x00004221 to 0x00004221
NTR: Read 0x4 bytes at address 0x006A6132
packet: cmd = 9, dataLen = 4
NTR: Read sucessful - 0x00004222
NTR: Value in range: No
NTR: Read 0x4 bytes at address 0x006A6132
packet: cmd = 9, dataLen = 4
NTR: Read sucessful - 0x00004222
NTR: Value in range: No
NTR: Read 0x4 bytes at address 0x006A6132
packet: cmd = 9, dataLen = 4
NTR: Read sucessful - 0x00004222
NTR: Value in range: No
NTR: Read 0x4 bytes at address 0x006A6132
packet: cmd = 9, dataLen = 4
NTR: Read sucessful - 0x00004222
NTR: Value in range: No
NTR: Read 0x4 bytes at address 0x006A6132
packet: cmd = 9, dataLen = 4
NTR: Read sucessful - 0x00004222
NTR: Value in range: No
NTR: Read 0x4 bytes at address 0x006A6132
packet: cmd = 9, dataLen = 4
NTR: Read sucessful - 0x00004222
NTR: Value in range: No
NTR: Read 0x4 bytes at address 0x006A6132
packet: cmd = 9, dataLen = 4
NTR: Read sucessful - 0x00004222
NTR: Value in range: No
NTR: Read 0x4 bytes at address 0x006A6132
packet: cmd = 9, dataLen = 4
NTR: Read sucessful - 0x00004222
NTR: Value in range: No
NTR: Read 0x4 bytes at address 0x006A6132
packet: cmd = 9, dataLen = 4
NTR: Read sucessful - 0x00004222
NTR: Value in range: No
NTR: Read 0x4 bytes at address 0x006A6132
packet: cmd = 9, dataLen = 4
NTR: Read sucessful - 0x00004222
NTR: Value in range: No
NTR: Read 0x4 bytes at address 0x006A6132
packet: cmd = 9, dataLen = 4
NTR: Read sucessful - 0x00004222
NTR: Command timed out
NTR: Value in range: No
NTR: Read failed or outside of range
Bot: Press Start
NTR: Send button command 0xFFE during 250 ms
NTR: Button command sent, no feedback provided
Bot: Test if the boxes are shown
NTR: Read data at address 0x006A6132 during 5000 ms
NTR: Expected value 0x00004221 to 0x00004221
NTR: Read 0x4 bytes at address 0x006A6132
packet: cmd = 9, dataLen = 4
NTR: Read sucessful - 0x00004222
NTR: Value in range: No
NTR: Read 0x4 bytes at address 0x006A6132
packet: cmd = 9, dataLen = 4
NTR: Read sucessful - 0x00004222
NTR: Value in range: No
NTR: Read 0x4 bytes at address 0x006A6132
packet: cmd = 9, dataLen = 4
NTR: Read sucessful - 0x00004222
NTR: Value in range: No
NTR: Read 0x4 bytes at address 0x006A6132
packet: cmd = 9, dataLen = 4
NTR: Read sucessful - 0x00004222
NTR: Value in range: No
NTR: Read 0x4 bytes at address 0x006A6132
packet: cmd = 9, dataLen = 4
NTR: Read sucessful - 0x00004222
NTR: Value in range: No
NTR: Read 0x4 bytes at address 0x006A6132
packet: cmd = 9, dataLen = 4
NTR: Read sucessful - 0x00004222
NTR: Value in range: No
NTR: Read 0x4 bytes at address 0x006A6132
packet: cmd = 9, dataLen = 4
NTR: Read sucessful - 0x00004222
NTR: Value in range: No
NTR: Read 0x4 bytes at address 0x006A6132
packet: cmd = 9, dataLen = 4
NTR: Read sucessful - 0x00004222
NTR: Value in range: No
NTR: Read 0x4 bytes at address 0x006A6132
packet: cmd = 9, dataLen = 4
NTR: Read sucessful - 0x00004222
NTR: Value in range: No
NTR: Read 0x4 bytes at address 0x006A6132
packet: cmd = 9, dataLen = 4
NTR: Read sucessful - 0x00004222
NTR: Value in range: No
NTR: Command timed out
NTR: Read failed or outside of range

This is my pkmn-ntr log when i tried the WT Bot with Pokemon UltraSun
I've enabled Debugger at Ntr 3.3, started InputRedirection at Luma3DS 's Rosalina Menu. My lower screen was also at the START screen of WonderTrade and the pkmn-ntr 've read my 1st slot successfully, but it still stucked at that screen
Help me please
Thanks in advance.
 
Last edited by Miinh,
When will you add support for Rosalina Debugger and InputRedirection? Would be very convenient to only turn on Debugger and InputRedirection in the menu prior to launching the game instead of launching NTR, InputRedirection and the game.
 
When will you add support for Rosalina Debugger and InputRedirection? Would be very convenient to only turn on Debugger and InputRedirection in the menu prior to launching the game instead of launching NTR, InputRedirection and the game.
I think the problem with that is the fact that when you connect to Rosalina debugger via GDB, it pauses the game until you disconnect, due to the nature of the debugger. Personally, I think it would be convenient to be able to load NTR debugger without BootNTR (for instance, with a menu option on Rosalina).

Sent from my SM-G950U using Tapatalk
 
  • Like
Reactions: Real.96
Wondertrade bot is bugged for me sadly.
Using latest NTR.
It does trade the pokemon (sometimes it does not...), but as soon as i click; collect FC
it is bugged and wont do it anymore.
Running on Pokemon Sun latest update.
Log not trading pokemon:
20180325171343_pkmn-ntr.txt
Log Trading pokemon but not collecting:
20180325171935_pkmn-ntr.txt
 

Attachments

Recompiling PKMN-NTR with the latest build of PKHeX (Current: 2018-03-19) doesn't update the PKHeX.Core used in the program (shows the 2018-01-28 build).
I've followed the instructions found on the Compilation page of the Wiki to no avail.

The PKHeX application that successfully compiles alongside PKMN-NTR shows the current build, yet the latter doesn't. Maybe I'm doing something wrong?
(I understand this may be a minor issue; so, thanks in advance.)

EDIT: I've discovered that it's a manually-written value and that the application does compile with the current Core version.

However, when cross-checking certain events when viewing or attempting to write Pokémon to memory, such cases as the SUM2013 Dialga will throw the error "Invalid: Unable to match to a Mystery Gift in the database". In PKHeX, it doesn't show this error, even as the same Dialga is flagged legal. Could it be because of how the data is accessed, or am I still missing something?

Again, thanks in advance.
 
Last edited by Tyrell D. Barnes,
Was able to test the soft-reset bot working on USUM here are my results.

Using the Tapu Settings on the Wormhole Ultra Beasts Works.

Got all these shiny UBs With these encounters..
Nihilego: 223
Buzzwole: 1732
Pheromosa: 1449
Xurtkitree: 1336
Kartana: 48
Celesteela: 983
Guzzlord: 255

Using the (SM) Ultra Beast/Necrozma works for resetting Stakataka & Blacephalon in Poni Grove

Stakataka: 548
Blacephalon: 121

Wasn't able to do resets for legendary pokemon in wormholes as they all require a step forward to initiate encounter. The Solgaleo/Lunala bot seems to be a close candidate for this method. Just make the game reset instead of running away.
 
insufficient.png

now my laptop is not allowing me to use or download the program anymore.
yes, i read from rustinpeace (a page back) that windows defender might be the problem. but i do not have anything turned on. i am using windows 7.
 

Site & Scene News

Popular threads in this forum