Homebrew Would a Ninjhax-based PK6 (edited Pokemon) importer be possible?

flarn2006

Well-Known Member
OP
Member
Joined
Apr 6, 2014
Messages
394
Trophies
0
Age
30
XP
523
Country
United States
I personally wouldn't have any need for this because I use Gateway, but I'm assuming things like Pokemon Link (OR/AS demo uses it to transfer Pokemon to the full game, for instance) would use extdata. If this is the case, wouldn't a 3DSX homebrew be able to write to this, letting people import hacked Pokemon using nothing but Ninjhax?

EDIT: As I mentioned in my last post here, there's now a much better way to do this, so this thread is now irrelevant.
 

Gamemaster1379

Well-Known Member
Member
Joined
May 5, 2008
Messages
834
Trophies
1
Age
29
Location
United States
Website
1379tech.110mb.com
XP
2,243
Country
United States
That I understand, Gateway pseudo-encrypts, or uses an old encryption that's decipherable . A full retail game likely would not have its save be modifiable. You would need the Nintendo Dev tools to take a crack at it, and those only run in Gateway mode--which, well, requires a gateway.

Furthermore, retail games only run in retail classic mode, so correct me if I'm wrong, even with a Gateway, you can't load the dev tools to modify its save.
 
  • Like
Reactions: ubergeek77

Duo8

Well-Known Member
Member
Joined
Jul 16, 2013
Messages
3,613
Trophies
2
XP
3,022
Country
Vietnam
I personally wouldn't have any need for this because I use Gateway, but I'm assuming things like Pokemon Link (OR/AS demo uses it to transfer Pokemon to the full game, for instance) would use extdata. If this is the case, wouldn't a 3DSX homebrew be able to write to this, letting people import hacked Pokemon using nothing but Ninjhax?

Does it actually stores the data in extdata? If it just plainly put the data there and have very simple checks (like hash, which can be recalculated) then it should be possible. Ninjhax can access all extdata it seems.
 

flarn2006

Well-Known Member
OP
Member
Joined
Apr 6, 2014
Messages
394
Trophies
0
Age
30
XP
523
Country
United States
That I understand, Gateway pseudo-encrypts, or uses an old encryption that's decipherable . A full retail game likely would not have its save be modifiable. You would need the Nintendo Dev tools to take a crack at it, and those only run in Gateway mode--which, well, requires a gateway.

Furthermore, retail games only run in retail classic mode, so correct me if I'm wrong, even with a Gateway, you can't load the dev tools to modify its save.
I'm not asking about Gateway; I'm asking about Ninjhax. I already know it's possible with Gateway, at least if you're playing on a dumped (or downloaded) ROM, as I've done it myself. You just need to use SaveDataFiler to export/import decrypted saves, and PKHeX (on the computer) to edit them.
 

WateredFire19

Banned!
Banned
Joined
Aug 23, 2014
Messages
642
Trophies
0
Age
39
XP
291
Country
United States
SaveDataFiler only works on ROMs because Gateway doesn't correctly decrypt OR/AS/X/Y saves. But i do think that Pokemon Link data is stored on the extData location, so this should be possible. THOUSAND WAVES/ARROWS ZYGARDE :D
 

Gamemaster1379

Well-Known Member
Member
Joined
May 5, 2008
Messages
834
Trophies
1
Age
29
Location
United States
Website
1379tech.110mb.com
XP
2,243
Country
United States
I'm not asking about Gateway; I'm asking about Ninjhax. I already know it's possible with Gateway, at least if you're playing on a dumped (or downloaded) ROM, as I've done it myself. You just need to use SaveDataFiler to export/import decrypted saves, and PKHeX (on the computer) to edit them.

I was trying to attack all possible scenarioes, and well, all of them stay in the as Gateway only options. There's nothing else. My post is a roundabout way of saying "no" it isn't possible. By you saying no Gateway, you're implying eShop or retail cartridge to the best of my knowledge. You can't be implying any sort of pirated CIA because you would need a CIA installer, which isn't possible without a Gateway or other flash cart that runs in unsigned mode.
 

MrCheeze

Well-Known Member
Member
Joined
May 13, 2014
Messages
200
Trophies
0
Age
79
XP
338
Country
Canada
From what I understand, Regionthree works by taking over a suspended process (download play) to obtain its permission to launch titles. I see no obvious reason why it wouldn't be possible to take over a suspended game, and obtain permissions to read/write its savedata.

Figuring out the details would be tricky though.
 

WeedZ

Possibly an Enlightened Being
Global Moderator
Joined
Jan 13, 2015
Messages
3,825
Trophies
1
Location
The State of Denial
Website
gbatemp.net
XP
5,666
Country
United States
From what I understand, Regionthree works by taking over a suspended process (download play) to obtain its permission to launch titles. I see no obvious reason why it wouldn't be possible to take over a suspended game, and obtain permissions to read/write its savedata.

Figuring out the details would be tricky though.

hey, i like that. could be a way to run trainers/cheat apps in general perhaps?
 

flarn2006

Well-Known Member
OP
Member
Joined
Apr 6, 2014
Messages
394
Trophies
0
Age
30
XP
523
Country
United States
From what I understand, Regionthree works by taking over a suspended process (download play) to obtain its permission to launch titles. I see no obvious reason why it wouldn't be possible to take over a suspended game, and obtain permissions to read/write its savedata.

Figuring out the details would be tricky though.

I wasn't referring to regular save data. I was referring to "Pokemon Link", which other applications (like the OR/AS demo and Pokemon Bank) use to basically put items and Pokemon in "storage" in a way where the next time you start up the game, you can "claim" it from the menu. I've never used it myself, but since the data is accessible to multiple applications, I assume it uses extdata. And Ninjhax homebrew does have the access needed to read/write extdata, so if I'm correct it would be possible to create a 3DSX that loads a .PK6 file from the SD card, and imports it into the Pokemon Link data, so then you could open up a Pokemon game, choose Pokemon Link from the menu, and get whatever Pokemon you want. If this is possible, one could also program it to let you edit the Pokemon data right on the 3DS, so you don't need to be near a computer. (You'd obviously need to be near your 3DS, which is technically a computer, but you know what I mean.)
 

KazoWAR

Well-Known Member
Member
Joined
Aug 12, 2008
Messages
1,952
Trophies
1
Age
35
Location
Winter Haven
XP
2,124
Country
United States
I acualy was wanting to make a simple sav file editor for pokemon as a 3ds homebrew. But i dont want to start anyrhing untill i can get a gateway so i can properly test/debug the application
 

mastermodr94

Well-Known Member
Member
Joined
Dec 3, 2014
Messages
137
Trophies
0
Age
29
XP
204
Country
United States
Well the simplest way to figure out if the pokemon are stored in exdata is to make a dump then use something like the oras demo and pokemon link and then make a second dump. If the pokemon are stored in exdata then the checksums of the files should be different.
 

WateredFire19

Banned!
Banned
Joined
Aug 23, 2014
Messages
642
Trophies
0
Age
39
XP
291
Country
United States
I wasn't referring to regular save data. I was referring to "Pokemon Link", which other applications (like the OR/AS demo and Pokemon Bank) use to basically put items and Pokemon in "storage" in a way where the next time you start up the game, you can "claim" it from the menu. I've never used it myself, but since the data is accessible to multiple applications, I assume it uses extdata. And Ninjhax homebrew does have the access needed to read/write extdata, so if I'm correct it would be possible to create a 3DSX that loads a .PK6 file from the SD card, and imports it into the Pokemon Link data, so then you could open up a Pokemon game, choose Pokemon Link from the menu, and get whatever Pokemon you want. If this is possible, one could also program it to let you edit the Pokemon data right on the 3DS, so you don't need to be near a computer. (You'd obviously need to be near your 3DS, which is technically a computer, but you know what I mean.)

I like that, but one step at a time. Lets try and do the PK6 importer tool BEFORE we try to make a 3DS-based PK6 editor xD
 

Zidapi

Well-Known Member
Member
Joined
Dec 1, 2002
Messages
3,112
Trophies
3
Age
42
Website
Visit site
XP
2,681
Country
I wasn't referring to regular save data. I was referring to "Pokemon Link", which other applications (like the OR/AS demo and Pokemon Bank) use to basically put items and Pokemon in "storage" in a way where the next time you start up the game, you can "claim" it from the menu. I've never used it myself, but since the data is accessible to multiple applications, I assume it uses extdata. And Ninjhax homebrew does have the access needed to read/write extdata, so if I'm correct it would be possible to create a 3DSX that loads a .PK6 file from the SD card, and imports it into the Pokemon Link data, so then you could open up a Pokemon game, choose Pokemon Link from the menu, and get whatever Pokemon you want. If this is possible, one could also program it to let you edit the Pokemon data right on the 3DS, so you don't need to be near a computer. (You'd obviously need to be near your 3DS, which is technically a computer, but you know what I mean.)
This should be possible with MrCheeze's extdata tools as long as we recalculate the checksums and such.

The quickest way to find where Pokemon Link data is stored is to run Pokebank. Stored Pokemon accumulate "interest" in the form of PokeMiles or Battle Points, these points are then imported to your main game via Pokemon Link.
 
  • Like
Reactions: Kelton2

flarn2006

Well-Known Member
OP
Member
Joined
Apr 6, 2014
Messages
394
Trophies
0
Age
30
XP
523
Country
United States
I'm currently re-downloading the OR/AS demo, which lets you catch a Pokemon and send it to the main game via Pokemon Link. I'm gonna play through it real quick, catch something and name it, dump all my extdata, and search for the name. That should show me where in extdata it is, if it does use extdata.

I'd use Pokemon Bank so I don't have to play through the demo, but that costs money, and SaveDataFiler provides the same functionality in a much better way. (It's free, the files are in my control rather than Nintendo's, and I can make whatever edits to it I want because it's my data.) Definitely not about to pay for Bank.
 

mastermodr94

Well-Known Member
Member
Joined
Dec 3, 2014
Messages
137
Trophies
0
Age
29
XP
204
Country
United States
I'm currently re-downloading the OR/AS demo, which lets you catch a Pokemon and send it to the main game via Pokemon Link. I'm gonna play through it real quick, catch something and name it, dump all my extdata, and search for the name. That should show me where in extdata it is, if it does use extdata.

I'd use Pokemon Bank so I don't have to play through the demo, but that costs money, and SaveDataFiler provides the same functionality in a much better way. (It's free, the files are in my control rather than Nintendo's, and I can make whatever edits to it I want because it's my data.) Definitely not about to pay for Bank.
Make sure to make a bacup of your exdata before and after to see if it is even stored there
 

flarn2006

Well-Known Member
OP
Member
Joined
Apr 6, 2014
Messages
394
Trophies
0
Age
30
XP
523
Country
United States
Make sure to make a bacup of your exdata before and after to see if it is even stored there
I plan to. Is extdata the same thing as "Extra Data" in Data Management? Because if so, there's something listed there just called "Pokemon" that doesn't list any specific game, which looks promising.
 

Duo8

Well-Known Member
Member
Joined
Jul 16, 2013
Messages
3,613
Trophies
2
XP
3,022
Country
Vietnam
I plan to. Is extdata the same thing as "Extra Data" in Data Management? Because if so, there's something listed there just called "Pokemon" that doesn't list any specific game, which looks promising.
Probably.
You need to know the extdata id though.
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    Xdqwerty @ Xdqwerty: