Saltar al contenido principal

Sistema de movimientos

Más de 640 movimientos se distribuyen con la MIT Licensed Demo (descarga aparte), que cubren las categorías Físico, Especial y Estado. Esta guía explica cómo funcionan los movimientos, cómo explorarlos y asignarlos, y cómo crear otros nuevos.

Elegir una acción

Cada movimiento que el jugador puede elegir es una entrada de una lista de aprendizaje, y todos se resuelven por el mismo pipeline que se describe abajo: potencia, precisión, efectividad de tipo y luego efectos.

Categorías de movimientos​

Todo movimiento pertenece a una de tres categorías:

CategoríaDescripciónEstadística que usa
PhysicalHace contacto físico con el objetivoAtaque contra Defensa
SpecialAtaque a distancia o elementalAtaque especial contra Defensa especial
StatusNo inflige daño directo; aplica efectosN/A

La categoría determina qué estadísticas se usan en la fórmula de daño. Los movimientos físicos usan el Ataque del atacante contra la Defensa del defensor; los movimientos especiales usan el Ataque especial contra la Defensa especial.

Propiedades de los movimientos​

Todo movimiento es un ScriptableObject Move (una base abstracta; cada movimiento es una subclase concreta, ver Crear un movimiento nuevo). El Inspector agrupa sus campos:

GrupoCampoDescripción
Base StatsMove TypeEl tipo del movimiento (Eléctrico, Fuego, etc.)
Base StatsMove CategoryPhysical, Special o Status
Base StatsBase Power Points / Max Power PointsPP: cuántas veces se puede usar el movimiento antes de descansar
Base StatsPriorityPrioridad en el orden de turnos (de -7 a +5). Los movimientos de mayor prioridad van primero sin importar la Velocidad
Base StatsMakes ContactSi el movimiento hace contacto físico (relevante para habilidades como Static)
Base StatsAffected By...Si se aplican Protect, Magic Coat, Snatch, Mirror Move o King's Rock
AccuracyInfinite Accuracy / Base AccuracyO bien el movimiento nunca falla, o su probabilidad de acertar
TargetingMove Possible TargetsA quién puede golpear el movimiento (un oponente, todos los oponentes, uno mismo, aliado, todos, etc.)
Multi HitIs Multi HitSi golpea más de una vez por uso

Los movimientos dañinos (DamageMove y sus subclases) añaden Power, un modificador de nivel de crítico y, según la subclase, un efecto secundario como un estado con su probabilidad (StatusChanceDamageMove). La animación, el sonido y los prefabs que reproduce un movimiento viven en su propio grupo Animation.

Fórmula de daño​

MCE usa la fórmula de daño de Gen V+, implementada en DamageMath:

Base = ((2 * Level / 5 + 2) * Power * A / D) / 50 + 2

Donde:

  • Level = nivel del atacante
  • Power = potencia base del movimiento, ajustada a la situación
  • A / D = Ataque efectivo (o Ataque especial) del atacante entre Defensa efectiva (o Defensa especial) del defensor, incluidos los niveles de estadística

Este daño base se multiplica después por una cadena de factores:

Final = Base * Targets * Weather * Terrain * Critical * Random * STAB * TypeEffectiveness * Status * Additional
FactorValor
Targets0,75 cuando el movimiento golpea a más de un objetivo
WeatherDel clima activo para el movimiento (p. ej., la lluvia potencia Agua y debilita Fuego)
TerrainDel terreno activo, si lo hay
Critical1,5x (y un golpe crítico cuenta como 0 todo nivel de estadística por debajo de 0)
RandomUn factor aleatorio entre 0,85 y 1,00
STAB1,5x si el tipo del movimiento coincide con un tipo del atacante (las habilidades pueden cambiarlo: Adaptability lo hace 2x)
Type EffectivenessProducto sobre los tipos del defensor: 0x, 0,25x, 0,5x, 1x, 2x o 4x
StatusEl estado alterado del atacante escala el daño físico: una quemadura lo reduce a la mitad (0,5x)
AdditionalTodo lo que añaden habilidades, objetos equipados, estados de bando y aliados, uno por uno

El resultado se redondea y nunca es menor que 1.

Explorar movimientos​

Usa el Database Browser para explorar todos los movimientos disponibles:

Abre el OpenMon Hub (Tools > MCE > OpenMon Hub) → pestaña Database → Database Browser

El navegador te permite:

  • Buscar movimientos por nombre.
  • Filtrar por tipo, categoría o rango de potencia.
  • Ver todas las propiedades de un movimiento seleccionado.
  • Saltar al ScriptableObject del movimiento para editarlo.

Asignar movimientos a los monstruos​

Los movimientos se asignan a los monstruos mediante el ScriptableObject MonsterEntry:

Movimientos por nivel​

Cada entrada de la lista de movimientos por nivel empareja un nivel con un movimiento:

Level 1:  Tackle
Level 1: Growl
Level 7: Ember
Level 10: Smokescreen
Level 16: Fire Fang
Level 22: Flame Burst
Level 30: Flamethrower

Un monstruo aprende estos movimientos automáticamente al alcanzar el nivel indicado. Si un monstruo se captura o se genera a un nivel superior al de algunos de sus movimientos por nivel, conocerá los 4 movimientos más recientes de su lista por nivel.

Compatibilidad con MT/MO​

Una lista de referencias Move que indica qué movimientos de MT y MO puede aprender la especie. El jugador usa los objetos MT/MO de la mochila para enseñar esos movimientos.

Movimientos huevo​

Movimientos que solo se pueden obtener por cría. La cría hereda los movimientos huevo de sus padres si los padres conocen esos movimientos.

Movimientos de tutor​

Movimientos enseñados por NPCs en el juego. Construye el NPC con el nodo de CommandGraph MoveTutor (enseña un movimiento elegido a un monstruo elegido) y, si quieres, condiciónalo con IfMonsterCanLearnMove; RemindPreviouslyLearntMoves es el "recordador de movimientos".

Crear un movimiento nuevo​

Cada movimiento es una subclase concreta de Move con su propia entrada en el menú de assets bajo Assets > Create > MCE > Monster Database > Moves > <Tipo> > <Movimiento>. Para crear un movimiento nuevo, crea un asset de la clase de movimiento cuyo comportamiento se parezca al que quieres y reconfigura sus estadísticas:

  1. Haz clic derecho en la ventana Project y elige la clase de movimiento adecuada (p. ej., Create > MCE > Monster Database > Moves > Electric > ThunderFang para un movimiento de daño por contacto con probabilidad de parálisis, o ... > Normal > Tackle para un daño por contacto simple).
  2. Ponle nombre al asset (p. ej., ThunderClaw).
  3. Configura todos los campos en el 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
  1. Asígnalo a las listas de movimientos por nivel, MT, huevo o tutor de los monstruos.
Nombres de movimientos

Sigue una convención de nombres coherente. Los movimientos de la demo usan nombres naturales en inglés. Mantén los nombres de tus movimientos personalizados concisos (1-3 palabras) y evocadores de su tipo y efecto.

Efectos de los movimientos​

Muchos movimientos tienen efectos secundarios además de infligir daño:

Cambios de estadísticas​

Move: Swords Dance
Category: Status
Effect: Raises user's Attack by 2 stages

Estados alterados​

Move: Thunder Wave
Category: Status
Effect: Paralyzes the target
Accuracy: 90

Movimientos de golpes múltiples​

Algunos movimientos golpean de 2 a 5 veces por turno (p. ej., Fury Attack). El número de golpes se saca al azar con una distribución ponderada.

Movimientos con retroceso​

El atacante sufre un porcentaje del daño infligido como retroceso (p. ej., Double-Edge inflige un 33 % de retroceso).

Movimientos con prioridad​

Los movimientos con prioridad positiva siempre van primero en un turno:

PrioridadEjemplos
+5Helping Hand
+3Fake Out
+2Extreme Speed
+1Quick Attack, Aqua Jet, Mach Punch
0La mayoría de los movimientos
-1Vital Throw
-3Focus Punch
-5Counter, Mirror Coat
-6Whirlwind, Roar
-7Trick Room

Movimientos de clima​

Algunos movimientos cambian el clima del campo de batalla (Rain Dance, Sunny Day, Sandstorm, Hail), lo que afecta a los multiplicadores de daño y habilita ciertas habilidades.

Ranuras de movimientos​

Cada monstruo puede conocer hasta 4 movimientos a la vez. Al aprender un 5.º movimiento, el jugador debe elegir cuál de los existentes reemplazar. La interfaz lo gestiona automáticamente: aparece la pantalla de aprendizaje de movimientos y deja elegir al jugador.

La estructura MoveSlot registra:

  • La referencia Move.
  • MaxPP (empieza en el BasePowerPoints del movimiento) y CurrentPP, los PP restantes.

Gestión de PP​

  • Cada movimiento tiene un valor base de PP.
  • Los PP disminuyen en 1 cada vez que se usa el movimiento.
  • Cuando los PP llegan a 0, el movimiento no se puede usar hasta que se restaure.
  • Los PP se restauran curando al equipo, usando objetos que restauran PP (Ether, Elixir) o ciertas habilidades.
  • Si no se puede usar ningún movimiento, el monstruo usa el movimiento establecido como NoPPMove en el asset MCESettings (Struggle).

Animaciones de movimientos​

Cada clase de movimiento reproduce su propia animación durante la batalla. El método PlayAnimation del movimiento ejecuta el efecto, y el sonido y los prefabs de animación que usa son campos del grupo Animation del asset del movimiento (por ejemplo, ThunderFang expone un sonido, un prefab de animación de mordisco y un prefab de animación de parálisis). Para cambiar el estilo de un movimiento, asigna otros prefabs y audio a esos campos; para cambiar lo que reproduce, cambia la clase del movimiento (ediciones Source y Studio).

Buenas prácticas​

  1. Equilibra potencia, precisión y PP. Los movimientos de gran potencia deben tener menor precisión o PP para crear elecciones significativas.
  2. Da a cada tipo una variedad de movimientos. Cada tipo debería tener opciones Físicas, Especiales y de Estado.
  3. Considera la distribución de movimientos entre especies. No todos los monstruos deberían aprender los mejores movimientos.
  4. Prueba las probabilidades de los efectos. Un movimiento con un 100 % de retroceso y alta velocidad estaría extremadamente desequilibrado.
  5. Usa el Database Browser para comprobar si hay huecos en tu cobertura de movimientos antes del lanzamiento.