qna_rh
Thread Id: 28614
Thread Name: [Duda Script] Script que evoluciona pokémon
#0
Friki_nls 28766
Hola y muy buenas.

Quería preguntar si alguien sabe de alguna manera por la que, mediante un script "simple", de hablar, evolucionara un Pokémon.

Lo único que he encontrado es esto:
Iniciado por Nattramn
Pues por lo que yo veo, es algo como lo que yo usare en mi rom-hack. Hablas con una cierta persona y al hablar con ellos tu Pokémon evoluciona, eso es a lo que te refieres?

Entonces, debes encontrar la direccion Hexadecimal del evento de la evolucion, copiarlo, abrir xse, y ponerlo algo asi como

#dynamic 0x800000

#org @dasdas
lock
faceplayer
checkflag 0x5000
if 0x1 goto release
msgbox 0x6 @dasd
goto 0xdirecciondelaevolucion
msgbox 0x6 @dsad
setflag 0x5000
release
end

Ese es el script sencillo, iria algo asi como si llegas con alquien y dice,

Hola, he encontrado esta piedra extraña, dejame la saco.
<EVENTO DE EVOLUCION>
Ah! Tal parece que la piedra hizo evolucionar a tu Clefairy!

Algo asi? Espero haber resolvido tu duda. Por cierto, para saber esas direcciones hay un tema en Investigaciones que creo que te ayudaria mucho. Pero por el bien de ti y aquellos que te rodean, lee primero el tutorial de xse de ciro. (;
Bueno, adios.


De lo que dijo Nattramn me faltaría lo que está en negrita, que soy incapaz de encontrar nada al respecto.
El Script de arriba es exáctamente el esquema que quiero (combinado con un multichoice que ya haré...).

Gracias de antemano.

EDITO:
Debo aclarar que mi intención primordial es la de evolucionar mediante un evento/script a los Pokémon que evolucionan de normal por intercambio Pokémon.
Si se os ocurre otra manera de hacerlos evolucionar que no sea haciendo el evento/script/personaje se comporte como un objeto/piedra evolutiva, os lo agradecería mucho.
#1
eing 12479
NO todo el rom se basa en el código "rubikon" ¿eh? xD
Es decir, que todo vosotros lo programeis a base de "call.." no se puede.
Lo que hace evolucionar los pokémon es una rutina ASM, se puede encontrar, y llamar desde un script, eso está claro.
Pero.. ¡todo tiene un pero!
Olvidas, que como función ASM, llamemosla "evoluciona()" debes darle un valor, y :O sorpresa! Si no sabes la variable o lugar donde se almacena ese dato, no va a evolucionar nada xD Más que un misigno imagino, un bad egg.. o bien el primero pokémon de tu equipo.

Esto es una teoria, (lo de que evolucionaria..) pero vaya, la realidad es esa, que si no le pasas un argumento a la funcion de evolucionar, ya puedes hacer TOOOODOS los calls que tu quieras, que no va a pasar nada de lo que pretendes.
#2
Friki_nls 28766
Iniciado por eing
NO todo el rom se basa en el código "rubikon" ¿eh? xD
Es decir, que todo vosotros lo programeis a base de "call.." no se puede.
Lo que hace evolucionar los pokémon es una rutina ASM, se puede encontrar, y llamar desde un script, eso está claro.
Pero.. ¡todo tiene un pero!
Olvidas, que como función ASM, llamemosla "evoluciona()" debes darle un valor, y :O sorpresa! Si no sabes la variable o lugar donde se almacena ese dato, no va a evolucionar nada xD Más que un misigno imagino, un bad egg.. o bien el primero pokémon de tu equipo.

Esto es una teoria, (lo de que evolucionaria..) pero vaya, la realidad es esa, que si no le pasas un argumento a la funcion de evolucionar, ya puedes hacer TOOOODOS los calls que tu quieras, que no va a pasar nada de lo que pretendes.


Entonces, ¿como lo hago?
¿Por donde empiezo a buscar para hacerlo evolucionar, por las piedras evolutivas?

El script podría funcionar detectando que pokemon es y según el que sea aplicar una evolución o ninguna.
Como si pusiera la piedra evolutiva en un script.
¿Se puede sacar algo de las piedras evolutivas?
#3
eing 12479
Habrias de buscarlo para fr el offset de la evolucioon, es decir su rutina asm y estudiarla a raiz de ahí.
Empieza por buscar el texto, y a raiz de ahi a debuggear. Lo haria yo, pero ando demasiado ocupado.
#4
Friki_nls 28766
Iniciado por eing
Habrias de buscarlo para fr el offset de la evolucioon, es decir su rutina asm y estudiarla a raiz de ahí.
Empieza por buscar el texto, y a raiz de ahi a debuggear. Lo haria yo, pero ando demasiado ocupado.


Gracias.
En todo caso, si la encuentro (o creo encontrala) la postearé aquí y si me puedes echar una ayudita mejor que mejor.

Puede que te consulte por MP si no es molestia.