Registrarse

[RH - Scripting] Pregunta/respuesta rápida

Estado
Cerrado para nuevas respuestas.

Super25

Campeón de Alola
Respuesta: Consultorio de dudas de Scripts

Vale, tu problema es que no tienes cargado la rom, a la izquierda del boton hay una barra, tienes que buscar el archivo gba donde quieres compilar, y asi podras darle al boton. Cambia los 6 por el 2 de antes y dale, yo lo he probado y me lo ha compilado.
No olvides la flag en A-Map.

Saludos
Me ha servido.

¿Cómo hago que de un huevo pueda aparecer distintos pokémons?
 

Javi4315

Babyface
Miembro de honor
Respuesta: Consultorio de dudas de Scripts

hola, tengo un problema al compilar en XSE, cuando le doy al logo de compilar me aparece la siguiente ventana:

error

que dice: demasiado parmetros sobre la linea 6.El numero correcto es 2.
Eso quiere decir que está mal. Se utiliza msgbox @(pointer del texto) 0x(función). Por ejemplo: "msgbox @texto1 0x6". Aunque para la próxima vez, sería conveniente que pusieras el script para poder ver mejor el fallo, porque lo mismo hasta estás utilizando bien el mgsbox y te da el error por otra cosa.
 
Respuesta: Consultorio de dudas de Scripts

hola a todos he estado mirando tutoriales sobre scripts he empezado a hacerlos pero tengo un par de dudas que agradeceria mucho que me despejaran.

primera: saber si el script( que mostrare al final) esta bien, o si tiene algun error o si hay un consejo que puedan darme acerca de este.

segunda: como puedo hacer para que este script( givepokemon) solo lo reciba cuando haya ganado la tercera medalla que no se lo den antes que eso.

entiendo que debo usar la flag de la tercera medalla y que solo te lleve al script del give pokemon cuando la flag de la medalla este activada pero en verdad no se ni como empezar. gracias por la atencion prestada.

este es el script del give pokemon.
#dynamic 0x800000

#org 0x111111
lock
faceplayer
checkflag 0x200
if 0x1 goto 0x222222
msgbox 0x333333 0x6
givepokemon 0x1 0x5 0x0 0x0 0x0
setflag 0x200
release
end

#org 0x333333
= Me gustaria conocer un buen entrenador\nque pueda cuidar a Bulbasaur.

#org 0x222222
lock
faceplayer
msgbox 0x444444 0x6
release
end

#org 0x444444
= cuida bien a Bulbasaur

post data: las direcciones son aleatorias porque tengo un pequeño problema con el fsf pero entiendo que para el necesito 4 direcciones vacias por eso estan en 111111, 222222 e.t.c.
 

Laquin

Usuario mítico
Respuesta: Consultorio de dudas de Scripts

1) No uses FSF, no. Haz tipo @1 o @Texto o@loquetesalgadelasnarices.
2)La flag 200 es la de la medalla?
Y te da errores o solo querias consejos? Porque el 1 que he puesto es MUY buen consejo.
Y te aconsejo que me digas la respuesta de la 2 y que leas un tutorial de la zona tutoriales, en importantes. Se llama, "Tutorial de Ciro de scripts" o algo asi.
Salu2!!
PD: @galaitz
Edit: quieres que el pokemon te lo de al hablar cuando tengas la medalla? No te entiendo :/
 

cosarara97

Dejad de cambiar de nick
Miembro de honor
Respuesta: Consultorio de dudas de Scripts

hola a todos he estado mirando tutoriales sobre scripts he empezado a hacerlos pero tengo un par de dudas que agradeceria mucho que me despejaran.

primera: saber si el script( que mostrare al final) esta bien, o si tiene algun error o si hay un consejo que puedan darme acerca de este.

segunda: como puedo hacer para que este script( givepokemon) solo lo reciba cuando haya ganado la tercera medalla que no se lo den antes que eso.

entiendo que debo usar la flag de la tercera medalla y que solo te lleve al script del give pokemon cuando la flag de la medalla este activada pero en verdad no se ni como empezar. gracias por la atencion prestada.

este es el script del give pokemon.
#dynamic 0x800000

#org 0x111111
lock
faceplayer
checkflag 0x200
if 0x1 goto 0x222222
msgbox 0x333333 0x6
givepokemon 0x1 0x5 0x0 0x0 0x0
setflag 0x200
release
end

#org 0x333333
= Me gustaria conocer un buen entrenador\nque pueda cuidar a Bulbasaur.

#org 0x222222
lock
faceplayer
msgbox 0x444444 0x6
release
end

#org 0x444444
= cuida bien a Bulbasaur

post data: las direcciones son aleatorias porque tengo un pequeño problema con el fsf pero entiendo que para el necesito 4 direcciones vacias por eso estan en 111111, 222222 e.t.c.
Con esas direcciones (0x111111, etc.) te vas a cargar un montón de cosas que probablemente no quieras tocar. Usa etiquetas dinámicas (@foo), así no tendrás que tocar FSF.
Para hacer lo de la flag, vas bien encaminado. Harías lo mismo que haces con esa flag 0x200 en tu script (si está en 1, goto X) con la de la medalla.
 
Respuesta: Consultorio de dudas de Scripts

ok man gracias por el aporte pero lo del 111111 y 222222 no son las direcciones con las ke va a quedar el script sino unas que puse al azar pero para hacer lo de eso deberia crear un tercer script donde por ejemplo:

#org 0x555555
lock
faceplayer
checkflag 0x( la flag de la tercera medalla)
if 0x1 goto 0x111111

(pero aki me enredo, si la flag de la medalla esta activada me lleva al give pokemon pero si no lo esta? que hago o como lo organizo ?) gracias de antemano
 

Laquin

Usuario mítico
Respuesta: Consultorio de dudas de Scripts

if 0x1 goto @givepokemon
...
..
.
Aqui se pondria lo que pasa si no tienes medalla.
 
Respuesta: Consultorio de dudas de Scripts

muchas gracias por la duda acerca del give pokemon ahora hay algunas otras uqe me gustaria mucho me ayudaran:

1. imagino que habran jugado alguna vez pkmn cristal y hay ciertas cosas que me gustaria implementar para mi juego (base fire red):

a) lo de que se puedan cojer bayas en los arboles y las bonguri
b)hay una parte en la que entras y despiertas los 3 perros legendarios y desde hai empiezan a salir en la hierva , entonces como le hago para ese evento y que salgan en la hierva no mas de una vez ?

2: alguien tiene alguna idea de como hago que x pokemon me siga por todo el mapa ? asi similar a pokemon amarillo?

3:como inserto un evento de oak atrapando un pokemon ?

si pueden respondermelas directamente seria excelente pero sino me conformo con que me den el link de un tuto de lo que necesito para dichas dudas, por ejemplo x evento lo puedes hacer sabiendo mucho sobre flags aqui te dejo este tuto.
solo es un ejemplo pero aprecio mucho la ayuda y aprender .
gracias por la atencion.
 

Javi4315

Babyface
Miembro de honor
Respuesta: Consultorio de dudas de Scripts

muchas gracias por la duda acerca del give pokemon ahora hay algunas otras uqe me gustaria mucho me ayudaran:

1. imagino que habran jugado alguna vez pkmn cristal y hay ciertas cosas que me gustaria implementar para mi juego (base fire red):

a) lo de que se puedan cojer bayas en los arboles y las bonguri
b)hay una parte en la que entras y despiertas los 3 perros legendarios y desde hai empiezan a salir en la hierva , entonces como le hago para ese evento y que salgan en la hierva no mas de una vez ?

2: alguien tiene alguna idea de como hago que x pokemon me siga por todo el mapa ? asi similar a pokemon amarillo?

3:como inserto un evento de oak atrapando un pokemon ?

si pueden respondermelas directamente seria excelente pero sino me conformo con que me den el link de un tuto de lo que necesito para dichas dudas, por ejemplo x evento lo puedes hacer sabiendo mucho sobre flags aqui te dejo este tuto.
solo es un ejemplo pero aprecio mucho la ayuda y aprender .
gracias por la atencion.
1.A. Puede que esto te sirva: Berry system for Fire Red with RTC - The PokéCommunity Forums

1.B. Se puede hacer. Así de pronto se me ocurre guardar un valor aleatorio en una variable. Un script de nivel en cada ruta que, si tiene el valor correcto (el que correspondería a la ruta), cambiar todos los pokes salvajes por el perro. Y con otro script de nivel, comprobar si has luchado con él y qué ha pasado (huída, derrota...) a través de la ram (y según lo que pase, hacer una cosa u otra). Pero necesitas ASM. Te recomendaría que te olvidaras de eso hasta que tuvieras más experiencia o hasta que alguien haga algún tutorial. No sería muy complicado si lo controlas, pero no sé si te manejas bien.

2. Olvídalo. Hay algunas rutinas pero no están completas. Quizás en un futuro relativamente cercano sea posible.

3. Cambia el back del hombre ese que te enseña a capturar por el de Oak y ya está xD
 
Respuesta: Consultorio de dudas de Scripts

ok muchas gracias a javi por su pronta respuesta, como siempre una luz grande en mis dudas cada que reaparesco en el foro XD: ahora tengo otras cuantas dudas.

hay un evento en cristal que usando un movimiento ( golpe de cabeza) consigues pokemon de los arboles; entonces :
1: se puede implementar esto en fire red? imagino que funciona igualmente con variables pero agradeceria un link donde se hable netamente de eso o un ejemplo.

2: se podria implementar con otro movimiento como dig ?

3: con respecto a la duda anterior de que sea oak el que capture el pokemon: puedo crear un segundo evento donde sea oak para no modificar la del anciano que te enseña a capturar el weedle?

4:tengo pensado insertar en el hack 6 fakemons entiendo que entre la region de kanto y las otras hay unos espacios donde se pueden hacer, estos 6 fakemon no los va a tener el personaje principal solo seria como un final para una introduccion de un segundo hack entonces, tengo que crearles necesariamente el backsprite o simplemente como no los va a tener ni nos volvera a ver no es necesario?

5: puedo crear mapas nuevos con el a map? o necesariamente tengo que editar los existentes ?

de antemano gracias por la atencion( y aplica igual que en mis dudas anteriores si no podeis explicar o dar un ejemplo me conformo con un link de un tutorial donde se hable de ello) el de las bayas esta muy interesante.
 

Javi4315

Babyface
Miembro de honor
Respuesta: Consultorio de dudas de Scripts

1. Le pones un comportamiento-byte al tile que desees con un script asociado. Lo que debes hacer es comprobar si alguno de los pokes del equipo tiene el ataque en cuestión. Si lo tiene, que se produzca el efecto que quieras. Es un simple script. Este tutorial de Gut_Bro te servirá: Comportamiento de Tiles » ZoneCircus!

2. ¿Estamos hablando del punto 1? xD

3. Podría ser. Habría que mirarlo. Ya te diré.

4. Si no se va a mostrar en ningún momento, no es necesario. Te lo puedes ahorrar.

5. Hay un tutorial de... Sayer, si no recuerdo mal. Búscalo entre sus temas. De todas formas, deberías editar los que hay y luego ya, si eso, insertar nuevos. No me acabo de fiar mucho de eso. Por las dudas, Sayer es este: Foro Whack a Hack! - Perfil: Jo7ika Jr.
 
Respuesta: Consultorio de dudas de Scripts

hola bueno estoy haciendo un hack del rojo fuego en español e inserte un falemon lo probé como Pokémon salvaje y quedo de 10 pero cuando quise insertar el scrip para q sea la única forma de capturarlo me dice q la palabra clave willbattle es desconocida .quisieran q m digan si es q el script esta bien hecho o q le falta .
este es el script

#org 0x2D8A63
msgbox 0x2D8A64 0x2
willbattle 0xFC 0x46 0x0 0x0
hidesprite 0x144 (así aparece en el amap no lo puse en hex)
setflag 0x1300
release
end

el FC es el numeró en hex del pokrmon, esta debajo de Celebi así q pase el 252 a hex.
1300 es el people ID
agradecería q m ayuden
 

Gold

Porrero a tiempo parcial
Miembro insignia
Respuesta: Consultorio de dudas de Scripts

hola bueno estoy haciendo un hack del rojo fuego en español e inserte un falemon lo probé como Pokémon salvaje y quedo de 10 pero cuando quise insertar el scrip para q sea la única forma de capturarlo me dice q la palabra clave willbattle es desconocida .quisieran q m digan si es q el script esta bien hecho o q le falta .
este es el script

#org 0x2D8A63
msgbox 0x2D8A64 0x2
willbattle 0xFC 0x46 0x0 0x0
hidesprite 0x144 (así aparece en el amap no lo puse en hex)
setflag 0x1300
release
end

el FC es el numeró en hex del pokrmon, esta debajo de Celebi así q pase el 252 a hex.
1300 es el people ID
agradecería q m ayuden
Lol es Wildbattle, no willbattle, ese debe ser el error.
 

Javi4315

Babyface
Miembro de honor
Respuesta: Consultorio de dudas de Scripts

hola bueno estoy haciendo un hack del rojo fuego en español e inserte un falemon lo probé como Pokémon salvaje y quedo de 10 pero cuando quise insertar el scrip para q sea la única forma de capturarlo me dice q la palabra clave willbattle es desconocida .quisieran q m digan si es q el script esta bien hecho o q le falta .
este es el script

#org 0x2D8A63
msgbox 0x2D8A64 0x2
willbattle 0xFC 0x46 0x0 0x0
hidesprite 0x144 (así aparece en el amap no lo puse en hex)
setflag 0x1300
release
end

el FC es el numeró en hex del pokrmon, esta debajo de Celebi así q pase el 252 a hex.
1300 es el people ID
agradecería q m ayuden
A parte de lo que te han dicho de que es "wildbattle", el hidesprite no lleva el número del pokémon, sino del minisprite. Su número lo puedes ver seleccionando el mini en advance map y fijándote donde dice "No. de gente".
 
Respuesta: Consultorio de dudas de Scripts

tomando un poco de la duda de maxijodon para que sirve el hidesprite? que utilidad tiene y que se puede hacer con el?

es que en los tutoriales que he visto nunca habia llegado a leer acerca de hidesprite y me causa algo de curiosidad.

y la otra es un script de give pokemon que hice para optener un charmander lvl 5 pero solo luego de que ganes la medalla trueno y me gustaria saber si cometi errores y tambien alguien me dijo que no usara el free space finder y menciono algo sobre @algo pero fue muy superficial y no le entendi bien para que me expliqueis por favor o me muestren un tutorial donde se hable de esto.( es script lo hice buscando espacios con el free space finder pero aun no lo he compilado)

#dynamic 0x8000000

#org 0x800100
lock
faceplayer
checkflag 0x822 (la flag de la medalla trueno)
if 0x1 goto 0x900000 (direccion a la que me manda si a flag esta activada)
msgbox 0x71A300 0x6 (mensaje que me dara si la fag no esta activada)
release
end

#org 0x900000
lock
faceplayer
checkflag 0x200 (chequea si esta flag libre esta activada o no)
if 0x1 goto 0x71C900 ( direccion a la que me manda si la flag esta activada)
wildbattle 0x4 0x5 0x0 0x0 0x0 ( batalla con un charmander lvl 5)
setflag 0x200 (activa la flag 200 con lo que espero no se vuelva a repetir el evento XD)
release
end

#org 0x71A300(el mensaje que me dara si no tengo la medalla trueno)
= CHARMANDER esta esperando a su entrenador\npor favor vuelve en otro momento.

#org 0x71C900 ( direccion a la que me envia si el evento del give pokemon ya ocurrio)
release
end


no se si lo haya hecho bien por eso pido consejos, correccion de errores y que me expliqueis por favor que debo usar para las direcciones en vez de usar direcciones buscadas por el free space finder.

de antemano gracias por la atencion.
 

Javi4315

Babyface
Miembro de honor
Respuesta: Consultorio de dudas de Scripts

tomando un poco de la duda de maxijodon para que sirve el hidesprite? que utilidad tiene y que se puede hacer con el?

es que en los tutoriales que he visto nunca habia llegado a leer acerca de hidesprite y me causa algo de curiosidad.

y la otra es un script de give pokemon que hice para optener un charmander lvl 5 pero solo luego de que ganes la medalla trueno y me gustaria saber si cometi errores y tambien alguien me dijo que no usara el free space finder y menciono algo sobre @algo pero fue muy superficial y no le entendi bien para que me expliqueis por favor o me muestren un tutorial donde se hable de esto.( es script lo hice buscando espacios con el free space finder pero aun no lo he compilado)

#dynamic 0x8000000

#org 0x800100
lock
faceplayer
checkflag 0x822 (la flag de la medalla trueno)
if 0x1 goto 0x900000 (direccion a la que me manda si a flag esta activada)
msgbox 0x71A300 0x6 (mensaje que me dara si la fag no esta activada)
release
end

#org 0x900000
lock
faceplayer
checkflag 0x200 (chequea si esta flag libre esta activada o no)
if 0x1 goto 0x71C900 ( direccion a la que me manda si la flag esta activada)
wildbattle 0x4 0x5 0x0 0x0 0x0 ( batalla con un charmander lvl 5)
setflag 0x200 (activa la flag 200 con lo que espero no se vuelva a repetir el evento XD)
release
end

#org 0x71A300(el mensaje que me dara si no tengo la medalla trueno)
= CHARMANDER esta esperando a su entrenador\npor favor vuelve en otro momento.

#org 0x71C900 ( direccion a la que me envia si el evento del give pokemon ya ocurrio)
release
end


no se si lo haya hecho bien por eso pido consejos, correccion de errores y que me expliqueis por favor que debo usar para las direcciones en vez de usar direcciones buscadas por el free space finder.

de antemano gracias por la atencion.
El hidesprite sirve para hacer desaparecer un minisprite del mapa. Además, deberás asignarle y activar una flag. La flag se la asignas donde dice "People ID". Mientras la flag esté activada, el mini permanecerá oculto, en caso contrario, será visible.

Es mejor usar el #dynamic, que busca automáticamente el espacio, y utilizar etiquetas "@" en vez de poner los offsets directamente.

http://whackahack.com/foro/t-16885/gba-otros-macrotutorial-hacking-desde-0-8-entrega

Ahí, en el manual de "Mi primer script", explico todo eso.

Sobre el script, veamos. En general está bien. Reiterar el lock y el faceplayer en el 0x900000 no es necesario, porque ya se han leído antes. La parte en la que comprueba la flag 0x200, cuando está activado te lleva a un release y un end, lo cual no tiene sentido, ya que, en tal caso, si hablas con el mini no pasará nada y quedará raro, al menos que diga algo. A no ser que el mini desaparezca, que en ese caso sobra, ya que no se leerá. Por lo demás, l oveo bien.
 
Respuesta: Consultorio de dudas de Scripts

Javi4315♪;245023 dijo:
A parte de lo que te han dicho de que es "wildbattle", el hidesprite no lleva el número del pokémon, sino del minisprite. Su número lo puedes ver seleccionando el mini en advance map y fijándote donde dice "No. de gente".
gracias por ka ayuda ya cambie eso y ahora si funciona lo unico malo es que cuando lo capturo al pokemon el mini sigue en el mapa como puedo aser para q desaparesca una ves terminado el combate
 
Estado
Cerrado para nuevas respuestas.
Arriba