En este artículo se explica cómo se gestionan las formas múltiples que pueden tener algunos Pokémon. Se habla de los cambios de forma notables y de las diferencias de género.
Vea también[]
- Las Mega Evoluciones son un tipo de forma alternativa.
- Habla sobre todos los demás aspectos que definen una especie de Pokémon.
- Los Pokémon shiny no se consideran como formas alternativas, pero si tienen una apariencia diferente a la de los Pokémon normales.
Formas Múltiples[]
Muchos Pokémon del juego tienen formas múltiples. Estos son:
- Arceus
- Basculin
- Burmy/Wormadam
- Castform
- Cherrim (solo tiene diferencias en los sprites)
- Darmanitan
- Deerling/Sawsbuck
- Deoxys
- Genesect
- Giratina
- Keldeo
- Kyurem
- Landorus
- Meloetta
- Pichu (solo tiene diferencias en los sprites)
- Rotom
- Shaymin
- Shellos/Gastrodon
- Spinda
- Thundurus
- Tornadus
- Unown
- Otras especies que tienen Mega Evoluciones.
Todas estas especies tienen una forma normal, que es la que se define en el archivo PBS "pokemon.txt". Cada forma alternativa es una variante de la forma normal, y esas variantes pueden incluir el tipo del Pokémon, su habilidad y el conjunto de movimientos.
El script PokemonMultipleForms contiene el código utilizado para definir las diferencias de cada unas de las formas.
Cada forma tiene un número. El 0 es el número por defecto, y todos los Pokémon generado tendrán la forma 0 si no hay nada que diga lo contrario. No hay un orden particular en la que deberían numerarse las formas.
La forma del Pokémon se determina con el valor dé pokemon.form
. Si este valor no se corresponde con una forma alterna definida, entonces el Pokémon aparecerá con la forma básica. Técnicamente seguirá siendo una forma alterna, pero una que no tiene ninguna diferencia con la forma original.
Nombres de las Formas[]
La Pokédex tiene una página que muestra todas las formas y diferencias de género de una especie. La mayoría de las formas alternas tienen un nombre especial. La forma básica también puede tener su nombre propio, si "Macho"/"Hembra" o "Forma única" (para especies sin género) no es apropiado para ella.
Los nombres de las formas están definidos en el |PBS "pokemon.txt" en la propiedad "FormNames". La cantidad de nombres determina la cantidad de formas que tiene la especie y que se mostratán en la Pokédex. Siempre se mostrará la forma básica incluso cuando no se haya definido o dado un nombre en particular.
Observa que algunas especies pueden tener múltiples formas y que no son listadas en la Pokédex, por ejemplo Arceus y Genesect.
Diferencias de Género[]
Muchas especies tienen diferencia de género. Estas son solamente de apariencia, ya que lo único que varía es el sprite de ese Pokémon que se muestra en pantalla.
Para definir una especie con más diferencias de género que solamente un cambio de sprite, necesitará imitar la forma en la que se definen las diferencias de formas, pero, en este caso, dependerán del género en lugar de la forma.
Cambios de Forma[]
Distintas especies son capaces de cambiar de forma durante el juego. La mayoría de ellas solo se pueden dar durante una batalla, mientras que las demás son activadas por algún disparador externo (por ejemplo, al acercarse a distintos meteoritos para Deoxys).
Los cambios de forma durante una batalla se gestionan en el script PokeBattle_Battler, en la def pbCheckForm
. Este módulo es llamado varias veces durante una ronda, de manera que el Pokémon pueda cambiar de forma tan pronto como sea posible.
Un puñado de especies necesitan tener inicializada su forma en 0 cada vez que entran en una batalla o cuando termina. Esto se hace llamando a la def pbResetForm
en la misma sección.
Sprites, íconos y gritos[]
Cada vez que un sprite o ícono de un Pokémon es mostrado, se llama a un método que determina la imágen que se usará para ese sprite/ícono. Estos métodos se encuentran en el script PokemonUtilities y se llaman pbLoadPokemonBitmapSpecies
y pbPokemonIconFile
respectivamente.
Estos dos métodos revisan varias propiedades del Pokémon para determinar el sprite o ícono más apropiado en cada momento. Los archivos de sprites se encuentran en la carpeta "Graphics/Battlers", y sus nombres comienzan con "XXX
", donde "XXX" puede ser el nombre interno de la especie o su ID en formato de 3 dígitos. Los archivos de íconos se encuentran en la carpeta "Graphics/Icons", y sus nombres comienzan con "iconXXX
". Todos estos archivos tienen uno o más letras que se le agregan al nombre, que se mencionan a continuación (en orden):
f
- Si es hembra.s
- Si es shiny.b
- Si el sprite está de espalda._1
- Si es una forma alterna. El número es el número de la forma._shadow
- Si es un Pokémon Oscuro.
El juego utiliza todas las combinaciones posibles de las 5 opciones mencionadas, y devuelve el primer (más apropiado) nombre de archivo que corresponde a un gráfico existente.
Por ejemplo, el sprite de espalda de un Gastrodon hembra shiny del Mar del Este debería ser "423fsb_1
". Sin embargo, Gastrodon no tiene diferencia de género, por lo que no debería haber un archivo con este nombre. Luego, ignorando el género, el nombre nuevo es generado como "423sb_1
". Este último nombre si corresponde a un archivo que existe, por lo tanto, es el que se usará como sprite.
Hay un montón de ejemplos en Essentials sobre la forma en que se llaman los sprites y los íconos. Si no estás seguro de un nombre, busca esos ejemplos.
El grito de una especie también puede depender de su forma. Simplemente se debe agregar "_1
" al final del nombre del archivo de sonido, donde el número agregado corresponde al número de la forma como ya se ha comentado (resultando en algo como "025Cry_1.wav
").
¡Notas Importantes![]
Siempre "debe" hacer un archivo de sprite que tenga como nombre el número de ID de la especie (o el nombre interno), de forma que este sprite básico pueda ser usado siempre en lugares como la Pokédex, donde el Pokémon mostrado es solamente un ejemplo de esa especie y no necesariamente representa un Pokémon específico con un género/forma/etc determinados.
Por lo tanto, se recomienza que los sprites básicos sean los usados para la forma 0 del Pokémon, es decir, el primero forma de la especie. Las formas alternas comenzarán con "_1", incluso se podría usar "_0" que es técnicamente válido.
Por ejemplo, Gastrodon debería tener como nombres de sprites "423
" y "423_1
" solamente (la forma por defecto sería West Sea y la forma alterna sería East Sea respectivamente).
Lo mismo se aplica para los archivos de sonido de los gritos, debe haber un archivo de sonido para cada una de las especies sin el número agregado al final.
Diferencias en las Formas[]
Como se mencionó antes, las distintas formas de una especie pueden tener distintas propiedades. Estas diferencias son definidas en el script PokemonMultipleForms.
Las propiedades que se pueden definir específicamente para cada forma de una especie son las siguientes:
Propiedad | Descripción | Especie |
---|---|---|
Características base | Las características base del Pokémon. |
|
Tipo 1 Tipo 2 |
El primer y segundo tipo elemental del Pokémon. Se definen por separado. |
|
Habilidad | La Habilidad del Pokémon. |
|
Movimientos | Los movimientos que puede aprender un Pokémon por nivel. |
|
Peso | El peso base del Pokémon. |
|
Objetos silvestres | El o los objetos que pueden tener los Pokémon salvajes, según la frecuencia puede ser común/poco frecuente/raro. |
|
Exp. Base | Los Puntos de Experiencia básicos que devuelve al ser debilitado el Pokémon. | - |
EV entregado | Los EVs que devuelve al ser debilitado el Pokémon. |
|
Sprite alterno | Esto edita el sprite del Pokémon. En el caso de Spinda, esto significa dibujar los puntos. |
|
Cada una de estar propiedades tienen un procedimiento en PokemonMultipleForms que define las diferencias de las especies.
Además de esos procedimientos, hay algunos más que se usan en distintas circunstancias, generalmente para determinar la forma dependiendo de esas circunstancias. Estos son:
Propiedad | Descripción | Especie |
---|---|---|
getForm
|
Se verifica cada vez que el juego debe mostrar una imágen del Pokémon, y determina la forma que debería tener. La forma puede depender de cualquier cosa, como la ubicación, el objeto que lleva, la hora, etc.
|
|
getFormOnCreation
|
Se utiliza cuando el Pokémon es creado inicialmente, y determina la forma más apropiada (al menos al inicio). La forma puede depender de cualquier cosa, como la ubicación o el tipo de terreno, etc. |
|
getFormOnEnteringBattle
|
Se utiliza cuando el Pokémon entra en batalla, y determina la forma más apropiada. Para Burmy, la forma depende del tipo de campo en el que se está combatiendo. |
|
onSetForm
|
Se utiliza cuando ha sido cambiada la forma del Pokémon (por uno de los procedimientos anteriores o mediante el Modo Depuración), y realiza algunas operaciones extras. Generalmente, ésto simplemente registra la forma nueva en la Pokédex. En el caso de Rotom, este procedimiento enseñará un movimiento dependiendo de cuál sea la forma nueva. |
|
También hay algunos procedimientos adicionales utilizados exclusivamente para las Mega Evoluciones, que no se describen aquí.
Consejos[]
- Cualquier propiedad de un Pokémon que es devuelta por la llamada a un método del script PokeBattle_Pokemon puede hacerse que varíe dependiendo de la forma del Pokémon. Por ejemplo, puedes tener un Pokémon que tenga una probabilidad de género dependiente de su forma, o que su belleza esté siempre al máximo en una forma específica.
- Puedes utilizar los métodos vistos para aplicar diferencias dependiendo de otros criterios en lugar de la forma del Pokémon. Por ejemplo, puedes hacer que todos los Pokémon hembra de una determinada especie tenga siempre un movimiento específico, o que todos los Pokémon shiny de esa especie tengan IVs altos, o que un Pokémon Oscuro tenga algunas diferencias respecto de la versión básica.