More actions
No edit summary |
No edit summary |
||
Line 4: | Line 4: | ||
|description=Pokemon core series save editor, programmed in C#. | |description=Pokemon core series save editor, programmed in C#. | ||
|author=Kaphotics | |author=Kaphotics | ||
|lastupdated=2023/ | |lastupdated=2023/06/03 | ||
|type=Save Editors | |type=Save Editors | ||
|version=23. | |version=23.06.03 | ||
|license=GPL-3.0 | |license=GPL-3.0 | ||
|download=https://dlhb.gamebrew.org/3dshomebrews/pkhex.7z | |download=https://dlhb.gamebrew.org/3dshomebrews/pkhex.7z | ||
Line 168: | Line 168: | ||
==Changelog== | ==Changelog== | ||
'''v23.06.03''' | |||
* Added: HOME 3.0.0 initial support. Legality analysis is still under research. Thanks @Lusamine & @sora10pls ! | |||
** Lacks full support for cross-game transfers involving evolutions and moves. Please be patient, there's a lot of things to handle! | |||
* Added: Tech Record editor GUI has been redesigned for a more visual experience. Can now sort alphabetically, owned, or move type. | |||
* Added: Gen9 S/V clothing "cheats" have been added to the Trainer Editor window. Thanks @pasqualenardiello! | |||
* Fixed: Small regressions in item list permissions. | |||
* Changed: Gen7 Totem Form sprites now display with an Orange-colored glow, similar to Gen3 C/XD shadow purple. | |||
* Changed: DPI scaling adjusted for better appearance on high resolution monitors. | |||
'''v23.05.11''' | '''v23.05.11''' | ||
* Legality: | * Legality: |
Revision as of 10:56, 8 Haziran 2023
PKHeX | |
---|---|
General | |
Author | Kaphotics |
Type | Save Editors |
Version | 23.06.03 |
License | GPL-3.0 |
Last Updated | 2023/06/03 |
Links | |
Download | |
Website | |
Source | |
PKHeX is an open-source save file editor for the main series of Pokémon games, allowing you to transfer Pokémon data between saves, customize them to your liking, and much more.
User guide
PKHeX expects save files that are not encrypted with console-specific keys. Use a savedata manager to import and export savedata from the console (Checkpoint, save_manager, JKSM, or SaveDataFiler).
Supported files
- Save files ("main", *.sav, *.dsv, *.dat, *.gci, *.bin).
- GameCube Memory Card files (*.raw, *.bin) containing GC Pokémon savegames.
- Individual Pokémon entity files (.pk*, *.ck3, *.xk3, *.pb7, *.sk2, *.bk4).
- Mystery Gift files (*.pgt, *.pcd, *.pgf, .wc*) including conversion to .pk*.
- Importing GO Park entities (*.gp1) including conversion to .pb7.
- Importing teams from Decrypted 3DS Battle Videos.
- Transferring from one generation to another, converting formats along the way.
- Data is displayed in a view which can be edited and saved. The interface can be translated with resource/external text files so that different languages can be supported.
Showdown Sets
Showdown sets can be imported and exported for the Pokémon currently loaded to the tabs. Party and Battle Box may only be exported.
To export a showdown set from tabs:
- Press CTRL-SHIFT-T, or
- ALT click the Species label, or
- Tools > Showdown > Export Set to Clipboard.
To import a showdown set to tabs:
- Press CTRL-T, or
- CTRL click the Species label, or
- Tools > Showdown > Import Set from Clipboard.
Exporting Party/Battle Box sets:
- Click on the "Party" or "Battle Box" label directly above the sprites, or
- Tools > Showdown > Export Party to Clipboard, or
- Tools > Showdown > Export Battle Box to Clipboard.
PKHeX's Database
PKHeX is able to create a 'pkmdb' folder and store pkm files from all generations for later use. Consider it like a Pokémon Bank.
- The Database may be accessed via Tools > Data > Database, or by pressing CTRL-D.
- Pokémon from the active save file will also appear in the Database.
- You can search to find certain properties via the options on the right side of the window.
What can you do with the results?
- View - Loads into the Main window to view all properties, and can be set into the save file.
- Delete - Can be removed from the database (no undo).
You may additionally use the script command format used by the Batch Editor to do more advanced searching:
- To access the input region, Tools > Search Settings > Advanced Search or press CTRL-A.
- Advanced Search filtering is done after the regular GUI filters on the right side are processed.
- Refer to the Batch Editor tutorial for questions regarding figuring out what to enter.
Transferring between Generations
PKHeX only supports methods of transfer that the games support, emulating the official method of transferring for you.
Transferring can only be done forwards. For example, a pk7 cannot be imported to previous generations. There are multiple ways to accomplish a transfer:
- Individual Transfer:
- Open two instances of PKHeX, one with the source save and one with the destination save.
- Drag and Drop between the two windows.
- Bulk Transfer:
- Open the source Save File. At the top of the main window, select Tools > Data > Dump Boxes.
- You may choose to save to PKHeX's Database, or you may save to a Folder (highly recommend).
- Open the destination Save File in another instance of PKHeX.
- Drop the folder of PKM's on the save file.
- The box contents of the destination save file will be overwritten so that all PKM files have been imported.
Using the Batch Editor
Be cautious when using Batch Editor, because there is no undo:
- If you modify the contents of a Folder, the changes are permanent to those files.
- If you modify the contents of a Save File, the changes are permanent unless you re-load the Save File.
The Batch Editor is a powerful tool in which the user can make mass modifications to Pokémon in either their save file or supplied folder. By using the built in 'script builder', you may select from properties to either 'set' them or filter according to its value. There are three types of 'script commands' that may be entered:
.
- This sets the property of the Pokémon equal to the value..=
- This requires the property to be EQUAL to the value..!
- This requires the property to be NOT EQUAL to the valueIf a 'filter' (=,!) is not satisfied, the Pokémon is skipped.
The script interpreter is smart enough to understand the difference between numbers, strings, and booleans; quotation marks are interpreted literally and should not be used. A hint of the value type is provided beneath the dropdown.
Empty or invalid slots are skipped by default. A slot / file must have a valid Pokémon in order to be modified. Example:
=Box=1 !Slot=1 .Species=7 =IsNicknamed=false
Filters are interpreted first. Even though the "=IsNicknamed=false" appears after the ".Species=7" command, the batch editor will require all filters to be satisfied before any modifications are made. To explain what the above script does, it requires the Pokémon to be in the first box, but not in the first slot, and to be not nicknamed. It then sets the Species ID to 7 (Squirtle).
Batch Editor Special Tricks
- The Batch Editor window references the PKM that is currently viewed in the editing tabs.
- If you select a property name, the Batch Editor will indicate whether or not the tabs PKM has that property.
- If the tabs PKM has that property, the Batch Editor will display the property's current value as well as the data type (number, text, etc).
- To Randomize a PID, use ".PID=$rand".
- To Randomize EncryptionConstant, use ".EncryptionConstant=$rand"
- To Randomize a value within a range, use ".Nature=$x,y" for an inclusive range of [x,y].
- To make a Pokémon Shiny: use ".PID=$shiny".
- To copy the Encryption Constant to the PID, use ".EC=PID".
- To delete a Pokémon, use ".Species=0".
- To set a date (Met / EggMet), use yyyyMMdd for the string.
- Example: ".MetDate=20160409" will set the Met Date to April 9th, 2016.
- Suggestions can be automatically applied for Moves, RelearnMoves, and Met_Location.
- Example: "Moves=$suggest" will retrieve and apply suggested moves from the legality interpreter, same as if you clicked on the Moves groupbox in the tabs editor.
- Legality can be used as a filter. Use "=Legal=false" to only modify illegal Pokémon.
- A full up to date list is available by reading the source code (BatchEditor.cs, ProcessPKM method).
Remember that certain formats/generations do not always have future properties. There are many applications of the Batch Editor including mass hatching, deleting, making everything shiny, or clearing EVs from all applicable Pokémon.
FAQ
Q. Is PKHeX available for the Macintosh OS or Linux?
No. You can use software like Wine/Mono to run it on these operating systems, however the program may not function as intended.
Q> My Pokémon won't work on WiFi battles or can't be traded. Why?
This is usually a Pokémon legality issue. These problems aren't dealt with in the PKHeX subforum; see the announcement regarding cheating online.
Q. What is the Mystery Gift "Received List"?
Every Gift has a unique ID associated with it. When you receive a Mystery Gift the game flags your save file as having obtained the gift, and doesn't allow it to be obtained again.
PKHeX will set the used IDs for you; an ID can be deleted by right clicking the ID and choosing to "Delete".
Q. Can PKHeX create backups automatically?
Yes, create a "bak" folder in the same location as the executable, and PKHeX will export a backup of every new save you load.
Q. (Gen 7, 6) Is PKHeX compatible with Powersaves or Sky3DS?
No. It never will be. Save files must be decrypted in order to load & save, and must be resigned before put back into your cart data.
Q. (Gen 5, 4, 3) I'm using a flash card (R4, Acekard, etc) or emulator and my save file isn't able to be loaded. What's going wrong?
Make sure the save data is in 4 megabit format (512KB) for Gen4/5 games, and 128KB flash for Gen3 games.
Q. (Gen 2, 1) Does PKHeX support these games?
Yes Be sure you are exporting your save file in the "Battery" format (raw save file, not emulator specific).
Useful links
- PKHex Project page.
- Using PKHeX - A set of tutorials about how to use certain aspects of PKHeX.
- Support Forum - Post here if you have questions or found bugs.
- The Beginner's Guide to PKHeX - From PokemonCreate Reddit.
Screenshots
Media
How To Use PKHeX - Official Tutorial (2022) Sword/Shield/BDSP/Legends Arceus (KlutchxGaming)
Known issues
GNU/Linux is not the main Operating System of developers of this program so there may be bugs; some may come from non GNU/Linux specific code of Mono/Wine, so other users may not be able to reproduce the error you are experiencing.
Changelog
v23.06.03
- Added: HOME 3.0.0 initial support. Legality analysis is still under research. Thanks @Lusamine & @sora10pls !
- Lacks full support for cross-game transfers involving evolutions and moves. Please be patient, there's a lot of things to handle!
- Added: Tech Record editor GUI has been redesigned for a more visual experience. Can now sort alphabetically, owned, or move type.
- Added: Gen9 S/V clothing "cheats" have been added to the Trainer Editor window. Thanks @pasqualenardiello!
- Fixed: Small regressions in item list permissions.
- Changed: Gen7 Totem Form sprites now display with an Orange-colored glow, similar to Gen3 C/XD shadow purple.
- Changed: DPI scaling adjusted for better appearance on high resolution monitors.
v23.05.11
- Legality:
- Changed: Creating a new PKM from template will set current moves same as the games.
- Changed: Pokérus strains 0 & 8 now permitted due to official implementation errors in Gen2 & Gen3.
- Fixed: Encounters crossing over into Mesagoza (location 8) are no longer permitted (vertical distance).
- Fixed: TSV=0 HOME accounts are now permitted to exist, and antishiny XOR for the fixed PID gifts now behaves correctly.
- Added: Batch Editor filter commands can now reference other property values (aka "property copy") like modify commands.
- To copy a property, specify like so: .Stat_ATK=*Stat_DEF
- To filter based on the value of another property, same way.
- Added: Moves that have changed elemental type over generations will now indicate their type per the save file context.
- Added: Gen9 Player Image visualizer now shows the profile photos in the Trainer Editor. Thanks @pasqualenardiello !
- Added: Gen7 LGPE can now unlock all fashion via the Trainer Editor.
- Added: Gen5 Block editor now shows both roamer objects (Thundurus and Tornadus).
- Fixed: Gen9 scale indicators now reflect the >=1.1.0 patch scale thresholds. Thanks iD3M0N1C!
- Fixed: Gen5 C-Gear Skin no longer retains a file lock on imported skin image files.
- Fixed: Gen3 Memory Cards can now be detected as the latest save file, as well as a backup-file source for the pkmdb.
- Fixed: Gen3 XD un-purified shadow Pokémon no longer flag w/o Ribbon if they have a Shadow Gauge of 0 (ready to purify).
- Changed: Sub-form scaling mode changed to "Inherit" -- added a Display setting to revert back to Form scaling (from Dpi).
Credits
PKHeX's QR code generation code is taken from QRCoder, which is licensed under the MIT license.
PKHeX's shiny sprite collection is taken from pokesprite, which is licensed under the MIT license.
PKHeX's Pokémon Legends: Arceus sprite collection is taken from the National Pokédex - Icon Dex project and its abundance of collaborators and contributors.
External links
- GitHub - https://github.com/kwsch/PKHeX
- Project Pokemon Forums - https://projectpokemon.org/home/forums/forum/83-pkhex