Registrarse

[Otros] E, FR, R | Activar un Script usando un Objeto

Naren Jr.

Puto amo
Miembro de honor
Usuario de Platino
Respuesta: GBA | Script | Activar un Script usando un Objeto

Oh genial, no había visto esto, a decir verdad, le da mas jugabilidad a cualquier cosa.

He de decir que ya había aplicado esto sin ver el tutorial por culpa de Nacho jajaja, sin embargo queda bien tenerlo siempre a la mano, se puede armar algo chevere desde aquí.
 

IITinchoII

Usuario de bronce
Respuesta: GBA | Script | Activar un Script usando un Objeto

Rutina Rojo Fuego:

.text
.align 2
.thumb
.thumb_func
.global Hax

setup:
push {r4, lr}
mov r4, r0
mov r0, pc
add r0, #0x13
ldr r1, .unk_02039884
str r0, [r1]
mov r0, r4
ldr r1, .sub_080A11F0
bl bx_r1
pop {r4}
pop {r0}
bx r0

main:
push {r4, lr}
mov r4, r0
ldr r0, .ScriptToCall
ldr r1, .CallScript
bl bx_r1
mov r0, r4
ldr r1, .del_c3_from_linked_list
bl bx_r1
pop {r4}
pop {r0}
bx r0

.align 2
bx_r1:
bx r1

.align 2
.CallScript:
.word 0x08069BA8+1
.unk_02039998:
.word 0x02039884
.sub_080A103C:
.word 0x080A11F0+1
.del_c3_from_linked_list:
.word 0x08077540+1
.ScriptToCall:
.word 0x08XXXXXX

Compilada

10 B5 04 1C 78 46 13 30 0C 49 08 60 20 1C 0C 49 00 F0 10 F8 10 BC 01 BC 00 47 10 B5 04 1C 0A 48 05 49 00 F0 07 F8 20 1C 06 49 00 F0 03 F8 10 BC 01 BC 00 47 08 47 C0 46 A9 9B 06 08 84 98 03 02 F1 11 0A 08 41 75 07 08 XX XX XX 08
Alguien sabe si esta rutina funciona? porq a mi no me funciona cuando uso el item me reinicia el juego
 

IITinchoII

Usuario de bronce
Has de haber hecho algo mal, muestra lo que hiciste
Bueno estoy tratando de ejecutar el Exp all. el script es este:

#dynamic 0x800000

'---------------
#org @start
lock
faceplayer
msgbox @string1 MSG_YESNO '"Quieres darle experienciana todos..."
compare LASTRESULT 0x1
if 0x1 goto @snippet1
if 0x0 goto @snippet2
release
end

'---------------
#org @snippet1
setflag 0x 'flag usado
msgbox @string2 MSG_NORMAL '"Iniciando."
end

'---------------
#org @snippet2
clearflag 0x 'flag usado
msgbox @string3 MSG_NORMAL '"Apagando"
end


'---------
' Strings
'---------
#org @string1
= Introducción

#org @string2
= Mensaje tras prenderlo.

#org @string3
= Mensaje tras apagarlo.

esta es la direccion del script B0C610 y la agrego al compilado que cite, de la siguente forma 10 C6 B0

a la rutina compilada la guardo en el offset 7187A0, que luego le asigno al item de la siguente manera 7187A1, lo edito con gen3tool, por eso a diferencia de este tutorial no la agrego con el 8 adelante.


ACLARACION, probe en una rom inglesa el script y funciona, al menos se ejecuta, desde un item. Tambien probe compilar la rutina manualmente y no la compila el programa Thumb.
 

Versekr Dark

Usuario mítico
Bueno estoy tratando de ejecutar el Exp all. el script es este:

#dynamic 0x800000

'---------------
#org @start
lock
faceplayer
msgbox @string1 MSG_YESNO '"Quieres darle experienciana todos..."
compare LASTRESULT 0x1
if 0x1 goto @snippet1
if 0x0 goto @snippet2
release
end

'---------------
#org @snippet1
setflag 0x 'flag usado
msgbox @string2 MSG_NORMAL '"Iniciando."
end

'---------------
#org @snippet2
clearflag 0x 'flag usado
msgbox @string3 MSG_NORMAL '"Apagando"
end


'---------
' Strings
'---------
#org @string1
= Introducción

#org @string2
= Mensaje tras prenderlo.

#org @string3
= Mensaje tras apagarlo.

esta es la direccion del script B0C610 y la agrego al compilado que cite, de la siguente forma 10 C6 B0

a la rutina compilada la guardo en el offset 7187A0, que luego le asigno al item de la siguente manera 7187A1, lo edito con gen3tool, por eso a diferencia de este tutorial no la agrego con el 8 adelante.


ACLARACION, probe en una rom inglesa el script y funciona, al menos se ejecuta, desde un item. Tambien probe compilar la rutina manualmente y no la compila el programa Thumb.
Mejor mandame mensae por privado
 
Arriba