qna_rh
Thread Id: 29950
Thread Name: algunas dudas de scripting y asm[FR]
#0
necrosis corrosiva 28588
hola, necesitaba saber algunas cosas para mi evento inicial pero no se como hacerlo

1-¿es posible hacer que un pokemon que te den en un script de givepokemon o en una wildbattle sea de un genero determinado?
me refiero a que mi personaje, o en este caso su madre, tenia una eevee (genero femenino) y en cierta parte del juego nos dice que la cuidemos nosotros, y esa eevee debe ser hembra, si no es posible en forma de scripts ¿alguien sabe como puedo hacerlo con asm hex u alguna otra manera?

2-¿como puedo hacer para ensamblar una rutina asm?
necesito hacer esto para seguir el tutorial
este tutorial en concreto:

http://wahackforo.com/t-29781/fr-asm-actualizacion-evoluciones-eevee-al-sistema-dns

y no se como ensamblar rutinas, así que si alguien fuera tan amable de pasarme un tutorial con respecto a esto le agradecería

3-el comando checkgender, necesito saber como usarlo correctamente y para que funcionalidades se ocupa

eso es todo pero lo adjunte todo en un tema, así que si alguien me quiere y puede compartirme esta información le estaría muy agradecido a el o ella, gracias
#1
Flame4315♪ 28899
La 1 si me repaso los comandos igual sé si se puede o no, pero no me suena ningún comando para ello. Igual con un copybyte o algo así... Ni idea xd
2- ni idea
3- el comando checkgender se usa para comprobar si eres chico o chica, muy útil cuando quieres que tu madre te diga "hijo" o "hija" o ejemplos similares, vamos eventos según el personaje que elijas. Se usa como cualquier otro comando no (?)
#2
necrosis corrosiva 28588
si me explicaras eso del copybyte por favor, a lo mejor con eso hago que funcione, gracias por responderme
#3
Flame4315♪ 28899
Iniciado por necrosis corrosiva
si me explicaras eso del copybyte por favor, a lo mejor con eso hago que funcione, gracias por responderme



No sé como va pero para hacer eventos con horas es así, a ver si lo entiendes con este ejemplo:

Queremos iluminar las ventanas en las casas de nuestro hack por la noche. Pues bien, al insertar el DNS la herramienta nos da un offset donde está insertada la rutina horaria, y ahí tenemos los bytes de hora, minuto y segundo.
Pues copiando el byte de la hora a partir de la noche podríamos encender las luces, (¿pero no era con un setmaptile? Sí, pero primero la ROM ha de reconocer a que hora estamos, para ello copiamos el byte de las horas nocturnas, si no estarían encendidas todo el día y no tendría sentido)
¿Y cómo? Bueno, no sabría encontrar el byte muy bien pero eso es aparte, se usaría como un en un script cualquiera.

[...]
copybyte 0xFFFFFF 'el offset del dato
setmaptile 0x...etc
[...]

¿Qué tiene que ver esto con tu duda?
Pues bien, yo realmente ni idea, pero se me ha ocurrido que igual copiando el byte de género x podrías jugar con eso, aunque no sé mucho de scripting por lo que ni idea. Que alguien experto me corrija y te ayude por favor porque mas de esto no sé jajajaja
#4
necrosis corrosiva 28588
suena muy factible para hacerse en el tipo de eventos que planeo tener pero me quedaría la duda: ¿de que manera obtendría yo el byte de los géneros de los pokemon, es decir masculino, femenino y sin genero? si puedo obtener el byte tengo prácticamente armado el esquema base del evento y podría tener esta duda solucionada quedándome las demas.
gracias amigo,de verdad me ayudo bastante.
#5
Flame4315♪ 28899
Iniciado por necrosis corrosiva
suena muy factible para hacerse en el tipo de eventos que planeo tener pero me quedaría la duda: ¿de que manera obtendría yo el byte de los géneros de los pokemon, es decir masculino, femenino y sin genero? si puedo obtener el byte tengo prácticamente armado el esquema base del evento y podría tener esta duda solucionada quedándome las demas.
gracias amigo,de verdad me ayudo bastante.



Jajajajajaja esa es buena, ahí si que ni idea... Igual trasteando con el VBA mientras estás haciendo algo con los géneros... Npi sinceramente xD
#6
necrosis corrosiva 28588
Iniciado por flame
Jajajajajaja esa es buena, ahí si que ni idea... Igual trasteando con el VBA mientras estás haciendo algo con los géneros... Npi sinceramente xD


no soy mucho de usar el VBA para investigar, pero gracias asi que ahora resta buscarme la manera de hacerlo y preguntar mas :)
#7
Tito Dafting301_4315♪ Kuchiki 24341
La primera se puede lograr usando un decrypter de la info del Pokémon, se modifica el sexo del Pokémon y ya.

La segunda no recuerdo como era.

Checkgender si mal no recuerdo guarda 0 en LASTRESULT si es hombre y 1 si es mujer. Luego se usa un compare y listo.
#8
necrosis corrosiva 28588
Iniciado por Dafting
La primera se puede lograr usando un decrypter de la info del Pokémon, se modifica el sexo del Pokémon y ya.

La segunda no recuerdo como era.

Checkgender si mal no recuerdo guarda 0 en LASTRESULT si es hombre y 1 si es mujer. Luego se usa un compare y listo.


me detallarias eso de decrypter por favor ? nunca hica nada como eso, me das un tutorial lo mejor explicado que puedas ? gracias :D
#9
Yito 29233
el genero en concreto si se como hacerlo (creo que la tecnica podria funcionar)

en yape por ejm se puede "alterar" el % de genero que debe aparecer un pokemon (si el caso que quieres un eevee hembra regalado, solo ponlo en 100% hembra desde YAPE. Tengo entendido yo, el principio es el mismo, tanto give pokemon como wild battle)

la opcion esta abajo a la izquierda despues que cargas tu rom en "gender". Salen unos porcentajes y ahi mismo se ajusta. Luego que lo haces a tu gusto, le guardas y listo. Pruebalo.
#10
necrosis corrosiva 28588
Iniciado por Yito
el genero en concreto si se como hacerlo (creo que la tecnica podria funcionar)

en yape por ejm se puede "alterar" el % de genero que debe aparecer un pokemon (si el caso que quieres un eevee hembra regalado, solo ponlo en 100% hembra desde YAPE. Tengo entendido yo, el principio es el mismo, tanto give pokemon como wild battle)

la opcion esta abajo a la izquierda despues que cargas tu rom en "gender". Salen unos porcentajes y ahi mismo se ajusta. Luego que lo haces a tu gusto, le guardas y listo. Pruebalo.


lo unico que quiero solo en ese script que sea hembra 100%, luego quiero a los demas , tanto regalados como salvajes que sean aleatorios, tambien pese en hacer un pokemon igual a eevee pero 100% hembra pero por ahora lo descarto, gracias igualmente yito :)
#11
PokePika 29340
Un tutorial de rutinas bastante bueno de Andrea: http://wahackforo.com/t-23551/insert-asm-routine
#12
necrosis corrosiva 28588
Iniciado por PokePika
Un tutorial de rutinas bastante bueno de Andrea: http://wahackforo.com/t-23551/insert-asm-routine


gracias pokepika, me podría servir, lo voy a probar en cuanto tenga tiempo, igualmente lo que mas me preocupa es como hacer eso del genero de un pokemon pero en un rato lo intento, muchas gracias. :D
#13
Javi4315♪ 13374
La estructura de los pokémon es algo un tanto complicado. Y más teniendo en cuenta lo que tú quieres cambiar. Eso del género se encuentra en los 4 primeros bytes de los datos del pokémon, concretamente los que se corresponden con la personalidad. El problema es que si editas la personalidad, te cargas el pokémon.

La personalidad, junto con la OT ID forman el "código" que encripta los datos del pokémon. Por lo tanto, al cambiar una de esas cosas (en este caso, la personalidad), cambia ese código y el juego no puede interpretar bien los datos (bad egg). Para evitar eso, debes desencriptar los datos del pokémon, cambiar la personalidad, y volverlos a encriptar de acuerdo al nuevo código.

Pero ahora se te suma un nuevo problema. Los datos encriptados del pokémon forman 48 bytes, de los cuáles son 4 subestructuras distintas de 12 bytes que cambian de posición dependiendo de la personalidad (24 formas distintas; 4! = 4*3*2*1 = 24). Tendrías también que comprobar si esas subestructuras siguen en el mismo sitio después de la edición o si cambian, en cuyo caso, tendrías que moverlas en el orden correspondiente.

Y además de todo eso, por supuesto, controlar siempre el checksum para que coincida con los datos si cambias algo.

No es algo fácil que se haga con un WBTO ni nada de eso. Tiene que ser con ASM. Precisamente yo estoy trabajando actualmente en una rutina para eso (no concretamente para el género, sino para editar los datos del pokémon), pero es para Emerald. Si para cuando la termine no has conseguido hacerlo, te la adapto para tu rom.
#14
necrosis corrosiva 28588
Iniciado por Javi4315♪
La estructura de los pokémon es algo un tanto complicado. Y más teniendo en cuenta lo que tú quieres cambiar. Eso del género se encuentra en los 4 primeros bytes de los datos del pokémon, concretamente los que se corresponden con la personalidad. El problema es que si editas la personalidad, te cargas el pokémon.

La personalidad, junto con la OT ID forman el "código" que encripta los datos del pokémon. Por lo tanto, al cambiar una de esas cosas (en este caso, la personalidad), cambia ese código y el juego no puede interpretar bien los datos (bad egg). Para evitar eso, debes desencriptar los datos del pokémon, cambiar la personalidad, y volverlos a encriptar de acuerdo al nuevo código.

Pero ahora se te suma un nuevo problema. Los datos encriptados del pokémon forman 48 bytes, de los cuáles son 4 subestructuras distintas de 12 bytes que cambian de posición dependiendo de la personalidad (24 formas distintas; 4! = 4*3*2*1 = 24). Tendrías también que comprobar si esas subestructuras siguen en el mismo sitio después de la edición o si cambian, en cuyo caso, tendrías que moverlas en el orden correspondiente.

Y además de todo eso, por supuesto, controlar siempre el checksum para que coincida con los datos si cambias algo.

No es algo fácil que se haga con un WBTO ni nada de eso. Tiene que ser con ASM. Precisamente yo estoy trabajando actualmente en una rutina para eso (no concretamente para el género, sino para editar los datos del pokémon), pero es para Emerald. Si para cuando la termine no has conseguido hacerlo, te la adapto para tu rom.


wow de verdad muchas gracias :D voy a intentar encontrar la forma pero en caso de que no gracias por adaptar la rutina, mil gracias.
_____________________________________________________
ya se me fueron las dudas, solo queda ver que puedo hacer con el genero, pero ya puedo dar por resueltas las dudas, gracias a todos los que me respondieron :)
#15
J.com 12785
Y esto que hace que no se cierra?
~