El motor
Combate
Las fórmulas de tercera generación tal y como están escritas en el motor, no como se recuerdan. Todo esto vive en battle/damage.ts y battle/battle.ts.
El combate es autoritativo: lo resuelve el servidor y el cliente solo lo pinta. Todas las tiradas salen de un generador con semilla guardado con la partida, así que un combate se puede reconstruir exactamente igual después de reiniciar el servidor.
Orden de turno
Cada turno se resuelve siempre en el mismo orden:
- Huir, si alguien lo intenta. Si sale bien, el combate termina ahí.
- Objetos y cambios, por velocidad. Van antes que cualquier ataque.
- Ataques, ordenados por prioridad y luego por velocidad.
- Fin de turno: clima, veneno, Restos y todo lo demás.
El orden de los ataques se decide así, en este orden de desempate:
- La prioridad del movimiento (Ataque Rápido +1, Contraataque −5…).
- Garra Rápida: si la lleva equipada, un 1 entre 5 de adelantarse pase lo que pase.
- La velocidad efectiva.
- Empate exacto: se lanza una moneda.
La velocidad efectiva es la Velocidad por su multiplicador de etapa, ×2 si hay Nado Rápido con lluvia o Clorofila con sol, ×0,5 si lleva Brazal Firme y, al final del todo, dividida entre 4 si está paralizado.
Daño
La fórmula es la de tercera generación, con los truncamientos en el mismo sitio que en los
juegos originales. El orden importa: cada piso() pierde decimales que ya no
vuelven.
base = piso( piso( piso(2 × nivel / 5 + 2) × potencia × ataque / defensa ) / 50 )
si hay pantalla y no es crítico → base = piso(base / 2)
clima: lluvia → Agua ×1,5 Fuego ÷2
sol → Fuego ×1,5 Agua ÷2
Absorbe Fuego activo y movimiento de Fuego → ×1,5
base = base + 2
si es crítico → ×2
objeto potenciador de tipo → piso(×1,1)
modificador extra (Auxilio, Estoicismo…) → piso(×n)
base = piso( base × aleatorio(85..100) / 100 )
si el tipo del movimiento es de los del atacante (STAB) → piso(×1,5)
efectividad de tipos → piso(×efectividad)
daño = max(1, base) Ataque y defensa son At./Def. en los movimientos físicos y At. Esp./Def. Esp. en los especiales, cada uno con su multiplicador de etapa ya aplicado. Antes de entrar en la fórmula se aplican las habilidades que tocan las estadísticas: Potencia Pura y Fuerza Bruta duplican el Ataque físico, Entusiasmo lo sube ×1,5, Escama Especial sube la Defensa ×1,5 contra físicos si el atacante tiene un estado, y la quemadura lo reduce a la mitad salvo con Agallas.
Si la efectividad es 0 no se calcula nada: el daño es 0 y se anuncia la inmunidad.
Multiplicadores por etapa
Las etapas van de −6 a +6. Ataque, Defensa, los Especiales y la Velocidad usan una tabla; la
Precisión y la Evasión usan otra (la de tercios). Estos números salen de llamar a
boostMultiplier() y accuracyMultiplier().
| Etapa | At./Def./Esp./Vel. | Precisión / Evasión |
|---|---|---|
| +6 | ×4 | ×3 |
| +5 | ×3,5 | ×2,667 |
| +4 | ×3 | ×2,333 |
| +3 | ×2,5 | ×2 |
| +2 | ×2 | ×1,667 |
| +1 | ×1,5 | ×1,333 |
| 0 | ×1 | ×1 |
| -1 | ×0,667 | ×0,75 |
| -2 | ×0,5 | ×0,6 |
| -3 | ×0,4 | ×0,5 |
| -4 | ×0,333 | ×0,429 |
| -5 | ×0,286 | ×0,375 |
| -6 | ×0,25 | ×0,333 |
Precisión
Antes de tirar precisión se comprueban, por este orden: Protección, semiinvulnerabilidad (Vuelo, Excavar), inmunidad de tipo y habilidades que absorben. Solo entonces se tira.
si el movimiento no tiene precisión (Rapidez, As Aéreo…) → acierta siempre si hay Fijar Blanco activo → acierta siempre y se consume evasión = 0 si el rival tiene Profecía, si no su etapa de evasión acierto = precisión_del_movimiento × multiplicador(etapa_precisión − evasión) Ojo Compuesto ×1,3 Entusiasmo ×0,8 (solo movimientos físicos) Velo Arena ×0,8 (solo con tormenta de arena) Polvo Brillo ×0,9 Trueno con lluvia → acierta siempre Trueno con sol → acierto = 50 (pisa todo lo anterior) Ventisca con granizo → acierta siempre acierta si aleatorio(0..99) < min(100, redondeo(acierto))
Fallar con Patada Salto o Patada Salto Alta cuesta PS máx. ÷ 8 de daño de caída.
Golpe crítico
El crítico va por «niveles», que se suman: el critRatio del movimiento por encima
de 1, +2 por Foco Energía, +2 por Más Psique, +1 por la Lupa, y +2 por la Suerte Kiss en
Chansey o el Palo en Farfetch'd. Escudo Batalla y Caparazón bloquean el crítico por completo.
| Nivel de crítico | Fracción | Probabilidad |
|---|---|---|
| 0 | 1/16 | 6,25% |
| 1 | 1/8 | 12,50% |
| 2 | 1/4 | 25,00% |
| 3 | 1/3 | 33,33% |
| 4 o más | 1/2 | 50,00% |
Un crítico hace tres cosas: multiplica el daño ×2, ignora las pantallas y calcula como si el atacante no tuviera bajadas de ataque ni el defensor subidas de defensa.
STAB y efectividad
Si el movimiento es de uno de los tipos del atacante, el daño se multiplica por 1,5 (STAB). Después se aplica la efectividad, que es el producto de la fila del tipo atacante contra cada uno de los tipos del defensor: contra un doble tipo se multiplican las dos casillas, así que hay ×4 y ×0,25.
La tabla de tipos
17 tipos jugables: la tabla de antes del tipo Hada. Se lee de fila (el que ataca) a columna (el que defiende).
| Ataca ↓ / Defiende → | Eléctrico | Fantasma | Planta | Acero | Siniestro | Bicho | Dragón | Lucha | Fuego | Volador | Tierra | Hielo | Normal | Veneno | Psíquico | Roca | Agua |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Eléctrico | ½ | ½ | ½ | 2 | 0 | 2 | |||||||||||
| Fantasma | 2 | ½ | ½ | 0 | 2 | ||||||||||||
| Planta | ½ | ½ | ½ | ½ | ½ | ½ | 2 | ½ | 2 | 2 | |||||||
| Acero | ½ | ½ | ½ | 2 | 2 | ½ | |||||||||||
| Siniestro | 2 | ½ | ½ | ½ | 2 | ||||||||||||
| Bicho | ½ | 2 | ½ | 2 | ½ | ½ | ½ | ½ | 2 | ||||||||
| Dragón | ½ | 2 | |||||||||||||||
| Lucha | 0 | 2 | 2 | ½ | ½ | 2 | 2 | ½ | ½ | 2 | |||||||
| Fuego | 2 | 2 | 2 | ½ | ½ | 2 | ½ | ½ | |||||||||
| Volador | ½ | 2 | ½ | 2 | 2 | ½ | |||||||||||
| Tierra | 2 | ½ | 2 | ½ | 2 | 0 | 2 | 2 | |||||||||
| Hielo | 2 | ½ | 2 | ½ | 2 | 2 | ½ | ½ | |||||||||
| Normal | 0 | ½ | ½ | ||||||||||||||
| Veneno | ½ | 2 | 0 | ½ | ½ | ½ | |||||||||||
| Psíquico | ½ | 0 | 2 | 2 | ½ | ||||||||||||
| Roca | ½ | 2 | ½ | 2 | 2 | ½ | 2 | ||||||||||
| Agua | ½ | ½ | 2 | 2 | 2 | ½ |
2 súper efectivo (×2) ½ poco efectivo (×0,5) 0 inmune (×0) normal (×1)
Por qué 17 y no 18
El dataset guarda 18 entradas en types, pero una es
???, el tipo interno que la tercera generación usa para Maldición y para el
autogolpe de la confusión. No es jugable y no aparece en ningún Pokémon ni en la tabla:
playableTypes() lo filtra. Tipos de verdad hay 17.
Estados
Solo puede haber un estado a la vez y no se cura solo. Un estado falla si el objetivo ya tiene otro, si su lado tiene Velo Sagrado o si hay un Sustituto de por medio y la fuente es el rival.
| Estado | Daño por turno | Efecto | Inmunes |
|---|---|---|---|
| Quemadura | PS máx. ÷ 8 al final de cada turno | Además reduce a la mitad el Ataque físico, salvo con Agallas (que en su lugar lo sube ×1,5). | Tipo Fuego · habilidad Cura Líquida |
| Parálisis | — | La Velocidad se divide entre 4 y cada turno hay un 25% de perder el turno. | Habilidad Flexibilidad |
| Envenenamiento | PS máx. ÷ 8 al final de cada turno | Daño fijo, no crece. | Tipos Veneno y Acero · habilidad Inmunidad |
| Envenenamiento grave | PS máx. × contador ÷ 16, y el contador sube 1 cada turno hasta 15 | Empieza en 1/16 y termina llevándose 15/16 por turno si el combate se alarga. | Tipos Veneno y Acero · habilidad Inmunidad |
| Sueño | — | Dura de 1 a 4 turnos. Al despertar se actúa ese mismo turno. Dormido solo se pueden usar Ronquido y Sonámbulo. | Habilidades Insomnio y Espíritu Vital |
| Congelación | — | Cada turno hay un 20% de descongelarse antes de actuar. Aquí los movimientos de Fuego NO descongelan. | Tipo Hielo · habilidad Escudo Magma |
Se curan con Cura Natural al retirarse, con Mudar (30% por turno), con una Baya Zreza (solo el sueño) o con una Baya Ziuela (cualquier estado), además de con los objetos de siempre.
Estados volátiles
Los que desaparecen al cambiar de Pokémon o al acabar el combate:
| Volátil | Qué hace |
|---|---|
| Confusión | Dura de 2 a 5 turnos. Cada turno, un 50% de golpearse a sí mismo con un ataque de 40 de potencia sin tipo (ni STAB ni efectividad), usando el propio Ataque contra la propia Defensa. Golpearse no gasta PP. Bloqueada por Despiste. |
| Atracción | 50% de perder el turno, cada turno. Encanto la aplica al contacto con un 30%. |
| Retroceso | Pierdes el turno. Bloqueado por Foco Interno. |
| Protección / Aguante | Duran 1 turno. Encadenarlos falla con probabilidad creciente: la segunda vez seguida es 1/2, la tercera 1/4, la cuarta 1/8… |
| Semilla Drenadora | Drena PS máx. ÷ 8 por turno y cura al rival exactamente lo que ha quitado. Falla contra tipo Planta. |
| Sustituto | Cuesta PS máx. ÷ 4 y falla si no tienes más PS que eso. Absorbe daño y bloquea estados y volátiles ajenos. |
| Maldición | PS máx. ÷ 4 al final de cada turno. |
| Pesadilla | PS máx. ÷ 4 por turno, solo mientras siga dormido. |
| Mofa | De 2 a 4 turnos sin poder usar movimientos de estado. |
| Bostezo | Dos turnos después, duerme. Falla si ya hay un estado. |
| Atadura | De 2 a 5 turnos: PS máx. ÷ 16 por turno y no se puede cambiar. |
| Movimiento encadenado | Furia Dragón y compañía: 2 o 3 turnos obligados, y al acabar deja confuso. |
| Profecía | Anula la evasión del rival y sus inmunidades de tipo. |
| Mismodestino, Arraigo, Foco Energía, Tormento, Rizo Defensa, Reducción, Carga | Implementados con su comportamiento habitual de tercera generación. |
Clima
Hay cuatro: sol, lluvia, tormenta de arena y granizo. Los movimientos que lo invocan lo dejan siempre en 5 turnos; las habilidades de entrada (Llovizna, Sequía, Chorro Arena) también.
- Lluvia: Agua ×1,5, Fuego ÷2. Trueno no falla. Nado Rápido duplica la Velocidad.
- Sol: Fuego ×1,5, Agua ÷2. Trueno baja a 50 de precisión. Rayo Solar no necesita cargar. Clorofila duplica la Velocidad.
- Tormenta de arena: PS máx. ÷ 16 por turno a todo el que no sea Roca, Tierra o Acero, ni tenga Velo Arena o Chorro Arena.
- Granizo: PS máx. ÷ 16 por turno a todo el que no sea de tipo Hielo. Ventisca no falla.
Aire Claro y Nubosidad anulan los efectos del clima (multiplicadores, precisión, Bola Clima), pero no el daño residual de la arena y el granizo, que se sigue aplicando.
Fin de turno
Los efectos residuales se resuelven por velocidad y en este orden exacto para cada Pokémon:
- Clima: baja el contador, mensaje de mantenimiento y daño de tormenta de arena o granizo (PS máx. ÷ 16).
- Restos: cura PS máx. ÷ 16.
- Arraigo: cura PS máx. ÷ 16.
- Deseo: si le toca, cura PS máx. ÷ 2.
- Estado: quemadura (÷8), veneno (÷8), tóxico (contador ÷16 creciente).
- Maldición: PS máx. ÷ 4.
- Pesadilla: PS máx. ÷ 4.
- Semilla Drenadora: PS máx. ÷ 8 al sembrado, curados al sembrador.
- Atadura: PS máx. ÷ 16.
- Bostezo: si le toca, duerme.
- Canto Mortal: baja el contador; a cero, el Pokémon cae.
- Mudar: 30% de curarse el estado.
- Impulso: +1 de Velocidad.
Las bayas no son una fase aparte: saltan en cuanto un Pokémon recibe daño y no cae. La Baya Aranja cura 10 PS y la Baya Zidra 30 cuando quedan la mitad o menos de los PS; ambas se consumen.
Captura
Fórmula de tercera generación, con las cuatro sacudidas y todo. ratio es el
catch rate de la especie (0-255, lo verás en cada ficha de la
Pokédex).
a = piso( (3 × PSmáx − 2 × PSactual) × ratio × ball / (3 × PSmáx) × estado ) si a ≥ 255 → captura garantizada si a < 1 → a = 1 b = piso( 1048560 / raíz4(16711680 / a) ) probabilidad = (b / 65536)^4 Se tiran 4 sacudidas: cada una acierta si aleatorio(0..65535) < b. Cuatro sacudidas = capturado. Una que falle, y se escapa.
El multiplicador de estado es ×2 si está dormido o congelado y ×1,5 si está paralizado, quemado o envenenado. La Marca del Domador añade otro ×1,3 por encima de todo esto.
Las Poké Balls
| Ball | Precio | Multiplicador |
|---|---|---|
| Poké Ball | 200 Ecos | La ball de siempre. |
| Super Ball | 600 Ecos | Ratio de captura ×1,5. |
| Ultra Ball | 1200 Ecos | Ratio de captura ×2. |
| Malla Ball | 1000 Ecos | ×3 contra Bicho y Agua. |
| Nido Ball | 1000 Ecos | Mejor cuanto menor es el nivel rival. |
| Turno Ball | 1000 Ecos | Mejora con cada turno del combate. |
| Ball Ocaso | 1500 Ecos | ×3,5 en los círculos profundos. |
| Master Ball | no se vende | Captura infalible. Solo una por partida. |
Los multiplicadores exactos: Nido Ball vale (40 − nivel) / 10 por debajo de nivel
40 (con un mínimo de 1), Turno Ball vale (turno + 10) / 10 con un tope de 4, y Ball
Ocaso vale 3,5 a partir del círculo 4 (en el Limbo no hay cuevas ni noche: la oscuridad es la
profundidad). La Master Ball es infalible y solo hay una por partida.
Huir
Solo se puede huir de un salvaje: ni del Heraldo, ni del Coliseo, ni de un entrenador. Si tienes más Velocidad que el rival, huyes siempre. Si no:
f = (piso(velocidad_propia × 128 / velocidad_rival) + 30 × intentos) % 256 huyes si aleatorio(0..255) < f
Fuga y la Bola Humo hacen que nunca falle; también la reliquia Azogue. Estar atrapado lo impide, salvo que seas de tipo Fantasma o tengas Fuga.
Qué tan lista es la IA
La IA puntúa cada movimiento estimando el daño real con la misma fórmula que el combate, y luego le suma ruido aleatorio. Cuanto menos ruido, mejor juega.
| Nivel | Dónde sale | Ruido | ¿Cambia de Pokémon? | Movimientos de estado |
|---|---|---|---|---|
| Salvaje | Combates salvajes | hasta +55 | No | Puntuación fija: no los evalúa |
| Entrenador | Almas en Pena, espectros | hasta +22 | No | Evaluación completa |
| Élite | Combates élite | hasta +10 | Sí | Evaluación completa |
| Heraldo | Jefes y legendarias | hasta +4 | Sí | Evaluación completa |
Un salvaje suma +20 a un movimiento que remata; los demás suman +80, así que un Heraldo siempre te va a rematar si puede. Élites y Heraldos solo cambian de Pokémon si llevan al menos dos turnos fuera, si el rival les hace ×2 o más y si están por debajo del 40% de PS.
Detalles sueltos
- Variocolores: 1 entre 350. En los juegos originales es 1 entre 8192; aquí se ha subido para que en una partida de un par de horas pueda llegar a pasar.
- Sin Centro Pokémon: los PS, los PP y los estados se conservan entre combates.
- Púas: 1 capa quita PS máx. ÷ 8 al entrar, 2 capas ÷ 6 y 3 capas ÷ 4. Los Volador y los que tengan Levitación no las pisan.
- Shedinja tiene 1 PS siempre, como debe ser.