data/mods/ and can override any game data.
Mod Structure
Each mod is a directory indata/mods/ containing TypeScript files:
Creating a Mod
Modifying Abilities
Createabilities.ts to add or modify abilities:
abilities.ts
Common Ability Hooks
- Stat Modification
- Damage Modification
- Battle Events
- Move Effects
Modifying Moves
Createmoves.ts to add or modify moves:
moves.ts
Move Properties
Modifying Items
Createitems.ts to add or modify items:
items.ts
Modifying Pokemon
Createpokedex.ts to modify Pokemon:
pokedex.ts
Battle Scripts
Createscripts.ts for custom battle logic:
scripts.ts
Common Script Hooks
onBegin
Called when battle starts
onResidual
Called at end of each turn
onSwitchIn
Called when Pokemon switches in
onFaint
Called when Pokemon faints
getDamage
Modify damage calculation
runMove
Modify move execution
Example: Gen 9 SSB Mod
The Staff Super Battle mod creates custom sets for staff members:scripts.ts
abilities.ts
Type Chart Modifications
Createtypechart.ts to change type effectiveness:
typechart.ts
Testing Your Mod
Common Mod Examples
Stat Boost Mod
scripts.ts
Auto-Weather Mod
scripts.ts
Inverse Battle Mod
scripts.ts
Additional Resources
Abilities Source
Reference for ability implementation
Moves Source
Reference for move implementation
Example Mods
Browse existing mods for examples
Battle Engine
Simulator source code
