Hacking Pokémon X/Y Dumper and Editor

codemonke85

Member
Newcomer
Joined
Jun 13, 2008
Messages
20
Trophies
0
Age
38
XP
189
Country
United States
Ah. I finally see what you mean... I was calculating the checksum after encryption instead of before. Not sure how I made that mistake. I fixed the source code, but I'm still wary of distributing a binary when so many people are eager to blame an editor that can't even get data into the game for stupid stuff like bad eggs.
 

kyogre123

Mexican Pride
OP
Member
Joined
Sep 23, 2013
Messages
2,920
Trophies
0
Age
34
XP
1,347
Country
Mexico
Yes, I only loaded the .bin pokemon and saved it as a .bin without changing anything using PKX editor... all other data is unchanged so the checksum calculation on PKX editor must have an error

Oh you are right, now I get it; I didn't realise that was part of the unencrypted data. By the way, are you using the same extensions to both encrypted and decrypted files?
Ah. I finally see what you mean... I was calculating the checksum after encryption instead of before. Not sure how I made that mistake. I fixed the source code, but I'm still wary of distributing a binary when so many people are eager to blame an editor that can't even get data into the game for stupid stuff like bad eggs.

Why would you care about those freaks?
 

RubenPikachu

Member
Newcomer
Joined
Nov 25, 2012
Messages
17
Trophies
0
Website
pikaedit.wordpress.com
XP
78
Country
Mexico
Oh you are right, now I get it; I didn't realise that was part of the unencrypted data. By the way, are you using the same extensions to both encrypted and decrypted files?


Yes, my editor uses only .pkx extensions for both encrypted and decrypted, the editor checks if the data is encrypted and decrypts it when loading it
 

pokefloote

Well-Known Member
Member
Joined
Mar 20, 2009
Messages
2,669
Trophies
2
XP
1,991
Country
United States
Like two people have had bad eggs, the rest are liars and are spreading fear. Not to mention the main video showing bad eggs was posted way before "hacking" was even a thing in the 6th gen. Go ahead and avoid wonder trade if you fear for your save file, meanwhile I'll be collecting various scatterbug and panpour from there. :P
 

Ixvael

Active Member
Newcomer
Joined
Jan 28, 2013
Messages
30
Trophies
0
Age
31
XP
86
Country
Can this make the difference? Have you tryed to inject the files back in the game now?
The checksum that was fixed was the PKX file created from Codemonkey85's program. The other checksum that's preventing people from injecting the trade is still not cracked.
 

Roxas75

Well-Known Member
Member
Joined
Oct 9, 2010
Messages
516
Trophies
0
XP
1,522
Country
Italy
The checksum that was fixed was the PKX file created from Codemonkey85's program. The other checksum that's preventing people from injecting the trade is still not cracked.

Thanks for the info man.
What i'm actually trying to do is to code a tool to inject the UDP protocol, so that the game can at least discover it, even without accepting. :/
Zeneris semms to have done the same thing. What miss is this damn checksum.
 

FAST6191

Techromancer
Editorial Team
Joined
Nov 21, 2005
Messages
36,798
Trophies
3
XP
28,405
Country
United Kingdom
they could write a closed source version of pokegen for XY that forces created pokemon to be legit (and offer an autocorrect to the nearest legit viable one).
I mean it wouldn't be easy but it would get the job done. And closed source means people can't remove the check.

I find that somewhat amusing given you are presently all discussing editing a close sourced game, one on an embedded system without any public debug functions no less.

Back on topic I see most of you roughly got networks figured out, I did have a little primer going but I will just stick the largely unfinished version in a spoiler. It is less "do this, then this, now that and finally this" and more actual networking but hey.

Step 1. For various reasons the normal versions of windows that are windows XP SP2 or later are terrible for various methods of this (though you should be able to get some stuff captured on windows). Server versions should do OK though for some of this though. Linux and BSD should be fine. I am not sure what goes with Macs. Linux runs great off a liveCD though and there are many network focused and even network hacking focused distributions. Virtual machine versions of linux with windows as a host may or may not trouble you depending upon the network setup.
Short version is if you are not running linux/BSD then get a liveCD until you can argue otherwise or are just interested in dumping, you will also have a hard time if you do not have much spare network gear sitting around. As most of you have linux devices in the form of android whatevers which tend to have wifi you might have some options compared to doing this a few years back.

Back on topic there are two things people are seemingly wanting to do

1) Just analyse the data sent in.

2) Change the data.

Analysis.
For this you need to get the packets on your computer. There are five main methods
1) Own the router/run your own. Here you get a spare wireless card, some method of internet access that does not involve that wireless card and a computer upon which to set up a hotspot. As you own the computer you can monitor what goes through it and onto its various ports. Some have some luck with tethered android devices.
2) Own a bloody expensive router (talking proper Cisco/Juniper expensive) that supports various techniques in the multicasting world and/or forwarding of network frames (various terms are used by various vendors I believe). To save most of you the trouble you do not own this sort of hardware and if you do then you probably already know all this, in the consumer world I do not think even something like DD-wrt hacked devices can pull this off convincingly though I am prepared to be proven wrong there. Main exception is if you built your own router ( http://linitx.com/product/adsl2-pci-card-single-port-adsl-modem-annex-a/12181 ) though most people that would do that know all this and more.
3) Depending upon the type of network security (read not if you are using WPA2) you have you can probably use Monitor mode or Promiscuous mode of your wireless card. Most typically this will see you use wireshark (though wireshark is generally a great monitoring program and will likely be used by all of these). Later versions of windows again can trouble some of this.
4) ARP spoofing and related techniques. Will be used kind of like 2) actually but more or a hacker way of thinking about things. Here you make it so your computer is in fact the conduit through which everything passes and if everything passes through you then you get to look at it. ARP is the system that governs some of the lower layers of networks (nice picture http://blog.buttewifi.com/wp-content/uploads/2009/08/arp-poisoning.jpg ). Naturally if you do not know what you are doing (and not many will) you can hose up your network enough that you will need to either flush caches, fix what you did or more likely just reboot things.
5) The more legitimate version of 4) where you set yourself up as a default gateway and then pass things on to the actual internet gateway for your network. Most would probably do this by a)disabling their DHCP server on the router and making one on a system they control to point at a device aimed at routing or b) manually configuring the 3ds to point at the gateway of your choosing (namely the machine with a packet scanner). Depending upon the setup this sort of thing is also one of the ways the lesser sysadmins of the world will run a web page filter though do learn about networks before you go trying to bypass such things at work/school as it is not the only use for a gateway setup like that. It is used more for those using a VPN ( http://tinc-vpn.org/examples/redirect-gateway/ ) but it works the same here.

The best bet for most people is 1), however it will require your own hotspot and so a few pieces of network hardware that can be reasonably configured, if you participated in the streetpass faking stuff that was found back in August and did not change your mac address at the router (quite likely as few consumer routers have this option) you probably have enough gear for this, though there will not be nice scripts and you may to think through it if you are fiddling with raspberry pis or something. However this is not most "given to you by the ISP" level hardware not everybody will have a few spare wireless cards (amusingly this will probably be a "if you understood enough to do it then you probably have the hardware capable of doing 1) available to you" type situation) and beyond that whenever we do things like this we often hear "but everybody else also uses the wifi and if I am playing hacker...". Again Android type things have a few options here.

Once you get your packet (incoming ones should be using the UDP protocol, usually 989 in length, though various things can see the size increase, and aimed at your 3ds mac hence the filter that filters for your mac and lengths of over 900) you get to seemingly slice out the pokemon portion of the raw packet and feed, I have not paid much attention to this part as it also appears some are improving this to take "raw" packets instead. If by some miracle you are doing 2) from above then depending upon the vendor/setup the mac might have changed or it might be encapsulated and no longer 989 in length.

Changing. The technique for it is known as packet injection. It is done in three main ways
1) The best method involves the use of so called Raw sockets. Windows XP did ship with them but they were criticised as only really being useful for hackers (though such a criticism was itself widely criticised as baseless), with the rise of botnets that also used them in the middle of XP's lifetime Microsoft basically stopped them with XP SP2 and this has remained for all non server versions of windows ever since. http://msdn.microsoft.com/en-us/library/windows/desktop/ms740548(v=vs.85).aspx has more if you want to get technical.
2) Technically the network hardware communications pro specified by Microsoft and 3Com called NDIS (though unless you are a driver programmer you would have probably met it in the Linux world as NDISwrapper instead) does/did have some support for raw commands. Much like raw sockets above Microsoft has nerfed it as far as being useful to hackers goes.
3) Driver level shenanigans. More commonly seen in those doing certain types of wifi hacking, this is why you might have clicked on a link to various types of wifi cracking site reading through threads like this. Unstable as you like on windows (indeed most wifi hacking tools will not support it as it is too much of a headache) and not always that much better on Linux. Will tend to require specific hardware too as not everybody open sources their drivers or has things hacked well enough to have open source drivers made.

Again the short suggestion is just get a version of linux you can play with. As long as it is not completely locked down/application specific ( http://distrowatch.com/dwres.php?resource=major being a nice list of general distributions) you should be able to get it done. You need not get a specialist hacking distro or one with such a package, indeed such things are often a bit scary for those new to linux, but such a thing would come with it.

The two main things to do would either be replays (presumably of pokemon that are good/rare) so as to clone them or straight up modification/creation. Right now it seems neither are possible owing to either network level fun or due to game level encryption though both seem pretty viable.
Not all packet injection software is made equal and though you can inject an arbitrary packet with most of them if you have to edit in real time and can not edit the hex fast enough to avoid a timeout then you are going to need something a bit more special and that means http://www.secdev.org/projects/scapy/ (a fairly complex tool) or maybe http://code.google.com/p/ostinato/ if you are lucky, unless you somehow want to chain a dumping tool, an editing tool and an injection tool to do it all for you.
 

Falo

Well-Known Member
Member
Joined
Jul 22, 2012
Messages
680
Trophies
2
XP
2,628
Country
Germany
Here a test release:
http://www.mediafire.com/download/atnbpyj5alme6g2/PokeGenVI_v0.1.7z
It's written in C#, .NET 4.0 is required.

In v0.1 you can only view the data, not edit it, it also contains a sample folder with 93 EAD's and 19 PKX,
the tool supports wondertrade EAD/BIN (encrypted) and PKX/BIN (encrypted/decrypted).
Please report me bugs / missing data (moves, abilitys, locations) with sample EAD or PKX / other suggestions via PM or here in this thread.
 

ReignOfComputer

Member
Newcomer
Joined
Nov 1, 2013
Messages
10
Trophies
0
Age
36
XP
149
Country
Senegal
Here a test release:
http://www.mediafire.com/download/atnbpyj5alme6g2/PokeGenVI_v0.1.7z
It's written in C#, .NET 4.0 is required.

In v0.1 you can only view the data, not edit it, it also contains a sample folder with 93 EAD's and 19 PKX,
the tool supports wondertrade EAD/BIN (encrypted) and PKX/BIN (encrypted/decrypted).
Please report me bugs / missing data (moves, abilitys, locations) with sample EAD or PKX / other suggestions via PM or here in this thread.

Lol I don't suggest you call it PokeGen, seeing how the official PokeGen is still in development.

Your app crashes when loading the event Torchic.

Code:
System.ArgumentOutOfRangeException: InvalidArgument=Value of '20024' is not valid for 'SelectedIndex'.
Parameter name: SelectedIndex
 
  at PokeGenVI.frmMain.FillDialog()
  at PokeGenVI.frmMain.mnuLoadPKX_Click(Object sender, EventArgs e)

Here's an attachment of the Event Torchic btw, freshly obtained. Also a whole bunch of PKX dumps from my game.
 

Attachments

  • Torchic (Hold Blazikenite).zip
    309 bytes · Views: 140
  • PKX Collection - 20131102 v2.zip
    37 KB · Views: 225

Ixvael

Active Member
Newcomer
Joined
Jan 28, 2013
Messages
30
Trophies
0
Age
31
XP
86
Country
Here a test release:
http://www.mediafire.com/download/atnbpyj5alme6g2/PokeGenVI_v0.1.7z
It's written in C#, .NET 4.0 is required.

In v0.1 you can only view the data, not edit it, it also contains a sample folder with 93 EAD's and 19 PKX,
the tool supports wondertrade EAD/BIN (encrypted) and PKX/BIN (encrypted/decrypted).
Please report me bugs / missing data (moves, abilitys, locations) with sample EAD or PKX / other suggestions via PM or here in this thread.
All files seem to be working ok. By the way, one of the packets I had has 34 extra bytes of data at the end that's the same as the EAD0 beginning. Is there a reason why there's data there and not in the other pokemons?
 

Falo

Well-Known Member
Member
Joined
Jul 22, 2012
Messages
680
Trophies
2
XP
2,628
Country
Germany
The program doesn't crash for me, perhaps it's because he hasn't programmed in the mega stones yet?
It crashes because the location data is still bugged or wrong, the event torchic has the location 20024 (Online-Present), but 20024 is bigger than the maximum index -> crash, all items are inside, some with "???" names.

All files seem to be working ok. By the way, one of the packets I had has 34 extra bytes of data at the end that's the same as the EAD0 beginning. Is there a reason why there's data there and not in the other pokemons?
Async udp packets, sometimes when you have fast network, wireshark and other tools log more than 1 packet at the same time, resulting in a bigger packet.

Lol I don't suggest you call it PokeGen, seeing how the official PokeGen is still in development.
I call the program PokeGenVI -> Pokemon Generation VI, not PokeGen -> Pokemon Generator, but i may change the name later to avoid confusing.
 

otakusensei

Well-Known Member
Member
Joined
Sep 21, 2007
Messages
101
Trophies
1
XP
477
Country
United States
Should I be able to save a PKX file in PokeGenVI? The options are greyed out and I'm not sure if that's some sort of check or just not yet implemented.
 

otakusensei

Well-Known Member
Member
Joined
Sep 21, 2007
Messages
101
Trophies
1
XP
477
Country
United States
Saves are encrypted in a format that has not been broken yet. An older format used in the 4.x generation firmware was apparently broken, but no dice with the current one so no direct editing of the save files. Yet.
 

ElYubiYubi

GBATemp Maniac
Member
Joined
Apr 9, 2013
Messages
2,403
Trophies
1
XP
1,824
Country
Puerto Rico
Saves are encrypted in a format that has not been broken yet. An older format used in the 4.x generation firmware was apparently broken, but no dice with the current one so no direct editing of the save files. Yet.
powersaves-3ds-logo.png



https://powersaves3ds.maximummemory.com/



61sxJMD92ZL._AA1000_.jpg


http://www.amazon.co.jp/サイバーガジェット-CYBER-セーブエディター-3DS用/dp/B00CP1308Q/ref=zg_bs_videogames_22
 

otakusensei

Well-Known Member
Member
Joined
Sep 21, 2007
Messages
101
Trophies
1
XP
477
Country
United States
Like I said, the saves for earlier games that ran under the 4.x firmware were decrypted. As far as I know the current 6. games use a different encryption that has not been broken yet. If those products work with Pokemon X Y (or Fire Emblem) I would be happy to throw money at whoever can get one in my hands the fastest.

EDIT: I don't comp Moonspeak, but the Datel device appears to not be so much a save editor as a save adjuster. Including a set of pre-tweaked saves and a tools to make changes to base saves; not clear on if it will edit preexisting saves. Still, pretty cool; just not quite what we're talking about here.
 

ElYubiYubi

GBATemp Maniac
Member
Joined
Apr 9, 2013
Messages
2,403
Trophies
1
XP
1,824
Country
Puerto Rico
It will a lot better if they focus on saves instead with Wonder Trade. This Wonder Trade method is causing a lot of problems and can be patched really easily.

See that the AR has codes for latest games like Mario & Luigi, etc. And its not really a AR but a Save Editor. And read that the Cyber one even let you Hex Edit the saves.

Like I said, the saves for earlier games that ran under the 4.x firmware were decrypted. As far as I know the current 6. games use a different encryption that has not been broken yet. If those products work with Pokemon X Y (or Fire Emblem) I would be happy to throw money at whoever can get one in my hands the fastest.

EDIT: I don't comp Moonspeak, but the Datel device appears to not be so much a save editor as a save adjuster. Including a set of pre-tweaked saves and a tools to make changes to base saves; not clear on if it will edit preexisting saves. Still, pretty cool; just not quite what we're talking about here.
If you go to the link I posted you'll see that the Datel one fully works with Fire Emblem...
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
    NinStar @ NinStar: super monkey ball