Como he comentado en un artículo anterior los pokemons que aparecen en la zona de hierba se almacenan en la posición de la RAM 0xD887 y estos datos ocupan 21 bytes, 1 para la frecuencia de combate y otros 20 bytes para los pokemons que pueden aparecer y sus respectivos niveles. Ocurre lo mismo con los pokemons que aparecen en las zonas de agua, solo que esta información está almacenada en la dirección de la RAM 0xD8A4.
Vamos a probar a modificar estos datos, vamos a establecer que aparezca el pokemon con índice interno 0x15 y con nivel 100 (0x64).

El pokemon con índice interno 0x15 es Mew.

Vamos a cambiar ahora el nombre de nuestro jugador en tiempo de ejecución. Como he dicho en otro artículo el nombre del personaje se almacena en la dirección de la RAM 0xD158

Ahora vamos a cambiar el nombre de ASH por ANGEL LUIS, según el artículo sobre códificación de cadena de textos, la cadena ANGEL LUIS se codifica como 0x80 0x8D 0x86 0x84 0x8B 0x7F 0x8B 0x94 0x88 0x92

Podemos ver como se ha cambiado, estableciendo una longitud en principio no válida por el juego ya que no cabe dentro del menú.
Por último vamos a cambiar el nombre de algún pokemon para ponerle lo que queramos. El nombre de los pokemons está almacenado en la ROM y empieza en la dirección 0x1c21e y respetan el orden según el indice interno de pokemon, es decir, el pokemon que aparece en la primera posición no es bulbasaur sino Rhydorn.
Cada una de estos nombres tiene una longitud de 10 bytes, vamos a cambiar el nombre a Mew que como hemos visto tiene el índice interno 0x15, por tanto desde la dirección 0x1C21E tenemos que contar 0x14 * 0xA = 0xC8 (es 0x14 porque Mew es el numero 0x15 contando desde 0x01, pero aquí estamos considerando que el pokemon con indice 0x01 va a aparecer en el offset 0x00 desde la dirección 0x1C21E, por tanto Mew estará en la posición 0x15-0x01 = 0x14), por tanto el nombre de Mew debe comenzar en la dirección 0x1c2E6

Si lo cambiamos ahora por mi nombre codificado en su sistema, quedará:

Si ahora guardamos la rom y la ejecutamos con el emulador podremos ver lo siguiente:

