inv_gba
Thread Id: 30027
Thread Name: [Inv FR] Expandir Nombres de Cabezales de Mapas
#0
G0LD_ZTHVARD0X! 27515
Bien, como sabrán hay muchos hackers que en reiteradas ocasiones han querído hacer hacks largos en los cuales hayan dos o tres regiones, mas un impedimento para llevar a cabo esto es que Fire Red nos limita el número de nombres para cabezales de mapas.

Pues ya muchos sabrán que hay hasta 0xC5 nombres de cabezales de mapas disponibles, pero hay algo raro, pues la lista comienza en Pallet Town como número 0x58, quedando en el aire los espacios desde 0x0 hasta 0x57, en este tema trataré de investigar a fondo como usar esos 0x57 slots vacíos.

Tambien es posible expandir de 0xC5 hasta 0xFC (0xFD se guardará para mantener comparibilidad con RZE, 0xFE para espacios vacíos, y 0xFF habitualmente no se usa)

================
Offsets Halladas
================

Datos de sitios disponibles del Worldmap:
Puntero 0xC0D3C
Offsett 0x3F1E60

Datos de movimientos del Worldmap
puntero 0xC3D38
offset 0x3F2178

Datos de puntos de vuelo del Worldmap
puntero 0xC52A8
offset 0x3F2EE0

Nombres de Cabezales de mapas
puntero 1 0xC0C94
puntero 2 0XC4D88
offset 0x3F1CAC

Datos de Flags del Worldmap
puntero 0xC3640
offset 0xC3654

Tabla secundaria
puntero 0xC38BC
offset 0xC38C8


Aunque mi idea sería repuntear esas offsets y editar sus datos, estoy seguro al 100% que esto no es cuestión de solo repuntear, deben haber mas datos o rutinas ASM que definen los nombres de los mapas y bloquean los nombres de 0x0 a 0x57, por eso abro este tema, para que si alguien puede aportar a la investigación y terminarla.

Por último créditos a zilvereyes por ciertos datos y offsets sobre esto.
#1
Cheve_X 15014
Pues yo repunteé las tablas de los nombres, puedes agregar varios, luego de editar el .ini (Porque hay que editarlo) A.Map me leía la tabla nueva y expandida, con el nuevo nombre y todo, pero en el juego, al querer mostrar el nombre del mapa, éste se veía como algo vacío.
Para ver si era la tabla de nombres o algo con el nuevo nombre (Texto) en si, le asigne otro, por ejemplo, Pallet Town, y tampoco funcionaba, seguía apareciendo en Blanco.
Mi teoría es que, por ejemplo, puede haber una rutina que almacena todos los nombres para mostrarlos y al no tener ese no puede mostrarlo y sale como " " (Vacio).

Ah! Y en la Data del Cabezal de Mapa, cuando vamos en el A-Map a la vista profesional:

C0D42D08504E3B085A5416086C2735082C014E00 C5 00020101060000
C0D42D08504E3B085A5416086C2735082C014E00 58 00020101060000

Ese byte es el que cambia cuando a un mismo mapa le cambiamos el nombre, lo selecciona de la tabla y lo muestra.

Por cierto, otra cosa interesante, es que Emerald tiene FF nombres (255) FireRed, como dices, 6E (110), por si a alguien le sirve...

Punter Tabla de Nombres EMERALD: 0x5a1480

Offset donde empieza la tabla EMERALD: 0x0C0C90
#2
G0LD_ZTHVARD0X! 27515
Iniciado por Kuro Neko~
Pues yo repunteé las tablas de los nombres, puedes agregar varios, luego de editar el .ini (Porque hay que editarlo) A.Map me leía la tabla nueva y expandida, con el nuevo nombre y todo, pero en el juego, al querer mostrar el nombre del mapa, éste se veía como algo vacío.
Para ver si era la tabla de nombres o algo con el nuevo nombre (Texto) en si, le asigne otro, por ejemplo, Pallet Town, y tampoco funcionaba, seguía apareciendo en Blanco.
Mi teoría es que, por ejemplo, puede haber una rutina que almacena todos los nombres para mostrarlos y al no tener ese no puede mostrarlo y sale como " " (Vacio).

Ah! Y en la Data del Cabezal de Mapa, cuando vamos en el A-Map a la vista profesional:

C0D42D08504E3B085A5416086C2735082C014E00 C5 00020101060000
C0D42D08504E3B085A5416086C2735082C014E00 58 00020101060000

Ese byte es el que cambia cuando a un mismo mapa le cambiamos el nombre, lo selecciona de la tabla y lo muestra.

Por cierto, otra cosa interesante, es que Emerald tiene FF nombres (255) FireRed, como dices, 6E (110), por si a alguien le sirve...

Punter Tabla de Nombres EMERALD: 0x5a1480

Offset donde empieza la tabla EMERALD: 0x0C0C90


si, si, eso me pasa a mi, por eso busco las ubicaciones que mantienen esos datos bloqueados, asi poder meter hasta 4 regiones con sus datos correctos.
#3
PokePika 29340
¡Genial! Estuve buscando hace tiempo cómo añadir más nombres a zonas y ciudades. ¡Espero que lo consigas!
#4
VampireQueen 28216
Iniciado por CryStal KcK

Cuando creía que ya tenía este tema resuelto pues aparecen un par de fallos, pues para que sepan que esto sigue en pie dejo las offsets que "bloquean" los nombres de los mapas, gracias a las investigaciones de Jambo51 tenemos que:


Lector de flags, sección 2: 0xC3882 - 0x47 (C5 - 7E: Nombres totales -Primero no usable)
Lector de Nombres 1: 0xC4D8A - 0x6C (C4 - 58: Nombres totales - No. de Nombres de Hoenn)
Offset no comprobada: 0xC35E6 - 0x6D (C5 - 58)
^ Comprobador de área donde se capturó un Pokemon: 0x13B844 - 0x6C (C4 - 58)
Comprobador Islas Sevii 1: 0xC0080 - 0xC5
Comprobador Islas Sevii 2: 0xC00CC - 0xC5
Nombres en el WM 1: 0xC0BE6 - 0xC5
Nombres en el WM 2: 0xC067A - 0xC5
Lector de flags, sección 1 : 0xC482C - 0xC5
Barra Negra/Gris: 0xC0B32 - 0xC5
Bytes lectores del mapa:
0xC3538 - 0xC5
0xC3570 - 0xC5
0xC3598 - 0xC5
0xC35CC - 0xC5
0xC41D0 - 0xC5

Cuando complete al 100% la investigación haré un tutorial para esto, y con esto se cumplen los sueños de muchos de querer hacer varias regiones en un hack.

PD: Como no todo es bueno siempre, al hacer esto se pierde toda conectividad con Ruby/Zafiro/Esmeralda, ya que un pokemon proveniente de Hoenn llegaría bugeado

Es todo, Saludos!
.
#5
VampireQueen 28216
Iniciado por CryStal KcK

Bien señoras y señores, encontre que el fallo de la extensión de nombres era debido a que tras extenderlos había que modificar el .ini de a-map 1.95 algo así:

AdvanceMap.ini
[Version:BPR]
mainfile=ini/frMain.ini
mapsfile=ini/frMaps.ini
TilesetIni=ini/frTilesets.ini
Tilesethoehe=40
Teil1Bloecke=$280
SpriteAnz=253
SpritePalettenAnz=18
*AnzMapNamen=197
*CityNameNrAdjustment=$00
AnzTilesets=67
SuchByte=$FF
SuchBeginn=$6B0000
AnzItems=374
AnzAttack=354
(Los (*) significa que eran los datos que crasheaban el a-map)

Y asi señoras y señores, esta investigación queda concluída, en unos días publicaré el tutorial para extenderlos y hacer cuantas regiones les plazca, o siemplemente hacer worldmaps más extensos con posiblilidad de más puntos de vuelo del worldmap

Es todo, saludos!!!
.