Para hacer un hack de segunda generación, utiliza
pokecrystal. Puedes instalarlo siguiendo estas
instrucciones
Los juegos de segunda generación están programados para tener un máximo de 255 Pokemon y movimientos. Añadir soporte para mayor cantidad de ambos es posible, pero requiere reescribir gran parte del código del juego, por lo que queda descartado.
Lo que si puedes hacer es sustituir Pokemon y movimientos existentes por otros. Siempre y cuando no quieras añadir nuevos efectos de movimientos o nuevas animaciones, ambas tareas son relativamente sencillas, y puedes además apoyarte en
diferentes ejemplos de como otras personas lo han hecho en sus hacks.
Los scripts en los juegos de GBC tienen objetivos similares a los de GBA pero se trata de diferentes jueos para diferentes consolas y por tanto no son exactamente iguales.
Aquí tienes un ejemplo de la pinta que tienen los scripts de un mapa al azar. Los scripts están definidos
aquí, pero dado que esto no es fácil de entender a primera vista, lo mas sencillo es aprender a hacer scripts de menor a mayor complejidad a base de ver como están hechos los scripts que ya existen en el juego.
Esta guía te puede ayudar a manejarte con pokecrystal y a aprender a hacer modificaciones básicas:
https://www.pokecommunity.com/showthread.php?t=378692