Mapa Regional
El Mapa Regional (Town Map) es la representación visual de tu región en el juego. Muestra las ciudades, rutas y puntos de interés, y también se utiliza como interfaz para la función Vuelo (Fly). Se define mediante archivos PBS y gráficos personalizados.
Archivo PBS: town_map.txt
El mapa regional se configura en el archivo PBS/town_map.txt. Este archivo define cada región y
los puntos que aparecen en ella.
La estructura general del archivo es:
[0]
Name = Kanto
Filename = townmap.png
Point = PALLETTOWN,2,11,Pueblo Paleta,Se dice que aquí comenzó todo.
Point = VIRIDIANFOREST,3,8,Bosque Verde,Un denso bosque lleno de Pokémon.
Point = PEWTER,3,6,Ciudad Plateada,La ciudad entre piedras grises.
Point = CERULEAN,10,4,Ciudad Celeste,Una ciudad hermosa llena de flores.
...
Estructura de cada línea
| Campo | Descripción |
|---|---|
[0] |
ID de la región (0, 1, 2...). La primera región es 0. |
Name |
Nombre de la región que se muestra en pantalla. |
Filename |
Nombre del archivo gráfico del mapa (en Graphics/Pictures/). |
Point |
Define un punto en el mapa. Formato detallado abajo. |
Formato de Point
Cada punto se define con la siguiente estructura:
Point = ID_INTERNO,X,Y,Nombre Visible,Descripción
- ID_INTERNO: Identificador interno de la ubicación (debe coincidir con los metadatos del mapa).
- X, Y: Posición del punto en la imagen del mapa (en celdas de cuadrícula, no píxeles).
- Nombre Visible: Nombre que se muestra al jugador al pasar el cursor sobre este punto.
- Descripción: Texto descriptivo que aparece debajo del nombre (opcional pero recomendado).
Destinos de Vuelo (Fly)
Para que un punto del mapa funcione como destino de Vuelo, necesitas dos cosas:
- Definir el punto en town_map.txt con las coordenadas correctas.
- Añadir el punto de aterrizaje en los metadatos del mapa correspondiente, usando el campo
Outdoory configurando la posición de llegada.
También necesitas que el jugador haya visitado ese mapa al menos una vez para que aparezca como destino disponible. Esto se controla automáticamente por Essentials.
Puedes desbloquear destinos de vuelo manualmente con:
# Marcar un mapa como visitado (desbloquea vuelo)
$PokemonGlobal.visitedMaps[ID_DEL_MAPA] = true
Múltiples Regiones
Essentials soporta múltiples regiones. Cada región se define con un bloque separado en
town_map.txt:
[0]
Name = Kanto
Filename = townmap_kanto.png
Point = PALLETTOWN,2,11,Pueblo Paleta,...
...
[1]
Name = Johto
Filename = townmap_johto.png
Point = NEWBARK,14,10,Pueblo Primavera,...
...
Para asignar un mapa a una región, usa el campo MapPosition en los metadatos del mapa:
# En map_metadata.txt
[025]
Name = Pueblo Primavera
MapPosition = 1,14,10 # Región 1, posición X=14, Y=10
Gráficos del Mapa Regional
La imagen del mapa regional se guarda en:
Graphics/Pictures/Town Map/townmap.png
Requisitos del gráfico:
- La imagen se divide en una cuadrícula donde cada celda mide 16×16 píxeles por defecto.
- Las coordenadas X e Y de los puntos en
town_map.txtse refieren a estas celdas. - El tamaño recomendado de la imagen es 480×320 píxeles (30×20 celdas).
- Usa formato PNG con fondo opaco.
Además del mapa base, puedes incluir gráficos adicionales:
- townmap_point.png — Icono del cursor o punto del jugador.
- townmap_fly.png — Icono para destinos de Vuelo disponibles.
Función pbShowMap
Para abrir el mapa regional desde un script o evento, usa:
# Mostrar el mapa regional
pbShowMap
Esta función abre la pantalla del mapa regional mostrando la región actual del jugador. El jugador puede navegar entre puntos y ver sus descripciones.
Para abrir el mapa en modo Vuelo (para elegir destino):
# Mostrar el mapa en modo Vuelo
pbFlyMap
También puedes mostrar una región específica:
# Mostrar la región con ID 1
pbShowMap(1)
Personalización Avanzada
Puedes personalizar el comportamiento del mapa regional editando los scripts correspondientes:
- PokemonRegionMap_Scene: Controla la interfaz visual del mapa.
- PokemonRegionMap: Contiene la lógica principal del mapa regional.
Algunas personalizaciones comunes:
- Añadir iconos personalizados para diferentes tipos de ubicación (cueva, lago, gimnasio).
- Mostrar información adicional al seleccionar un punto (Pokémon disponibles, líder de gimnasio).
- Cambiar el estilo visual del cursor y los marcadores.
- Añadir animaciones al navegar entre puntos.