- For the Shadow type used by Shadow Pokémon, see Shadow Pokémon.
This page describes how elemental types are defined. Each Pokémon has either one or two types, and all moves have one type.
Defining an elemental type
A type begins with its definition. This means that is is listed in the PBS file "types.txt", so that it can be recognised by the game as a type.
PBS file "types.txt"
The PBS file "types.txt" lists all the defined types in the game. Each section in this file is one separate type, where a section begins with a line containing an ID number in square brackets and ends when the next section begins. Each line in a section is one separate piece of information about that type.
 Name = Normal InternalName = NORMAL Weaknesses = FIGHTING Immunities = GHOST
 Name = Dark InternalName = DARK IsSpecialType = true Weaknesses = FIGHTING,BUG,FAIRY Resistances = GHOST,DARK Immunities = PSYCHIC
The possible information that can be defined for a type is as follows:
|[ID number]||Yes||This line must come first in a section, because, as mentioned above, this line defines when a new section begins. This line contains a number inside square brackets, e.g. .
This number must be different for each type. It must be a whole number which is 0 or higher. The ID number is used in Hidden Power's calculation, and when determining which icon corresponds to this type in several graphics (see below).
|Name||Yes||The name of this type (e.g. Fire, Water).|
|InternalName||Yes||This must be different for each type. Also known as the ID, this is how the scripts refer to the type. Typically this is the same as the type's name, but written in all capital letters and with no spaces or symbols. In the scripts, the ID is used as a symbol (i.e. with a colon in front of it, e.g. :GRASS). The ID is never seen by the player.|
|IsSpecialType||No||Is either |
This only applies if the setting
|Weaknesses||No||A comma-separated list of the IDs of all the elemental types that will inflict double damage (i.e. are super effective) against a Pokémon of this type.|
|Resistances||No||A comma-separated list of the IDs of all the elemental types that will inflict half damage (i.e. are not very effective) against a Pokémon of this type.|
|Immunities||No||A comma-separated list of the IDs of all the elemental types that cannot inflict any damage on a Pokémon of this type.|
|IsPseudoType||No||Is either |
No Pokémon should have a pseudotype as one of its elemental types. Pseudotypes cannot be searched for in the Pokédex, the move "Conversion" and the ability "Color Change" cannot change a Pokémon's type to a pseudotype, and so on.
Note that the "
???" type should be defined just like any other type. By default, it is the only pseudotype.
Effects of types
Certain types have special effects. For example, Fire-type Pokémon cannot be burned, Ice-type Pokémon cannot be frozen, Flying-type Pokémon are considered to be airborne (making them usually immune to Ground-type moves), and so on. These effects are all coded in the scripts, and are not defined in "types.txt".
Type icons and graphics
Each elemental type requires a number of graphics corresponding to it. The graphics are as follows:
- Type icon - In the "Graphics/Pictures" folder, called "types.png".
- Pokédex type icon - In the "Graphics/Pictures/Pokedex" folder, called "icon_types.png".
- Move box - In the "Graphics/Pictures/Battle" folder, called "cursor_fight.png". Includes both a non-highlighted and a highlighted version of each type's box, side by side.
The order of each icon/box in these files is the same, and is the order of the ID numbers defined in the PBS file "types.txt". Type 0 (Normal) will be first, followed by type 1 (Fighting), etc.
The dimensions of each icon/box cannot be changed except by changing every script in which those graphics are used.