Essentials Docs Wiki
For how to define a move, see Defining a move.
For the effects of moves, see Move effects.
For what moves look like when they are used in battle, see Attack animations.
For information about moves which can be used in the overworld, see Using moves outside battle.

This page provides a general overview of how moves work in the game.

Moves known by a Pokémon

Moves known by a Pokémon are stored in the array pkmn.moves. Each move is an instance of class Pokemon::Move, and this array contains up to 4 moves by default.

A move object contains the following information:

  • ID of the move (e.g. :TACKLE).
  • Current PP amount.
  • The number of PP Ups used on the move (a PP Max is the same as 3 PP Ups). Each one increases the total PP by 20% of the original total PP.

The first move is pkmn.moves[0], the second is pkmn.moves[1], and so forth. pkmn.numMoves returns how many moves the Pokémon knows.

The maximum number of PP Ups that can be used on a move is limited only by the effects of the PP Up and PP Max items themselves. There is no such limit in the move object's code.


  • You could let moves be "upgraded" by some means during the game, such as by increasing their base damage or the probability of their additional effects. The PP Up item is an existing feature which upgrades moves; you can just expand on that concept. Your upgrades don't have to be caused by items, of course.