IMPORTANTE:
Version 2.0 (21/feb/2014)
Se ha arreglado el problema de compatibilidad con otros parches.
Hoy es un buen dia para el RH-GBC, una de las rutinas mas codiciadas de los juegos de segunda generación vera la luz en la comunidad hispana, la tan ansiada y anhelada rutina "Seleccion de Genero para GOLD & SILVER".
Agradecimientos especiales a GOLD_Z! por haber conseguido los datos para llevar a cabo la rutina.
-------------------------
Contenido:
-------------------------
Este parche contiene rutinas extendidas que permiten la seleccion del genero del protagonista
en los juegos "Pokémon GOLD & SILVER" al igual como se hace en "Pokémon CRYSTAL"
Para asignar tanto el Front Sprite como los OverWorld, se sobrescriben datos originales del juego que son de facil adaptacion:
-El Front Sprite se inserto en el trainer 0x2A correspondiente al "Rival(2)". Sus datos de batalla se asignaron al trainer 0x09 "Rival(1)".
-El OverWorld "normal" se asigno al OverWorld 0x5E correspondiente al "trofeo"
-El OverWorld "en bicicleta" se asigno al OverWorld 0x58 correspondiente a la "recepcionista"
Se debe tener en cuenta tambien que el Back Sprite comparte las paletas del protagonista masculino.
Resumen de las rutinas:
-----------
OverWorld
-----------
$1413C ; call $17FBA
$1417E ; call $17FBA
$17FBA ; Rutina para cargar 2 OW ($17FF2 indica el OW normal y $17FF2 el OW en bicicleta).
-----------
"Are you boy or..."
-----------
$5FA5 ; salto a la pregunta inicial con formato 3E zz 21 xx yy CF
$60190 ; rutina de seleccion de genero
-----------
Introduccion
-----------
$6088 ; call $78F0
$78F0 ; carga de Nombre
$602C-$603F ; rutina para la seleccion de genero.
$7FD0
$790C ; lista de nombres
$60D2 ; call a nombre por defecto
-----------
Back Sprite
-----------
Código:
$3F951 ; call @script extendido
$3FEA0 @script extendido:
ld a, D119 ; carga el tipo de batalla
cp a, 03 ; si es tipo 3 (tutorial de cpatura), "set z flag"
jr nz 08 ; omite si no es "set"
ld b, 0F ; carga el Bank del sprite "DUDE"
ld hl, 7B5B ; carga hl con el Back del "DUDE"
jp @show pic
ld a, DECB ; carga a con el genero del protagonista
cp a, 01 ; si es la chica "set z flag"
jr nz 08 ; omite si no es "set"
ld b, xx ; carga el Bank del Back de la chica ($3FEB7)
ld hl, YYYY ; carga hl con el Back de la chica ($3FEB9)
jp @show pic
ld b, 0F ; carga b con el Bank del Back Sprite por defecto
ld hl, 79CB ; carga hl con el Back Sprite por defecto
jp @show pic
@show pic
ld de, 9310 ; carga la direccion RAM para escribir los datos en hl
ld c, 31
ld a, 3F
call 2E49 ; llama la rutina de transferencia de Back Sprite??
ret
-----------
Trainer Card
-----------
$25CCF ; graficos de la TRAINER's CARD
$250A3 ; llamada a rutina de cambio de TC (call $7BE0)
$27BE0 ; rutina de cambio de esprite en la Trainer card ($27BE1 pointer del chico, $27BF2 pointer de la chica)
-----------
Micelaneos
-----------
$B541 ; Paletas del Front Sprite (el Back Sprite comparte las paletas del protagonista masculino)
$1BC300 ; graficos del Back Sprite
$1BC000 ; graficos del Front Sprite (3-byte pointer en $8007B)
$1688FF ; script de pela con el rival en indigo plateu
$1095B0 ; script de pela con el rival en mt.moon
$39950-3FEA0 ; cambios en los datos de batalla del rival(1) y rival(2) (solo version 1.0)
$17FF1 ; controla el color del OW de la chica
-------------------------
Recomendaciones:
-------------------------
-
-Aplicar preferentemente en un rom limpio.
-En caso de no usarse en un ROM limpio, se debe revisar las direcciones a modificar.
-En caso de no usarse en un ROM limpio, se bebe crear un respaldo del ROM para evitar perdida de informacion.
-El proceso de asignacion de OW puede ser mejorado para evitar sobrescribir datos, solo basta con repuntear la tabla correspondiente, agregar los datos de la chica caminando y en bicicleta y cambiar la rutina de carga de OW.
-Como el sprite de la chica esta asignado el Trainer correspondiente al Rival(2), es importante que las batallas del Rival(2) las trasladen/copien al Rival(1) en el mismo orden (los scripts ya fueron modificados para el correcto funcionamiento de las batallas).
-------------------------
Proximas Actualizaciones:
-------------------------
-Carga de palletas independietes por genero.
-
-------------------------
Bugs:
-------------------------
-Hay un sprite o dos de pokemon que fallaran con este parche, cuando alguien sepa cuales son le pido lo reporte para arreglar el problema.
-Cuando usas la opcion de ingresar tu nombre en modo "femenino", despues de escribirlo la pantalla nos devuelve el sprite masculino. Una posible solucion es cambiar el offset $60C0 por el sprite que mas te plazca, como el del profesor, aunque sera muy raro verle encogerse y de repente aparesca tu. Puedes poner $00 y supongo no saldra ningun sprite.
-------------------------
Versiones:
-------------------------
1.0: -Lanzamiento del parche.
-Diseñado para aplicarse en un rom limpio.
2.0: -Arreglado el Bug de incompatiblilidad con el parche "extension de tilesets" de Tauwasser.
(primero debe instalarse el parche de "extension de tilesets" y despues este.
-Se quitaron los datos de las revancchas con el rival, ya que es incompatible con la mayoria de los roms.
2.1: -Carga de paletas independientes para el OW y back sprite de la chica.
-------------------------
Creditos:
-------------------------
RED - Creador de la rutina
Mateo
Miksy91 - Por la rutina de carga de BackSprite (?)
GOLD_Z! - Por facilitar la rutina a la comunidad hispana
Javcdark - Colaborador en la corrección de la rutina
Opcionalmente se adjunta una rutina explicada por Javcdark.
https://dl.dropboxusercontent.com/u/1175553/hack/Auxiliares/Tutoriales/Parches/Seleccion de Genero GOLD & SILVER/Rutina Seleccion de Genero Javcdark.txt
-------------------------
Descarga:
-------------------------
-Parche Seleccion de Genero GOLD & SILVER 1.0-
-Parche Seleccion de Genero GOLD & SILVER 2.1-
-Lunar IPS-