Jump to content

Frequently Asked Questions


Recommended Posts


Is PKHeX available for the Macintosh OS or Linux?

No. You can use virtualization software like Parallels or VMWare to run a Windows OS virtual machine.

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.

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".

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.

Generations 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.

Generations 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.

Generations 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).

Link to comment
Share on other sites

Pokémon Showdown Sets

People running a genning service may ask for you to supply a request in a Showdown Set format, which can be done either by Showdown's Team Builder or by using PKHeX.

Showdown sets can be imported and exported for the Pokémon currently loaded to the tabs.

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


Party and Battle Box may only be exported.

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
Link to comment
Share on other sites

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.


The above image is what you may see if you have LOTS of Pokémon dumped to your database. Pokémon from the active save file will also appear.

The Database may be searched to find certain properties that you desire 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.

Below is an example of using the Advanced Search filters:


Edited by evandixon
Fix images
  • Thanks 1
Link to comment
Share on other sites

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:

  1. Individual Transfer
    1. Open two instances of PKHeX, one with the source save and one with the destination save.
    2. Drag and Drop between the two windows.
  2. Bulk Transfer
    1. Open the source Save File. At the top of the main window, select Tools->Data->Dump Boxes.
    2. You may choose to save to PKHeX's Database, or you may save to a Folder [DO THIS!].
    3. Open the destination Save File in another instance of PKHeX.
    4. Drop the folder of PKM's on the save file.
    5. The box contents of the destination save file will be overwritten so that all PKM files have been imported.
Link to comment
Share on other sites

Using the Batch Editor


When using the Batch Editor, 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. The script in the image above is an example of how to redefine the trainer and friendship details of the Pokémon, effectively 'stealing' it from another trainer.

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.
Other filters exist, similar to = and ! -- refer to the GUI command builder.

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.

An advanced modification script is demonstrated in the following image:



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).

Special Tricks

  1. The Batch Editor window references the PKM that is currently viewed in the editing tabs.
    1. If you select a property name, the Batch Editor will indicate whether or not the tabs PKM has that property.
    2. 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).
  2. To Randomize a PID, use ".PID=$rand".
  3. To Randomize EncryptionConstant, use ".EncryptionConstant=$rand"
  4. To Randomize a value within a range, use ".Nature=$x,y" for an inclusive range of [x,y].
  5. To make a Pokémon Shiny: use ".PID=$shiny".
  6. To copy the Encryption Constant to the PID, use ".EC=PID"
  7. To delete a Pokémon, use ".Species=0"
  8. To set a date (Met / EggMet), use yyyyMMdd for the string.
    1. Example: ".MetDate=20160409" will set the Met Date to April 9th, 2016.
  9. Suggestions can be automatically applied for Moves, RelearnMoves, and Met_Location.
    1. 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.
  10. Legality can be used as a filter. Use "=Legal=false" to only modify illegal Pokémon.
  11. 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.

  • Like 2
Link to comment
Share on other sites

This topic is now closed to further replies.
  • Create New...