Registrarse

[RH - Scripting] Pregunta/respuesta rápida

Estado
Cerrado para nuevas respuestas.

Yainish

Usuario de platino
Descargué una ROM base con todos los Pokémon. Con un Advance Map que traía puedo poner los Pokémon que quiera en la hierba alta pero en el Advance Trainer no me deja poner nada más que las tres primeras generaciones. ¿Cómo hago para poner más?
 
¿Alguien me pasa la lista de "special" de Ruby y de Firered?
El que más me sirve es el de Firered.
Gracias
T

En respuesta a la pregunta de @GSSPG87
Pon en el .ini de G3T (Gen 3 Tools) el número de pokemon que tiene la rom y luego usa el trainer editor de allí.
Denada
T
 

darkeon75

ROM Hacker
¿Alguien me pasa la lista de "special" de Ruby y de Firered?
El que más me sirve es el de Firered.
Gracias
T

En respuesta a la pregunta de @GSSPG87
Pon en el .ini de G3T (Gen 3 Tools) el número de pokemon que tiene la rom y luego usa el trainer editor de allí.
Denada
T
La lista de specials de ruby y fire red se pueden encontrar aquí:

https://whackahack.com/foro/t-47908/fr-lista-specials

Aquí te pongo las más importantes:
Special 0x0 = Cura a tu equipo (Sage)
Special 0x2 = Efecto de un warp, pantalla a negro (Sage)
Special 0x20 = Inicia batalla con otro jugador, falla por si mismo (Sage)
Special 0x21 = Inicia un intercambio con otro jugador, falla por si mismo (Sage)
Special 0x22 =Salta la confirmación/espera e inicia el intercambio (Sage)
Special 0x23 = Pregunta si deseas guardar la partida (Sage)
Special 0x3C = Abre el menu del PC (Sage)
Special 0x5F = Sirve para editar perfiles y depende de la variable 0x8004 0x"valor del 1 al 5" (Sage)
Special 0x60 = Te muestra tu perfil (el que editaste con special 0x5f), depende de los mismos valores que el anterior
(Sage)
Special 0x29 = Te da a elegir 3 Pokémon de tu equipo (Sage)
Special 0x9D = Tutorial del viejo (El que te enseña a capturar pokémon) (Sage)
Special 0x9F = Escoge un Pokémon y guarda su posición en la var 0x8004 (Sage)
Special 0x9E = Abre el menu de nombrar Pokémon, está ligado al Special 0x9F, o a la variable 0x8004 0x"slot del equipo" (Sage)
Special 0xC8 = Pantallazo de cuando pierdes (Sage)
Special 0xFB = Abre el mapa (Sage)
Special 0x7B = Comprueba si el Pokémon es recibido o no en intercambio (Sage)
Special 0x7C = Almacena el nombre del Pokémon en la variable 0x8004 (Sage)
Special 0x16F = Activa la pokedex nacional en Fire Red (Wold)
Special 0x136 = Efecto de un terrremoto en Fire Red (Wold)
Special 0x20 = Inicia batalla con otro jugador, falla por si mismo (Sage)
Special 0x21 = Inicia un intercambio con otro jugador, falla por si mismo (Sage)
Special 0x22 =Salta la confirmación/espera e inicia el intercambio (Sage)
Special 0x7B = Comprueba si el Pokémon es recibido o no en intercambio (Sage)
Special 0x7C = Almacena el nombre del Pokémon en la variable 0x8004 (Sage)
 

lishark

mucha idea poco hackeo/a mi padre lo mato miutu
ayuda no sirvo para scriptear y quiero hacer que te encuentres un objeto en el suelo eh intentado copiar el script de cualquier objeto que te encuentas por el suelo y cambiar el objeto por el que quiero(de hexagesimal se algo) pero cuando el agarro el objeto y me voy caminando al volver el objeto reaparece y si por alguna rason abro algun menu o me sale un pokemon salvaje al salir (sea del menu o del combate) empiezo a controla el objeto y se modifican los tiles por donde puedo caminar y por donde no (me refiero a las ''c'' y ''1'' del advance map osea :muros invisibles) ¿alguien me ayuda? llevo facil una hora intentando solucionarlo

el script es este:

#dynamic 0x800000

#org @start
giveitem 0xD4 0x1 0x1
end

pd:no se como usar code
 
Última edición:

MetalKaktus

A la luz del quinto día, mira al este
Miembro insignia
Re: Respuesta: Pregunta/respuesta rápida

ayuda no sirvo para scriptear y quiero hacer que te encuentres un objeto en el suelo eh intentado copiar el script de cualquier objeto que te encuentas por el suelo y cambiar el objeto por el que quiero(de hexagesimal se algo) pero cuando el agarro el objeto y me voy caminando al volver el objeto reaparece y si por alguna rason abro algun menu o me sale un pokemon salvaje al salir (sea del menu o del combate) empiezo a controla el objeto y se modifican los tiles por donde puedo caminar y por donde no (me refiero a las ''c'' y ''1'' del advance map osea :muros invisibles) ¿alguien me ayuda? llevo facil una hora intentando solucionarlo

el script es este:

#dynamic 0x800000

#org @start
giveitem 0xD4 0x1 0x1
end

pd:no se como usar code
Dicho por @Xabier2012

Código:
#dynamic 0x800000
#org @start
giveitem 0x(número del objeto en hexadecimal) 0x1 MSG_FIND
end
Ahora sólo falta asignarle una flag a la pokeball y listo, debería funcionar
 

Rubire4

Usuario mítico
ayuda no sirvo para scriptear y quiero hacer que te encuentres un objeto en el suelo eh intentado copiar el script de cualquier objeto que te encuentas por el suelo y cambiar el objeto por el que quiero(de hexagesimal se algo) pero cuando el agarro el objeto y me voy caminando al volver el objeto reaparece y si por alguna rason abro algun menu o me sale un pokemon salvaje al salir (sea del menu o del combate) empiezo a controla el objeto y se modifican los tiles por donde puedo caminar y por donde no (me refiero a las ''c'' y ''1'' del advance map osea :muros invisibles) ¿alguien me ayuda? llevo facil una hora intentando solucionarlo

el script es este:

#dynamic 0x800000

#org @start
giveitem 0xD4 0x1 0x1
end

pd:no se como usar code
Aparte de lo que dice @Metal Kaktus, es muy importante que ningún overworld del mapa tenga el movimiento "Mirar abajo". Si ves que alguno lo tiene sustituyelo por "Sin movimiento", que también hace que el overworld mire abajo.
Mirar abajo tiene un bug que hace que al refrescar la pantalla controles a otro minisprite y no puedas continuar la partida.
 

lishark

mucha idea poco hackeo/a mi padre lo mato miutu
Aparte de lo que dice @Metal Kaktus, es muy importante que ningún overworld del mapa tenga el movimiento "Mirar abajo". Si ves que alguno lo tiene sustituyelo por "Sin movimiento", que también hace que el overworld mire abajo.
Mirar abajo tiene un bug que hace que al refrescar la pantalla controles a otro minisprite y no puedas continuar la partida.
pues sera lo de mirar abajo por que si no no entenderia
pd:gracias me salvaste de un bug gordo

un problema menos ahora tengo una duda:que hago si el objeto re-aparrece luego de ser agarrado?

pd:use el script de metal kaktus
 
Última edición:
Necesito hacer un script de gatillo para que ocurra un evento, y que al terminar ese evento no vuelva a aparecer, porque cuando entró y salgo de (ej)una casa. El evento vuelve a ocurrir, como logró que no vuelva a repetir el evento?
Llevo mínimo 5 horas mezclando scripts para lograrlo pero no me sale

Alguien me ayuda? XD
 

MetalKaktus

A la luz del quinto día, mira al este
Miembro insignia
Necesito hacer un script de gatillo para que ocurra un evento, y que al terminar ese evento no vuelva a aparecer, porque cuando entró y salgo de (ej)una casa. El evento vuelve a ocurrir, como logró que no vuelva a repetir el evento?
Llevo mínimo 5 horas mezclando scripts para lograrlo pero no me sale

Alguien me ayuda? XD
Simplemente debes asignar una variable al script de gatillo y esa var cambiarle el valor una vez que se ejecute por primera vez, para que no se vuelva a ejetucar. Es decir,

Configuralo tal que así:



Lo que he remarcado en amarillo es lo que tendrás diferente a mi. El script offset simplemente es el offset del script. El var number por de 0x40FF hacia abajo, una que tengas libre.

Y el script es así:

Código:
#dynamic 0x800000

'---------------
#org @start
 @el cuerpo del script
setvar 0x40FF 0x1
end
Yo he puesto 0x40FF, pero pon el mismo valor que hayas puesto al configurar el script de gatillo. Recuerda no usar, lock, faceplayer ni release.
 
Gracias @Gorkawaii Kaktus y sabes como hacer un script de gatillo donde, por ejemplo un policía no te deje pasar a la siguiente ruta hasta que vallas a la siguiente ciudad y realizar algún evento allá, y que así al volver a donde estaba el policía este haya desaparecido y puedas pasar hacia la ruta

Y alguien que me diga como poner para que un mini, luego de hacer un evento desaparezca (por ejemplo una batalla con el rival)
Alguien que me explique como hacerlo?
 
Última edición:

MetalKaktus

A la luz del quinto día, mira al este
Miembro insignia
Gracias @Gorkawaii Kaktus y sabes como hacer un script de gatillo donde, por ejemplo un policía no te deje pasar a la siguiente ruta hasta que vallas a la siguiente ciudad y realizar algún evento allá, y que así al volver a donde estaba el policía este haya desaparecido y puedas pasar hacia la ruta

Y alguien que me diga como poner para que un mini, luego de hacer un evento desaparezca (por ejemplo una batalla con el rival)
Alguien que me explique como hacerlo?
Ya te he explicado como se hace un script de gatillo. Ahora solo debes hacer que la var que hayas asignado al script de gatillo sea seteada una vez hagas ese vento del que hablas. Es decir,

script del evento:

Código:
#dynamic 0x800000

#org @start
(todo el codigo que quieras)
setvar 0x40FF 0x1
end
Vamos, que al final de script setees la var al valor 1.

Y el script de gatillo simplemente haz que se ejecute si la var 0x40FF tiene el valor 0. De esta forma, una vez seteada la var, el poli no te volverá a molestar.

-------------------------------------------------

Para que un mini desaparezca tienes que hacer dos cosas. Primero, asignar al People ID una flag, y en el mismo script usar un hidesprite y un setflag. Por ejemplo yo usaré la 0x200

Código:
#dynamic 0x800000

#org @start
(todo el codigo que quieras)
hidesprite 0x(número de persona del mini)
setflag 0x200
end
Y no te olvides de lo que te he dicho, asignar la flag que hayas activado al mini.
 
Alguien que me explique esto por favor.... pongo el:
hidesprite 0x(n° del mini) y el setflag 0x200
Para que el mini desasparezca pero cuando doy un paso hacia cualquier lado, el mini vuelve a aparecer...

y yo no quiero que vuelva a aparecer, quiero que no aparezca mas en toda la historia del juego
me explican? gracias y perdon por las molestias
 

Cheve

MoonLover~
Miembro de honor
Alguien que me explique esto por favor.... pongo el:
hidesprite 0x(n° del mini) y el setflag 0x200
Para que el mini desasparezca pero cuando doy un paso hacia cualquier lado, el mini vuelve a aparecer...

y yo no quiero que vuelva a aparecer, quiero que no aparezca mas en toda la historia del juego
me explican? gracias y perdon por las molestias
¿Haz puesto el 200 en el "People ID"?

Also: mira de no poner "Mirar Abajo" como movimiento.
 

SamOri

Si algo te gusta no lo dejes por nada
Hola a todos!
Llevo en este mundo unos meses y me ha surgido la necesidad de saber cómo hago para que un mini esté "vigilando" y cuando nos vea (como si de un entrenador se tratase) nos diga algo o lo que sea pero sin desembocar en un combate. Es para FR.
Muchas gracias de antemano y ojalá me puedan ayudar!
 

Katherine

Omnipresente
Miembro de honor
¿Como puedo aprender como usar una rutina "ASM" detalladamente?
Leyendo el tutorial que te aporta la rutina te explicará como se utiliza e inserta. Por lo general hay que seguir este procedimiento para insertarla: https://whackahack.com/foro/t-31277/gba-asm-como-compilar-rutina-asm
Pero a veces es necesario que sustituyas algunos valores por ciertas direcciones. También es probable que si es algo que hay que desactivarlo y activarlo tengas que llamar la rutina ASM a través de un script. Esas dos últimas cosas deberían estar explicadas en el aporte o tutorial que aporte la misma rutina que deseas insertar.

¡Nos vemos! Miau revoir~.
 

hacanoca

Héroe de WaH
Hola
Mi duda es: ¿Cómo quitar la música en el acto, de una?
Estoy utilizando el comando "fadeout 0x0", tengo entendido que el 0x0 es la velocidad.
Pero no deja de sonar instantáneamente, se demora como un segundo, o algo menos, pero el caso es que se nota el fundido.
Vi que sound 0xA ya se demoraba mucho en desaparecer.
Así que no sé si es con ese comando pero un 0x(algo diferente) o si se debe utilizar un comando diferente.
Gracias de antemano.
 

Rubire4

Usuario mítico
Hola a todos!
Llevo en este mundo unos meses y me ha surgido la necesidad de saber cómo hago para que un mini esté "vigilando" y cuando nos vea (como si de un entrenador se tratase) nos diga algo o lo que sea pero sin desembocar en un combate. Es para FR.
Muchas gracias de antemano y ojalá me puedan ayudar!
Pones un mini de policía, y en la dirección en la que quieras que mire pones un montón de scripts de gatillo hasta donde quieras que surja efecto. Simplemente le aplicas a los script de gatillo un script para que cuando lo pises el policía te diga que no puedes pasar.
Para más información: https://whackahack.com/foro/t-42542/megatutorial-scripting-desde-cero-finalizado
 

SamOri

Si algo te gusta no lo dejes por nada
Re: Respuesta: Pregunta/respuesta rápida

Muchas gracias @Rubire4 por tu atención y por responder, hace muy poco que di con la forma exacta que buscaba y posteé un tuto incluso sobre ello para ayudar a más gente que buscase lo mismo. Saludos!
 
Hola buenas tardes.
Una duda, quiero hacer un script de batalla tipo el de gary en rojo fuego (aprecer en cierto punto del mapa y despues de la batalla desaparecer ya sea caminando u oscureciendo la pantalla) me podrian ayudar con esta duda?.
gracias y Saludos.
 
Estado
Cerrado para nuevas respuestas.
Arriba