- trainertypes.txt - Defines trainer classes and their properties
- trainers.txt - Defines individual trainer battles
trainertypes.txt
Defines trainer classes (types) like “Youngster”, “Leader”, “Elite Four”, etc.File Format
Each line defines one trainer type:Example Entries
Field Definitions
Unique trainer type ID. Sequential numbering.
Internal identifier in UPPERCASE. Used in trainers.txt and events.
Display name for this trainer class.
Base prize money multiplier. Final money = BaseMoney × highest level Pokémon.
Battle music filename (without extension). Leave empty for default.
Victory music effect. Leave empty for default.
Battle intro music effect. Leave empty for default.
Trainer’s gender. Valid:
Male, Female, Mixed (for doubles)Items the trainer can use in battle. Leave empty for none.
AI skill level. Leave empty for default. Higher = smarter AI.
trainers.txt
Defines individual trainer battles with their Pokémon teams.File Format
Trainers are defined in blocks:Block Structure
Internal name of trainer type from trainertypes.txt.
Trainer’s personal name (or name variation number).
Party size, followed by items the trainer carries.
One line per Pokémon. Format:Minimum format (species and level only):Full format example:
Pokémon Field Parameters
Internal name of the Pokémon species.
Pokémon’s level (1-100).
Held item internal name. Leave empty for none.
Up to 4 moves (internal names). Leave empty to use level-up moves.
Form number for Pokémon with multiple forms (0 = first form).
M for male, F for female. Leave empty for random/genderless.Ability index or internal name. Leave empty for default.
Write
shiny for shiny Pokémon. Leave empty for normal.Write
shadow for Shadow Pokémon. Leave empty for normal.Individual Values (0-31). Leave empty for random.
Friendship value (0-255). Leave empty for default.
Custom nickname. Leave empty for species name.
Poké Ball type (item ID). Leave empty for Poké Ball.
Terastal type for Generation 9 mechanics.
Complete Examples
Simple Trainer
- Youngster Ben
- 2 basic Pokémon
- No items, default moves
Gym Leader
- Gym Leader Brock
- 2 Pokémon with items and custom moves
- Both male, 20 IVs
- Onix is shiny, nicknamed “Rocky”, holding Sitrus Berry
- Onix has Water Tera Type
Rival Battle (Multiple Versions)
- Three versions of Blue (based on player’s starter)
- Use
Blue,1andBlue,2for variations - Same structure, different starter
Team Rocket Battle
- Male Team Rocket grunt
- Version 1
- One Pokémon with default moves
trueflag at end (special property)
Champion Battle
- Champion Blue
- High-level team (63)
- All holding Sitrus Berries
- Default moves based on level
Specialized Trainer
- Test trainer
- Level 50 shiny Arboliva
- Holding Grassium Z
- Custom moveset
- Male, 20 IVs
- Ball ID 19
Trainer Variations
Use version numbers for trainers you battle multiple times:- First battle:
Jeff(no version number) - Rematch:
Jeff,1 - Further rematches:
Jeff,2,Jeff,3, etc.
AI and Items
Trainer behavior is defined in trainertypes.txt:AI Skill Levels
AI Skill Levels
- 0 - No AI (random moves)
- 16 - Basic AI (type advantages)
- 32 - Standard AI (most trainers)
- 48 - Good AI (strategic)
- 60 - Strong AI (important trainers)
- 100 - Maximum AI (Champions, Leaders)
Trainer Items
Trainer Items
Trainers can carry healing items defined on Line 3:Items are used by AI during battle based on the trainer’s skill level.
Double Battles
For double battles, use trainers withMixed gender:
- Two trainers in one battle
- Names separated by
& - Both Pokémon sent out at once
Separators: Use
#------------------- to separate trainer definitions for readability. This is optional but recommended.Empty Fields: When leaving fields empty, still include the commas as placeholders. For example:
PIKACHU,25,,,,,0,M leaves item and moves empty but specifies form and gender.Terastal: The TeraType parameter is only used in Generation 9+ mechanics. It’s the last parameter and defines which type the Pokémon Terastallizes into.