Jump to content
Kaphotics

tool Time Capsule Transfer Tool ('pk2pk')

Recommended Posts

I was wondering, is this tool's conversion process 1:1 of what one would get from doing it with pal park, poke-transfer etc?

Also, I've for for curiosity, but I can't seem to find information on what exactly the official conversion process does, anyone has a link?

Anyways, thanks for your great tools!

Share this post


Link to post
Share on other sites

pk2pk has been integrated into PKHeX and has since received multiple updates to handle certain edge cases.

It's not incredibly optimized but emulates the transfer 100%.

I like to have well documented (commented) code, and pk2pk.cs is pretty extensively commented to document all the changes a Pokémon would undergo transferring across 3->4, 4->5, and 5->6.

Share this post


Link to post
Share on other sites

Thank you very much, I'll take a look at pk2pk.cs. I guess this allows us to use pkhex as an alternative to pokemon bank, and also making generation transfers much less time consuming.

Do you have a donation page? I'd rather donate my next's years pokemon bank suscription than paying for a service I think should only be payed once and have offline functionality, moreover, I've only used it for Y<->OR transfers rather than actually storing pokemon...

EDIT: I've been looking at the sources, and I wonder why hasn't the improvements made in pkhex regarding geneartion conversion been commited to pk2pk standalone program? I think a tool to convert between gents 100% as the official way is very interesting, not only to import to gen VI, but also between the other generations.

Instead of keeping two apps, maybe puting a "Time Capsule" menu entry in pkhex that acts like pk2pk would be great. I think it is a pitty a 100% accurate converter is only used for gen VI.

I think that I can pull it off myself even if I only know very little C#, since both pk2pk and pkhex are open source. Unless you are going to do it yourself expect a pull request with that (if I manage, I don't think it will be too difficult since the function calls are the same ones, updates only affect the funcitons inner works so...)

Share this post


Link to post
Share on other sites

Does anyone know if a equivalent of this exists that would let me convert a gen 1 .pkm to gen 2? Or just some gen 2 editor that would let me import a gen 1 .pkm

I have been for old times sakes doing a LiveDex on Blue and would like to bulk import them all into a Silver save to continue the LiveDex but would like to avoid doing that much trading with myself. Plus I wouldn't mind injecting them before playing through to the time capsule.

Edit: I found a editor that works I had missed it because it is a legacy version and I had tried the newest already with no success so I didn't think a old version would have more features.

Edited by shadowofdarkness

Share this post


Link to post
Share on other sites
Does anyone know if a equivalent of this exists that would let me convert a gen 1 .pkm to gen 2? Or just some gen 2 editor that would let me import a gen 1 .pkm

I have been for old times sakes doing a LiveDex on Blue and would like to bulk import them all into a Silver save to continue the LiveDex but would like to avoid doing that much trading with myself. Plus I wouldn't mind injecting them before playing through to the time capsule.

Edit: I found a editor that works I had missed it because it is a legacy version and I had tried the newest already with no success so I didn't think a old version would have more features.

I think the best tool is this one:

http://projectpokemon.org/forums/showthread.php?43835-Gen-1-2-3-Pokemon-Editor-and-Converter-for-Windows-Mac-OS-X

Share this post


Link to post
Share on other sites

Hey all. I want to transfer my soul silver pokemon to either the current gen or the pokebank. I have the save from my n3ds with homebrew on my pc. I opened it up with pokegen. From here im not sure what to do. I know I need the time capsule tool which I have but I dont know what to do with it and how to transfer the Pokemon back to my 3ds.

Share this post


Link to post
Share on other sites
Hey all. I want to transfer my soul silver pokemon to either the current gen or the pokebank. I have the save from my n3ds with homebrew on my pc. I opened it up with pokegen. From here im not sure what to do. I know I need the time capsule tool which I have but I dont know what to do with it and how to transfer the Pokemon back to my 3ds.

You already asked in the PKHeX forum, and I gave you your answer.

pk2pk is out of date and has a few glitches associated with it, nobody should really be using it to transfer to Gen 6.

Share this post


Link to post
Share on other sites
You already asked in the PKHeX forum, and I gave you your answer.

pk2pk is out of date and has a few glitches associated with it, nobody should really be using it to transfer to Gen 6.

Yes you replied and closed the topic. I still dont know how to use the programs and thats my issue. I would have replied in the topic if it wasnt closed.

Share this post


Link to post
Share on other sites
Yes you replied and closed the topic. I still dont know how to use the programs and thats my issue. I would have replied in the topic if it wasnt closed.

Because the list of tools were unrelated to PKHeX. A process of using multiple tools is best kept in a general forum rather than a specific tool's area.

TWL save extraction is a homebrew tool not PKHeX, the save data extractors for 3DS games aren't PKHeX, and PokeGen is not PKHeX. You can easily google the names of the tools to find their associated threads and information; you shouldn't need another human to explain everything when the information is on the webz. There's tutorials on youtube for every piece of the puzzle.

Share this post


Link to post
Share on other sites
Because the list of tools were unrelated to PKHeX. A process of using multiple tools is best kept in a general forum rather than a specific tool's area.

TWL save extraction is a homebrew tool not PKHeX, the save data extractors for 3DS games aren't PKHeX, and PokeGen is not PKHeX. You can easily google the names of the tools to find their associated threads and information; you shouldn't need another human to explain everything when the information is on the webz. There's tutorials on youtube for every piece of the puzzle.

I apologize for putting it in the wrong thread. I didnt realize I had did so.

Share this post


Link to post
Share on other sites

this is a great tool but there is a small poblem with it.the fact that it erases a special pokeball from hg/ss if you take a pokemon there and convert it to gen 5,6 games.

Share this post


Link to post
Share on other sites
pk2pk is out of date and has a few glitches associated with it, nobody should really be using it to transfer to Gen 6.

Does that mean there are no glitches for gen 3->4, gen 4->5 and gen 3->5 transfering?

Or is above's issue (pokeball lost in gen 5,6 trasnfering) one of the solved glitches in pkhex?

I think I may have a solution to integrate pk2pk gen 3->4, gen 4->5 and gen 3->5 in pkhex even if it is used for primarily for Gen VI. The current code converts secuentially, so when converting gen 3 to gen 6, at some point a gen 4 pokemon structure and a gen 5 pokemon structure are generated, so here's my idea:

1.- Add a toogable option to pkhex (default disabled), something like "PK2PK mode" ON/OFF

2.-

a) If PK2PK mode is OFF, pkhex behaves as it does now (convert any -pkm to pk6 and add to savefile).

b) If PK2PK mode is ON, when a not gen VI pokemon is detected, ask the user when the code converts and generates a gen IV or gen V pokemon, prompt the user if he wants to save the .pkm file

Example: PK2PK ON, want to convert a gen 3 .pkm to gen 5

After drag and drop to pkhex, the gen 3 .pkm is converted to gen 4. Before the code continues the conversion process and gets it to gen 5, a prompt appears: "Do you want to save generation IV pkm file?" YES/NO. Click NO. Conversion code continues normally, and after it is converted to generation V prompt the user again.

I think this is a good solution to take advantage of pkhex's pk2pk updates while still mantaining the other generation conversions. Since pkhex is already generating genIV and genV pkm structures before converting to genVI it should be trivial to write them to the disk.

Or instead of PK2PK Mode ON/OFF, a couple toogles: PK2PK gen IV (output any drag&drop as gen IV, ignore/error gen IV,V and VI pkm/pk6 files) and PK2PK gen V (same as before, but not ignoring gen IV files).

-----

I've been looking at the code, and I think it would be easy (for someone who can handle C#) to add a couple menu options (Gen III->IV and Gen III/IV->V) that open a file selection window that accepts files and outputs them in the same directory as .pk4 or .pk5 files (one could always use a mass renaming tool to use with other save editors).

I may attempt myself, If I get something usable I'll make a pull request.

Share this post


Link to post
Share on other sites
I'm likely to just update pk2pk with the new PKHeX conversion classes. I'd rather keep PKHeX only exporting gen 6 files and have pk2pk be the flexible focused tool.

I already made some changes, gonna make a pull request:

I just added 2 options under Tools->Other menu:

- PK2PK Gen IV: prompts for a folder, will convert any suitable .pk3, .pkm or .3gpkm in that folder to .pk4

- PK2PK Gen V: prompts for a folder, will convert any suitable .pk3, .pkm (gen 3 or 4) or .3gpkm to .pk5

I know pkhex is a genVI focused tool, but I don't think these two options make an impact on it's current functionality, and there's no need to keep two tools updated. Of course if pk2pk gets the new classes pkhex has, updating both tools would still be easy.

But well, pkhex is your tool, so do whatever you feel like.

ps: BTW, on loadBoxesFromDB() (f1-Main.cs) you are missing a "PK4.SIZE_PARTY".

Share this post


Link to post
Share on other sites

Updated OP with latest version.

ps: BTW, on loadBoxesFromDB() (f1-Main.cs) you are missing a "PK4.SIZE_PARTY".

Remember that PK4.SIZE_STORED == PK5.SIZE_STORED (136 bytes). No need to have that number twice in the array :)

Share this post


Link to post
Share on other sites

Oh, I assumed nintendo had been weightening the pokemon structure each gen.

Thank you for updating pk2pk!

ps: is there a way to contact SciresM? I've tried multiple times in this and other forums without reply to ask him if he could upload wc6 editor's source, but I never got a reply

Share this post


Link to post
Share on other sites
Oh, I assumed nintendo had been weightening the pokemon structure each gen.

Thank you for updating pk2pk!

ps: is there a way to contact SciresM? I've tried multiple times in this and other forums without reply to ask him if he could upload wc6 editor's source, but I never got a reply

He's often on IRC; you can always use ILSpy or .NET Reflector on the editor to get the src... but PKHeX's WC6 class is far superior :)

Share this post


Link to post
Share on other sites

I was just checking PKHeX PID generation of Gen 3 Unowns and I found that when transferring Unowns from Gen 3 to Gen 6 using PKHeX or the recent release of pk2pk (021616) the Unown forms aren't retained and they're all changed to "A". Another thing is the Unowns transferred are automatically nicknamed with "UNOWN" in all capitals instead of being decapitalized and not nicknamed as Pokemon Transporter would do I believe. The original pk2pk seems to properly decapitalize without setting the nickname flag and retains the form though. Also I found that PKHeX doesn't generate Shiny PIDs of the Gen 3 Unowns with their assigned forms from checking it by comparing it with the form presented for that Shiny PID on A-Save (A-Save can generate Shiny PIDs for an Unown with a certain Nature/Form, but Idk if they're legal or what).

Share this post


Link to post
Share on other sites
I was just checking PKHeX PID generation of Gen 3 Unowns and I found that when transferring Unowns from Gen 3 to Gen 6 using PKHeX or the recent release of pk2pk (021616) the Unown forms aren't retained and they're all changed to "A". Another thing is the Unowns transferred are automatically nicknamed with "UNOWN" in all capitals instead of being decapitalized and not nicknamed as Pokemon Transporter would do I believe. The original pk2pk seems to properly decapitalize without setting the nickname flag and retains the form though. Also I found that PKHeX doesn't generate Shiny PIDs of the Gen 3 Unowns with their assigned forms from checking it by comparing it with the form presented for that Shiny PID on A-Save (A-Save can generate Shiny PIDs for an Unown with a certain Nature/Form, but Idk if they're legal or what).

Thanks, I've updated both programs with the decap/form keeping changes.

As for shiny unown form, some forms will be impossible to be shiny due to the way form is determined. PKHeX doesn't care about PIDIV/Form legality for past gen pkm, because the official checks don't either.

Share this post


Link to post
Share on other sites
I've passed a 4th gen Arceus, and a 4th gen shaymin to 6th and nature is always changed to hardy when both had timid (Before changes)

Posted new update, that bugfix was omitted previously.

PKHeX has this same conversion implemented, so you shouldn't have to use this program. It's mainly to transfer 3->4->5.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...