Move System
MCE includes 668+ moves out of the box, covering Physical, Special, and Status categories. This guide explains how moves work, how to browse and assign them, and how to create new ones.
Move Categories
Every move belongs to one of three categories:
| Category | Description | Uses Stat |
|---|---|---|
| Physical | Makes physical contact with the target | Attack vs Defense |
| Special | Ranged or elemental attack | Sp. Attack vs Sp. Defense |
| Status | Does not deal direct damage; applies effects | N/A |
The category determines which stats are used in the damage formula. Physical moves use the attacker's Attack against the defender's Defense; Special moves use Special Attack against Special Defense.
Move Properties
Each Move ScriptableObject has the following fields:
| Field | Description |
|---|---|
| Name | Display name (e.g., "Thunderbolt") |
| Type | The move's type (Electric, Fire, etc.) |
| Category | Physical, Special, or Status |
| Power | Base damage power (0 for Status moves) |
| Accuracy | Hit chance as a percentage (0-100, or -1 for "always hits") |
| PP | Power Points -- how many times the move can be used before resting |
| Priority | Turn order priority (-7 to +5). Higher priority moves go first regardless of Speed |
| Target | Who the move hits: single opponent, all opponents, self, ally, all, etc. |
| Contact | Whether the move makes physical contact (relevant for abilities like Static) |
| Effect | Secondary effect (stat change, status condition, flinch, etc.) |
| Effect Chance | Probability of the secondary effect occurring (0-100%) |
Damage Formula
MCE uses the Gen V+ damage formula:
Damage = ((2 * Level / 5 + 2) * Power * A / D) / 50 + 2
Where:
- Level = attacker's level
- Power = move's base power
- A = attacker's effective Attack or Sp. Attack (including stat stages)
- D = defender's effective Defense or Sp. Defense (including stat stages)
This base damage is then multiplied by a chain of modifiers:
Final = Base * Random * STAB * TypeEffectiveness * Critical * OtherModifiers
| Modifier | Value |
|---|---|
| Random | 0.85 - 1.00 (random factor) |
| STAB | 1.5x if move type matches attacker type |
| Type Effectiveness | 0x, 0.25x, 0.5x, 1x, 2x, or 4x |
| Critical Hit | 1.5x (ignores negative Attack stages and positive Defense stages) |
| Weather | 1.5x or 0.5x for certain type/weather combinations |
| Abilities | Variable (e.g., Adaptability changes STAB to 2x) |
| Items | Variable (e.g., Life Orb = 1.3x) |
Browsing Moves
Use the Database Browser to explore all available moves:
MCE > Tools > Database Browser
The browser lets you:
- Search moves by name.
- Filter by type, category, or power range.
- View all properties of a selected move.
- Jump to the move's ScriptableObject for editing.
Assigning Moves to Monsters
Moves are assigned to monsters through the MonsterEntry ScriptableObject:
Level-Up Moves
Each entry in the level-up moveset pairs a level with a move:
Level 1: Tackle
Level 1: Growl
Level 7: Ember
Level 10: Smokescreen
Level 16: Fire Fang
Level 22: Flame Burst
Level 30: Flamethrower
A monster learns these moves automatically when reaching the specified level. If a monster is caught or generated at a level higher than some of its level-up moves, it will know the most recent 4 moves from its level-up list.
TM/HM Compatibility
A list of Move references indicating which TM and HM moves the species can learn. The player uses TM/HM items from the bag to teach these moves.
Egg Moves
Moves that can only be obtained through breeding. The offspring inherits egg moves from its parents if the parents know those moves.
Tutor Moves
Moves taught by NPCs in-game (typically for a cost or after meeting a condition).
Creating a New Move
- Right-click in your Project window:
Create > OpenMon > Move. - Name the asset (e.g.,
ThunderClaw). - Configure all fields in the Inspector:
Name: Thunder Claw
Type: Electric
Category: Physical
Power: 75
Accuracy: 95
PP: 15
Priority: 0
Contact: true
Effect: May paralyze target
Effect Chance: 30
- Assign it to monsters' level-up, TM, egg, or tutor movelists.
Follow a consistent naming convention. The included moves use natural English names. Keep custom move names concise (1-3 words) and evocative of their type and effect.
Move Effects
Many moves have secondary effects beyond dealing damage:
Stat Changes
Move: Swords Dance
Category: Status
Effect: Raises user's Attack by 2 stages
Status Conditions
Move: Thunder Wave
Category: Status
Effect: Paralyzes the target
Accuracy: 90
Multi-Hit Moves
Some moves hit 2-5 times per turn (e.g., Fury Attack). The number of hits is rolled randomly with weighted distribution.
Recoil Moves
The attacker takes a percentage of the damage dealt as recoil (e.g., Double-Edge deals 33% recoil).
Priority Moves
Moves with positive priority always go first in a turn:
| Priority | Examples |
|---|---|
| +5 | Helping Hand |
| +3 | Fake Out |
| +2 | Extreme Speed |
| +1 | Quick Attack, Aqua Jet, Mach Punch |
| 0 | Most moves |
| -1 | Vital Throw |
| -3 | Focus Punch |
| -5 | Counter, Mirror Coat |
| -6 | Whirlwind, Roar |
| -7 | Trick Room |
Weather Moves
Some moves change the battlefield weather (Rain Dance, Sunny Day, Sandstorm, Hail), which affects damage multipliers and enables certain abilities.
Move Slots
Each monster can know up to 4 moves at a time. When learning a 5th move, the player must choose which existing move to replace. This is handled automatically by the UI -- the move learning screen appears and lets the player pick.
The MoveSlot class tracks:
- The
Movereference. - Current PP remaining.
- PP Ups applied (increases max PP by 20% each, up to 3).
PP Management
- Each move has a base PP value.
- PP decreases by 1 each time the move is used.
- When PP reaches 0, the move cannot be used until restored.
- PP is restored by resting at a healing location, using PP-restoring items (Ether, Elixir), or specific abilities.
- If all moves reach 0 PP, the monster uses "Struggle" (typeless, deals recoil).
Move Animations
Each move can have an associated animation that plays during battle:
- Pre-animation: Effect on the user (charging, glowing).
- Attack animation: The projectile or impact effect.
- Hit animation: Effect on the target (flash, shake).
Animations are configured per-move and can be customized by adding animation prefabs to the move's ScriptableObject.
Best Practices
- Balance power vs accuracy vs PP. High-power moves should have lower accuracy or PP to create meaningful choices.
- Give every type a range of moves. Each type should have Physical, Special, and Status options.
- Consider move distribution across species. Not every monster should learn the best moves.
- Test effect chances. A 100% flinch move with high speed would be extremely overpowered.
- Use the Database Browser to check for gaps in your move coverage before release.