Registrarse

[Parche] GBC | Parche Tutor de Movimientos

Chamber

Miembro insignia
Miembro insignia





Después de concluir esta investigación les presento una versión mas avanzada de mi Tutor de Movimientos para GBC.

La utilidad de este parche reside en poder tener mas opciones para enseñar movimientos ademas de las TM/HM's.

Quiero agrader a @javcdark por diseñarme una herramienta especial para este parche y a @WiZaRD por ayudarme en su realizacion.


Características del sistema:
  • Su uso dentro del juego siempre tiene un costo.
  • El costo es a base de objetos. Se puede editar el objeto a utilizar y la cantidad siempre y cuando sea un objeto del bolsillo normal.
  • Diseño "monousuario": Un NPC solo puede enseñar un movimiento.
  • Se puede/tiene que agregar la compatibilidad a cada pokemon.


Características del parche:
  • Hasta 32 tutores diferentes. El parche solo instala 16 movimientos, mientras que los otros 16 son editables por el usuario.
  • Se usan 4 espacios en blanco de los stats base de cada Pokémon correspondientes a los movimientos a nivel 1 en RBY para marcar la compatibilidad.
  • Compatibilidad con la herramienta MoveTutorGBC de Javcdark.


Espacios usados dentro del ROM:
  • $2CA40 - $2CC4F Rutinas ASM
  • $13E60 - $13EAF Parche a rutinas originales
  • $15F240 - $15F34F Script del Game Corner

Tabla de movimientos:

En el offset $13E90 se encuentra la tabla de movimientos, los cuales son un tributo a los tutores de Crystal y Emerald:

  1. FLAMETHROWER
  2. THUNDERBOLT
  3. ICE_BEAM
  4. BODY_SLAM
  5. COUNTER
  6. DOUBLE-EDGE
  7. EXPLOSION
  8. METRONOME

  9. MIMIC
  10. ROCK_SLIDE
  11. SIESMIC_TOSS
  12. SOFTBOILED
  13. SUBSTITUTE
  14. SWORD_DANCE
  15. THUNDERWAVE
  16. PAIN_SPLIT

  17. N/A
  18. N/A
  19. N/A
  20. N/A
  21. N/A
  22. N/A
  23. N/A
  24. N/A

  25. N/A
  26. N/A
  27. N/A
  28. N/A
  29. N/A
  30. N/A
  31. N/A
  32. N/A

Uso despues de aplicar el parche:

Para que un NPC cualquiera se convierta en un tutor de movimientos tenemos que repuntear su script a un espacio en blanco y compilar un nuevo scriop con la siguiente redaccion:

#org 0x000000
'-----------------------------------
faceplayer
loadfont
writebyte 0xC6E8 0x74 ' Item requerido
writebyte 0xC6E9 0x03 ' Numero de objetos requeridos
loadvar 0x03 ' La variable igual a la anterior
vartotext 0x3 ' Numero se escribe en StringBuffer3
writebyte 0xD002 0xFA ' HM08 ; libera rutinas
loadvar 0x01 ' ID del tutor
3callasm 0x4A600B ' @MoveTutorInit
closetext
loadmovesprites
end
*Rojo = Variables
*Azul = Constantes

  • El primer writebyte escribe en la RAM $C6E8 el objeto que utilizaremos como costo. En el ejemplo yo utilizo 0x74 que corresponde a la HEART SCALE de mi hack, pero ustedes cambienlo por otro objeto. Es importante que el objeto a utilizar sea del bolso normal de la mochila, nada de pokeballs, TM u objetos clave.

  • El segundo writebyte escribe la cantidad de objetos necesarios. En el ejemplo esta a 0x03.

  • El siguiente comando,loadvar, a pesar de estar marcado como "variable" debe ser una constante del comando anterior, es decir, si ponemos que para usar nuestro tutor necesitamos 5 HEART SCALES, en este comando escribiremos 0x05

  • vartotext escribe el numero en la ram, importante para que los textos funcionen correctamente.

  • El siguiente writebyte escribe el ID de la HM08 (0xFA ) en la RAM correspondiente al CurItem (0xD002). Esto es un seguro para no interferir ciertas funciones del juego, sin este comando nada de las rutinas ASM funcionan bien.

  • El siguiente loadvar indica el ID del tutor. Un 0x01 significa que el tutor enseñara FLAMETHROWER, mientras que un 0x07 enseñara EXPLOSION.

  • Para terminar se usa un 3callasm 0x4A600B para llamar a las funciones del tutor.


Importante: El parche instala automaticamente la venta de movimientos en el Game Corner para los que no entiendan bien de scripts. (Ver vídeo)


Videos:





Capturas:




Contenido de la descarga:

  • Parche IPS
  • Herramienta "MoveTutorGBC"
  • Script de ejemplo para tutores sencillos
  • Script utilizado en el Game Corner
  • Documentación ASM

| Link de Descarga |​
 

BLAx501!

A veces comento en temas :3
Miembro de honor
Usuario de Platino
Me parece un aporte extraordinario Chamber :)

Me encanta que te dediques tanto al GBC Hacking y con tantas ganas e ilusión, logras realizar cosas muy buenas y útiles para todos aquellos que les guste "hackear la nostalgia" xD
 
Muy buen aporte compa, sin duda ya llegaste a la perfección del hack GBC, con este parche ya asemejas el game GBC al game GBA, lo único que ahora te falta es hacer un parche de habilidades para que ya estes en la cumbre de los hacker, creo yo que con esto ya superaste a KLBM, ojala realices el parche de las habilidades... y que prosigas con la investigacion de la extencion de los pokemon a 512.
Muchas felicidades compa :D sin duda un gran aporte
 
Arriba