Bien señoras y señores, abro este thread debido a que poseo una lista de tutoriales, utiles pero cortos, pero por ser cortos no me tomare la molestia de hacer un thread para cada uno, asi que comenzare con este:
1. BUSCANDO ESPACIO LIBRE (METODO 1)
Siempre cuando queremos insertar algo, ya sea tiles, sprites, o bien un script necesitamos de espacio libre, como sabran el rom de oro y plata (tambien cristal) poseen una gran cantidad de espacio libre que podemos aprovechar, pero esta disperso por todo el rom D:
Para buscarlo necesitaremos solo de:
[LIST=1]
Hack-o-Matic
Gold Finger (Opcional)
[/LIST]
Como sabran Hack o matic es una herramienta arcaica y casi en desuso, pero aun tiene funciones que podemos aprovechar, entre ellas esta la busqueda de espacio libre, ahora procederemos a aprender a usarlo.
1. Abre tu rom con hack o matic, situate en la pestaña "empty space finder" (icono de lupa) y le das click, luego de ello te desplegara esta ventana:
2. Deja todo intacto y dale "Search" tardara unos segundos, y cuando este listo te desplegara todos los espacios libres del rom, como veran no solo te dara el offset, sino su puntero, banco y su tamaño.
Ahora si quieren comprobar que es cierto solo abran su rom con gold finger y vayan al offset que buscan, veran que efectivamente SI esta libre ese espacio.
Y es todo, hay mas maneras de buscarlo, esta de seguro no es la mejor, pero es mas comoda que buscar los espacion manualmente en hexadecimal
Bien conforme los recopile los ire poniendo, ai evitaremos threads con tutoriales cortos.
[Persiana=Acerca tu Mouse Aca Plz]Si tienes un minituto que quisieras aportar, solo postealo y con gusto lo subire al thread[/Persiana]
Es muy facil. Imagina que quieres pointer a 0x1A276.
1. Coges los 4 digitos menos significativos (A276)
2. Sumas o restas 0x4000 N veces hasta "encajar" el pointer en un numero que empieze por 4, 5, 6, o 7. (A276 - 4000 = 6276)
3. Partes el numero por la mitad y lo das la vuelta (62 | 76 -> 76 62 ; es decir el pointer es 0x62 0x76).
A la larga este proceso se vuelve muy intuitivo y se pueden calcular pointers en 3 segundos!
Nota: Si el offset esta entre 0x0 y 0x3FFF entonces te saltas el paso 2
Lasolucion es simple, debemos de extender las medidas de la texbox durnte la batalla, para ello solo escribiremos los siguientes bytes en las offsets detalladas a continuacion:
Desde hace tiempo busco actualizar GSC con mecanicas de XY.
Una de ellas es que el Hidden Power ahora tiene poder estatico de 60 puntos. Para hacer lo mismo tenemos que ir a $FBE29 y cambiar el C6 1E por 3E 3B en pokemon GOLD.
3B = al poder del HP - 1, en este caso 59 en decimal.
Ahora Aporto un minituto mas
Cambiar los items de las Pokeball en el suelo
Solo haz lo siguiente:
1. Con Johtomap abre tu ROM y dirigete al mapa donde esta la pokeball a editar
2. Ponte en la pestaña de eventos, clickea el overworld de la pokeball, y copia el Offset donde esta el de la pokeball
3. Ahora abre tu ROM con GoldFinger, dirigete al offset de la pokeball, y el primer byte del evento es el item que contiene en hexadecimal
4. Cambia el primer byte de la pokeball por el codigo hexadecimal del item, guarda, prueba el evento y ¡listo! has cambiado el item que esta tirado.
Bien este no es un minituto en si, pero si una nota que deberian de saber.
Cuando ineertas un pokemon/entrenador nuevo en tu ROM este es repunteado y mandado el 100% de las veces a otro banco, pues bien, cuando lo insertas siempre esta marcada la casilla "Delete original data" ¿Y esto que quiere decir? que cuando metes un sprite y esta marcada esa casilla el sprite original es borrado de su ubicacion original.
¿Y esto que quiere decir? que sabiendo que los sprites de pokemon/entrendores estan ubicados entre 0x54000 y 0x83FFF (osea ocupan 5 bancos) eso quiere decir que estamos liberando espacio ahi, entonces quiere decir que cuando metemos un sprite nuevo estamos liberando espacio en esos bancos, y como sabemos el espacio libre de GBC es agradecido sea donde sea que este.
Nota: Aqui no tienes peligro de estropear tu ROM por poner algo ahi, ya que esos bancos no tienen nada mas que sprites, los cuales son facilmente reemplazables c:
Algo sencillo que acabo de implementar en Pokemon Pyrite en relacion al dinero perdido en combates, quien sabe, puede que a alguien le interese: http://pastebin.com/GVqjkfKC
Basicamente, hace que el dinero perdido tras perder un combate sea X^2 * 4, donde X es el nivel mas alto de los Pokemon de tu equipo, o la cantidad de Pokemon de tu equipo, el que sea mayor. e.g. si tus pokemon son lv 15, lv 18 y lv 20 (aprox gym 2), perderas 20^2*4 = 1600 monedas. Lastima el hecho de que emplee direcciones ram de crystal ya que todos los demas usan gold como base, pero tan solo hay que traducir unas pocas direcciones genericas. Esta rutina debe ser implementada sobre la rutina HalveMoney (Crystal:12513).
Y, ya que estamos, un poco mas complejo, pero si alguien quisiese implementar una especie de sistema de EVs para entrenadores similar a los de mi hack, puede usar esto como ayuda: http://pastebin.com/W0zWbLYU