Battle Frontier
El Battle Frontier es un conjunto de instalaciones de combate donde el jugador puede participar en desafíos especiales para ganar Puntos de Batalla (BP). Pokémon Essentials incluye de forma nativa la Torre Batalla (Battle Tower) y proporciona un marco para crear otras instalaciones como la Fábrica de Batalla.
Torre Batalla (Battle Tower)
La Torre Batalla es la instalación principal del Battle Frontier. El jugador elige un equipo reducido y se enfrenta a una serie de entrenadores generados aleatoriamente en rondas consecutivas. No se puede usar objetos de la mochila durante los combates.
Iniciar un desafío
Para iniciar un desafío de la Torre Batalla desde un evento, usa la función pbBattleTower:
# Iniciar la Torre Batalla
pbBattleTower
Esta función muestra el menú de la Torre Batalla donde el jugador puede elegir el tipo de desafío, seleccionar sus Pokémon y comenzar.
Flujo del desafío
- El jugador elige el modo de batalla (individual o doble).
- El jugador selecciona los Pokémon de su equipo que va a usar (normalmente 3 para individual, 4 para doble).
- Los Pokémon se ajustan al nivel del desafío (nivel 50 o abierto).
- El jugador se enfrenta a 7 entrenadores por ronda.
- Entre combates, los Pokémon se curan completamente.
- Tras completar la ronda, el jugador gana BP y puede continuar o retirarse.
Tipos de desafío
La Torre Batalla ofrece varios modos de juego:
| Modo | Pokémon del jugador | Combate | Descripción |
|---|---|---|---|
| Individual Lv. 50 | 3 | 1 vs 1 | Todos los Pokémon se ajustan a nivel 50 |
| Individual Abierto | 3 | 1 vs 1 | Los Pokémon mantienen su nivel real |
| Doble Lv. 50 | 4 | 2 vs 2 | Combates dobles, todos ajustados a nivel 50 |
| Doble Abierto | 4 | 2 vs 2 | Combates dobles con nivel real |
Niveles de cap
En los desafíos de nivel 50, todos los Pokémon (tanto del jugador como de los rivales) se ajustan temporalmente al nivel 50. Si un Pokémon tiene nivel inferior a 50, se sube a 50. Si tiene nivel superior, se baja a 50. Los stats se recalculan en consecuencia.
Restricciones de Pokémon
No todos los Pokémon pueden participar en la Torre Batalla. Las restricciones por defecto son:
- Pokémon legendarios prohibidos: Mewtwo, Mew, Lugia, Ho-Oh, Celebi, Kyogre, Groudon, Rayquaza, Jirachi, Deoxys y otros similares definidos en la lista de baneos.
- No se permiten huevos.
- No se permiten Pokémon duplicados (misma especie).
- No se permiten objetos duplicados (mismo objeto equipado en dos Pokémon).
La lista de Pokémon prohibidos se puede configurar en las constantes del Battle Frontier:
# Lista de Pokémon prohibidos en la Torre Batalla
BATTLE_TOWER_BANNED_POKEMON = [
:MEWTWO, :MEW, :LUGIA, :HOOH, :CELEBI,
:KYOGRE, :GROUDON, :RAYQUAZA, :JIRACHI, :DEOXYS,
:DIALGA, :PALKIA, :GIRATINA, :PHIONE, :MANAPHY,
:DARKRAI, :SHAYMIN, :ARCEUS
]
Entrenadores de la Torre
Los entrenadores rivales se generan a partir del archivo PBS battle_tower_trainers.txt (o bttrainers.txt en versiones anteriores). Este archivo define los equipos posibles para los entrenadores.
Formato del archivo
# battle_tower_trainers.txt
#------Pokemon 1Pokemon 2Pokemon 3------
POKEFAN,Alejandro
STARMIE,THUNDERBOLT,ICE_BEAM,PSYCHIC,SURF,LEFTOVERS
SALAMENCE,DRAGON_DANCE,EARTHQUAKE,ROCK_SLIDE,AERIAL_ACE,LUM_BERRY
METAGROSS,METEOR_MASH,EARTHQUAKE,BULLET_PUNCH,ZEN_HEADBUTT,AIR_BALLOON
Cada entrenador tiene definido su tipo, nombre y los Pokémon con sus movimientos y objetos. El juego elige entrenadores apropiados según la racha de victorias actual del jugador.
Dificultad progresiva
Los entrenadores se vuelven más difíciles a medida que la racha de victorias aumenta. El juego selecciona entrenadores de secciones más avanzadas del archivo según la racha actual:
- Rondas 1-6: Entrenadores básicos con equipos sencillos.
- Ronda 7: Jefe de la ronda con un equipo más fuerte.
- Rondas 8-13: Entrenadores intermedios.
- Ronda 14: Segundo jefe, más difícil.
- Rondas 15+: Entrenadores avanzados con equipos competitivos.
Puntos de Batalla (BP)
Los Puntos de Batalla son la moneda que se gana al completar rondas en las instalaciones del Battle Frontier.
Ganar BP
| Ronda completada | BP ganados |
|---|---|
| Rondas 1-6 (primera ronda) | 3 BP |
| Ronda 7 (jefe) | 5 BP |
| Rondas 8-13 | 4 BP |
| Ronda 14 (jefe) | 7 BP |
| Rondas 15+ | 5 BP |
| Ronda 21 (super jefe) | 10 BP |
Gastar BP
Los BP se pueden gastar en tiendas especiales del Battle Frontier para comprar objetos valiosos:
# Verificar BP del jugador
pbMessage("Tienes #{$player.battle_points} BP.")
# Dar BP al jugador
$player.battle_points += 10
# Quitar BP al jugador (para compras)
if $player.battle_points >= 48
$player.battle_points -= 48
pbReceiveItem(:CHOICEBAND)
end
Objetos típicos con BP
| Objeto | Coste (BP) |
|---|---|
| Proteína, Hierro, Calcio, etc. | 1 BP |
| Cinta Elegida (Choice Band) | 48 BP |
| Gafas Elegidas (Choice Specs) | 48 BP |
| Pañuelo Elegido (Choice Scarf) | 48 BP |
| Chaleco Asalto (Assault Vest) | 48 BP |
| Restos (Leftovers) | 48 BP |
| Orbe Vida (Life Orb) | 48 BP |
| Banda Focus (Focus Sash) | 48 BP |
Rachas de victorias y recompensas
La racha de victorias se acumula mientras el jugador siga ganando sin perder. Algunas rachas desbloquean recompensas especiales:
- 7 victorias: Primer jefe. Puede otorgar un trofeo o recompensa especial.
- 21 victorias: Desbloqueo del "Modo Super" con entrenadores más difíciles.
- 49 victorias: Enfrentamiento contra el Cerebro del Frontier (si está implementado).
- 100+ victorias: Gloria eterna y reconocimiento.
# Verificar la racha actual
streak = $player.battle_tower_win_streak
pbMessage("Tu racha actual es de #{streak} victorias.")
# Verificar la mejor racha
best = $player.battle_tower_best_streak
pbMessage("Tu mejor racha es de #{best} victorias.")
Fábrica de Batalla (Battle Factory)
La Fábrica de Batalla es una instalación donde el jugador no usa sus propios Pokémon, sino que elige de un grupo de Pokémon aleatorios proporcionados por la instalación. Después de cada combate, puede intercambiar uno de sus Pokémon por uno del equipo rival.
Concepto básico
- Se presenta al jugador una selección de 6 Pokémon aleatorios.
- El jugador elige 3 (o 4 en dobles) de esos Pokémon para usar.
- Tras ganar un combate, el jugador puede intercambiar uno de sus Pokémon por uno del equipo rival.
- Se repite hasta completar la ronda de 7 combates.
Configurar una instalación
Para configurar tu propio Battle Frontier en el juego, necesitas:
1. Crear los mapas
Diseña el mapa del Battle Frontier con los edificios de cada instalación. Puedes crear un mapa exterior con las instalaciones y mapas interiores para cada una.
2. Evento de entrada
# Evento del NPC de recepción de la Torre Batalla
pbMessage("¡Bienvenido a la Torre Batalla!")
pbMessage("Aquí podrás poner a prueba tus habilidades como entrenador.")
choices = ["Desafío Individual", "Desafío Doble", "Ver registros", "Salir"]
choice = pbMessage("¿Qué deseas hacer?", choices, choices.length)
case choice
when 0 # Individual
pbBattleTower
when 1 # Doble
setBattleRule("double")
pbBattleTower
when 2 # Ver registros
streak = $player.battle_tower_win_streak
best = $player.battle_tower_best_streak
pbMessage("Racha actual: #{streak} victorias.")
pbMessage("Mejor racha: #{best} victorias.")
end
3. Tienda de BP
# Evento del NPC vendedor de BP
pbMessage("¿Quieres intercambiar tus BP por objetos?")
pbMessage("Tienes #{$player.battle_points} BP actualmente.")
items = [
["Proteína", :PROTEIN, 1],
["Hierro", :IRON, 1],
["Cinta Elegida", :CHOICEBAND, 48],
["Gafas Elegidas", :CHOICESPECS, 48],
["Pañuelo Elegido", :CHOICESCARF, 48],
["Orbe Vida", :LIFEORB, 48],
["Banda Focus", :FOCUSSASH, 48]
]
names = items.map { |i| "#{i[0]} (#{i[2]} BP)" }
names.push("Cancelar")
choice = pbMessage("¿Qué objeto quieres?", names, names.length)
if choice < items.length
item = items[choice]
if $player.battle_points >= item[2]
$player.battle_points -= item[2]
pbReceiveItem(item[1])
else
pbMessage("No tienes suficientes BP.")
end
end
Archivos PBS relevantes
| Archivo | Contenido |
|---|---|
battle_tower_trainers.txt | Define los entrenadores y sus equipos para la Torre Batalla |
battle_tower_pokemon.txt | Define los Pokémon que pueden aparecer con sus sets de movimientos |
Consejos y buenas prácticas
- Crea variedad en los entrenadores de la Torre para que la experiencia no sea repetitiva.
- Equilibra los precios de BP para que el jugador tenga que jugar varias rondas pero sin sentir que es excesivo.
- Considera añadir un NPC que explique las reglas al jugador la primera vez.
- Guarda y muestra las rachas de victorias del jugador para motivar la repetición.
- Puedes crear múltiples niveles de dificultad usando diferentes archivos de entrenadores.
- Prueba la Torre Batalla con el menú Debug para verificar que los equipos enemigos están bien balanceados.