Registrarse

[ASM] FR | Cambiar el mini del protagonista SIN wbto

L!no

GBA Developer
como el titulo lo indica,les voy a enseñar como cambiar el mini del prota DENTRO del juego sin recurrir a los jodidisimos WBTO
creditos a FBI por la magnifica rutina.

---------------------
que necesitamos?
---------------------
HxD
thumb
una rom de fire red

------------------
como se hace?
------------------

asi.
primero compilamos e insertamos esta rutina en un espacio libre.

.text
.align 2
.thumb
.thumb_func

@hook from 0805CA4C via r0

main:
@flag check
checkFlag:
mov r0, #0xFF
lsl r0, r0, #0x2
add r0, r0, #0xA @0x3FC + 0xA = @406
ldr r2, =(0x806E6D0 +1)
push {r1, r3}
bl linker
pop {r1, r3}
cmp r0, #0x1
bne noCrash

setOW:
ldr r0, =(0x20370B8)
ldrb r0, [r0]
cmp r0, #0xFF
beq noCrash
mov r3, r0

noCrash:
mov r8, r3
lsl r4, r4, #0x10
lsr r4, r4, #0x10
lsl r5, r5, #0x10
ldr r0, =(0x805CA54 +1)
bx r0

linker:
bx r2

.align 2

como los amo a todos,les dejo la rutina ya compilada.
FF 20 80 00 0A 30 09 4A 0A B4 00 F0 0E F8 0A BC 01 28 04 D1 06 48 00 78 FF 28 00 D0 03 1C 98 46 24 04 24 0C 2D 04 03 48 00 47 10 47 D1 E6 06 08 B8 70 03 02 55 CA 05 08
es muy importante que anoten donde la insertaron

ahora hagamos un pointer de tipo +1
como hacer un pointer de clase +1

una vez hecho el pointer,escribanlo en algun lado

ahora vayan al offset 5CA4C con ctrl+G y pegen esto con ctrl+B :
00 48 00 47 XX XX XX 08

donde XX XX XX es el pointer de clase +1 que creamos hace poco.

-------------------------------------
pero,¿como hago que funcione?
-------------------------------------
facil:
1)usa el setflag 0x406.esto es asi para que puedas usar la variable 0x8000 tranquilamente sin cambiar el mini del prota
2)asignar alguno de estos valores a la variable 0x8000:
0 - héroe masculino
1 - héroe femenino
3 - héroe femenino en bici
4 - héroe masculino corriendo
5 - héroe femenino
6 - héroe masculino vs-seeker
7 - héroe femenino vs-seeker
8 - héroe masculino de pesca
9 - héroe héroe de pesca
12 - Bruno
13 - Aura
28 - Individuo aleatorio
29 - Niño pequeño
48 - Spearow
52 - Anciano 1
83 - Tipo rubio
84 - Chico gordo
88 - Anciano 2
93 - team rocket macho
104 - Meowth
112 - Chansey
116 - Slowbro
124 - Snorlax
125 - Pescador
170 - Anciano 3
176 - Chica verde
213 - Señora de vestido rojo
214 - Señora mayor
228 - Deoxys (creo que éste es normal)
245 - Misty
251 - Chica Fantasma

---------------------------------------------------
pero yo todavia no entiendo como se usa!!!
---------------------------------------------------

es simple.pones esto en un script:

Código:
setflag 0x406
addvar 0x8000 0x(el numero del mini segun la lista de mas arriba)
callasm 0x805BE61
y para volver todo a la normalidad:
Código:
clearflag 0x406
callasm 0x805BE61
 
Última edición:

Bugrhak

A long time ago I used to call myself "Subzero".
Respuesta: FR|ASM|cambiar el mini del protagonista SIN wbto

Como dice el de arriba, esto ya se sabía hacer y es con el engin de jpan.
No veo nada malo en que se postee otro método, pero el anterior lo veo un poco mejor.
Por último, tenes mejorar la explicación del uso, ya sabes, para que sea apto para todo público.
 

Versekr Dark

Usuario mítico
Re: FR|ASM|cambiar el mini del protagonista SIN wbto

Muy facil la verdad no me esperaba esto(si me lo esperaba cada año mejoran mas las rutinas asm jaja xD) y muchas gracias por el aporte esto ayuda mucho.
 

Xabier2012

Usuario mítico
Respuesta: FR|ASM|cambiar el mini del protagonista SIN wbto

¿Solo podemos usarlo con los de la lista? ¿No con todos?
 

Asmodeo Leviatan

¿La Iglesia inventó el Infierno? O es lo contrario
Respuesta: FR|ASM|cambiar el mini del protagonista SIN wbto

al entrar en algún mapa diferente vuelve a la normalidad?
 

Bugrhak

A long time ago I used to call myself "Subzero".
Respuesta: FR|ASM|cambiar el mini del protagonista SIN wbto

al entrar en algún mapa diferente vuelve a la normalidad?
A juzgar por la variable que usa, la 8000 (la cual es dinámica), si, el mini vuelve a la normalidad tras haber refrescado la pantalla (mediante un warp o un fadescreen por ejemplo). Con el método de jpan esto no pasa ya que los sprites del mini pasan a depender de una variable NO DINÁMICA
 

Asmodeo Leviatan

¿La Iglesia inventó el Infierno? O es lo contrario
Respuesta: FR|ASM|cambiar el mini del protagonista SIN wbto

A juzgar por la variable que usa, la 8000 (la cual es dinámica), si, el mini vuelve a la normalidad tras haber refrescado la pantalla (mediante un warp o un fadescreen por ejemplo). Con el método de jpan esto no pasa ya que los sprites del mini pasan a depender de una variable NO DINÁMICA


en donde puedo consegir dicho tuto? o no lo es? si es asy, como hago que el mini siga igual...?
 

Bugrhak

A long time ago I used to call myself "Subzero".
Respuesta: Re: Respuesta: FR|ASM|cambiar el mini del protagonista SIN wbto

Me gustaría saber la respuesta a esta pregunta. No entiendo por qué no se puede usar esto con otros minis distintos.
Lo cierto es que no tengo idea la verdad. Usando el método de jpan creo que si.
Haciendo pruebas con el hack tool popodrás ver tu mismo si es posible o no (dado que la interfaz de esa herramienta es bastante intuitiva, en base a las opciones que te da, lo sabrás XD).
En lo que a mi oponión respecta, creo que debería ser posible.
 

Toni

Leyenda de WaH
Re: Respuesta: Re: Respuesta: FR|ASM|cambiar el mini del protagonista SIN wbto

Lo cierto es que no tengo idea la verdad. Usando el método de jpan creo que si.
Haciendo pruebas con el hack tool popodrás ver tu mismo si es posible o no (dado que la interfaz de esa herramienta es bastante intuitiva, en base a las opciones que te da, lo sabrás XD).
En lo que a mi oponión respecta, creo que debería ser posible.
Sí, con la hack tool de jpan es posible, lo acabo de probar. En cambio con esta rutina... Ni idea, aunque hay una cosa que he modificado que quizás sea eso.
 
Arriba