Registrarse

[ROM Hacking] Pregunta/respuesta rápida

Estado
Cerrado para nuevas respuestas.

Fran

Profesional de WaH

Monchis

Héroe de WaH
Como quito el evento de la tienda pokemon de ciudad verde sin romper el juego?
Quiero entrar a comprar pero siempre se activa el evento y yo ya elimine todos los scripts de pueblo paleta.
 

Yainish

Usuario de platino
Hoy traigo otra duda, si, otra. (Más bien 2)

1. ¿Hay algún tipo de givepokemon que te de un pokemon shiny asegurado?

2. ¿Hay algún modo de que cuando uso el givepokemon no aparezca un mensaje como "Has recibido a _________" o algo así?
 

MetalKaktus

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

Hoy traigo otra duda, si, otra. (Más bien 2)

1. ¿Hay algún tipo de givepokemon que te de un pokemon shiny asegurado?

2. ¿Hay algún modo de que cuando uso el givepokemon no aparezca un mensaje como "Has recibido a _________" o algo así?
Respecto a tu primera duda: https://whackahack.com/foro/t-12234/gba-scripting-pokemon-brillantes

En cuanto a lo segundo no estoy seguro, pero supongo que se podría hacer una rutina para añadirte un Pokémon, al final al, sabemos el offset que contiene los datos de los pokes del equipo, solo habría que sobreescribirlo, trataré de investigar esto más a donde. Aunque puede que haya otra forma, pero la desconozco.
 

Monchis

Héroe de WaH
Esto será rápido, exactamente como debo acomodar los frames de los overworld? intente de varias maneras pero me salen en posiciones que no son, yo al menos los tengo así:

Espero sus respuestas.
 
Buenas tardes, tengo una duda importante sobre el advance map.
Estoy modificando una rom del pokémon esmeralda y ya creé un mapa sin problemas, pero no sé cómo hacer para poder usar vuelo e ir hacia ese lugar exacto (he de añadir que no sé usar el world map editor).
Muchas gracias por vuestra atención
 

MetalKaktus

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

Buenas tardes, tengo una duda importante sobre el advance map.
Estoy modificando una rom del pokémon esmeralda y ya creé un mapa sin problemas, pero no sé cómo hacer para poder usar vuelo e ir hacia ese lugar exacto (he de añadir que no sé usar el world map editor).
Muchas gracias por vuestra atención
Supongo que en el esmeralda es igual que en el Fire Red. En la pestaña de eventos tienes una casilla donde pone una F. Es simple, pon esa casilla donde quieras que te teletransporte al usar vuelo. Claro que esto sirve para mapas que ya tengan una posición vuelo.

En caso de uno nuevo las cosas se complican y mucho. Debes editar hexadecimalmente la cantidad de posiciones de vuelo que hay en el juego, aparte de hacer más cosas. Si se te da bien el inglés sirvete tu mismo:

https://www.pokecommunity.com/showthread.php?t=206197
 

Cheve

MoonLover~
Miembro de honor
tengo una pregunta como puedo cambiar el punto de reaparición en pokemon essentials: ejemplo yo todabia no eh llegado a un centro pokemon y me debilitan a todos los pokemones y entonces me lleva a la casa de mi madre pero me teletransporta a una pared como cambio ese lugar
Estás hablando de Essentials, pero es un subforo y tema de ROM Hacking, así que:

1. SetHealingPlace 0xYY para RomHacks

2. llamas al script Kernel.pbSetPokemonCenter para Essentials
 
Zinc creo que has mal interpretado lo que dije lo que yo quiero es que cuando se debiliten mis pokemon me lleve a la casa de mi madre, lo cual ya hice, pero yo quiero camiar la posición en la casa osea ej: en una silla.
 
hola, tengo 3 preguntas

1) como se puede cambiar los efectos de una pokeball cuando se usa?
porque yo, por ejemplo, quiero que la honor ball funcione como la sana ball de diamante, que llena la barra de ps del pokemon después de atraparlo

2)como puedo cambiar la cantidad de items que ofrece la tienda pokemon?
ejemplo, si quiero quitarle 2 items a la tienda de ciudad celeste y agregarle 3 a la de ciudad verde

3)se pueden agregar mas mt?, si es así, como se hace?
 
Última edición:

Luis Palomo

El Maestro de los Eevee
Re: Respuesta: [ROM Hacking] Pregunta/respuesta rápida

hola, tengo 3 preguntas

1) como se puede cambiar los efectos de una pokeball cuando se usa?
porque yo, por ejemplo, quiero que la honor ball funcione como la sana ball de diamante, que llena la barra de ps del pokemon después de atraparlo

2)como puedo cambiar la cantidad de items que ofrece la tienda pokemon?
ejemplo, si quiero quitarle 2 items a la tienda de ciudad celeste y agregarle 3 a la de ciudad verde

3)se pueden agregar mas mt?, si es así, como se hace?
Sobre la 2)Seira hacer un nuevo script de la tienda o editar el original. Esta duda habla sobre scprit de tienda Pokemon, pero ya puedes ir por ese rumbo y cambiarlo. O mejor ve esto.

Sobre la 3)En esta duda se hablo sobre eso.

Sobre la 1)Con un editor de objetos creo que se puede cambiar su funcion, pero si no hay sana ball normalmennte por defecto te tocara insertar una rutina ASM.
 

hacanoca

Héroe de WaH
Hola a todos
Mi duda es: ¿Qué hace y cómo funciona el comando loadpointer de XSE?
Es que estoy buscando ahorrar espacio en algo muy repetitivo que tengo en los scripts y es mostrar el mugshot del prota.
Para ello debo saber si es chico o chica, entonces mediante el chekgender logro ejecutar un mugshot o el otro.
El problema es que cada vez que lo requiero en un script hago todo el proceso y siento que estoy gastando espacio tontamente, que debe haber una forma de guardar un pointer en el que se ejecute el mugshot X ó el Y; y luego invocarlo en un script nuevo. Supongo que es con ese comando, pero no sé bien cómo.
 

Sayer301!

UnityLord!
Miembro de honor
Hola a todos
Mi duda es: ¿Qué hace y cómo funciona el comando loadpointer de XSE?
Es que estoy buscando ahorrar espacio en algo muy repetitivo que tengo en los scripts y es mostrar el mugshot del prota.
Para ello debo saber si es chico o chica, entonces mediante el chekgender logro ejecutar un mugshot o el otro.
El problema es que cada vez que lo requiero en un script hago todo el proceso y siento que estoy gastando espacio tontamente, que debe haber una forma de guardar un pointer en el que se ejecute el mugshot X ó el Y; y luego invocarlo en un script nuevo. Supongo que es con ese comando, pero no sé bien cómo.
Pues a ver, el loadpointer era para cargar ciertos bytes en otra direccion o algo asi, la verdad es que no use nunca ese comando y no me acuerdo de su funcion exacta.

Pero para lo que quieres es muy sencillo, creas un script que sea mas o menos todo el asunto del checkgender y la carga del mugshot, pero en vez de finalizar con un END, finalizará con un RETURN, solo eso.

Al compilarlo, el pointer se convertirá en un offset logicamente, pues cada vez que quieras poner el mugshot del player haces un CALL 0x8(direccion) y automaticamente ira a ese puntero, hara el calculo y volverá a la parte concreta del script en la que estabas.
 

FelixTheCat

Profesional de WaH
Hola a todos
Mi duda es: ¿Qué hace y cómo funciona el comando loadpointer de XSE?
Es que estoy buscando ahorrar espacio en algo muy repetitivo que tengo en los scripts y es mostrar el mugshot del prota.
Para ello debo saber si es chico o chica, entonces mediante el chekgender logro ejecutar un mugshot o el otro.
El problema es que cada vez que lo requiero en un script hago todo el proceso y siento que estoy gastando espacio tontamente, que debe haber una forma de guardar un pointer en el que se ejecute el mugshot X ó el Y; y luego invocarlo en un script nuevo. Supongo que es con ese comando, pero no sé bien cómo.
Hmm, no se exactamente como funciona ese comando "loadpointer", pero creo que te puedo ayudar de otra forma. Puedes seguir esta estructura, insertarla en tu script, como sea:

Código:
checkgender 
compare 0x800D 0x0
if 0x1 goto @eschico
if 0x5 goto @eschica
end

#org @eschico
msgbox
mugshot
msgbox
mugshot
release
end

#org @eschica
msgbox
mugshot
msgbox
mugshot
release
end
Creo que queda claro la idea, donde están los comandos "msgbox" y "mugshot" puedes poner ademas los que requieras. Incluso puedes usar los mismos 'msgbox' para los dos géneros (usando el mismo pointer), si en el texto no hay diferencias, claro esta. Espero que haya resuelto tu duda aunque no sepa el funcionamiento del comando anterior :hmm:


Arrivederci~
 
Re: Respuesta: [ROM Hacking] Pregunta/respuesta rápida

Hola a todos
Mi duda es: ¿Qué hace y cómo funciona el comando loadpointer de XSE?
Es que estoy buscando ahorrar espacio en algo muy repetitivo que tengo en los scripts y es mostrar el mugshot del prota.
Para ello debo saber si es chico o chica, entonces mediante el chekgender logro ejecutar un mugshot o el otro.
El problema es que cada vez que lo requiero en un script hago todo el proceso y siento que estoy gastando espacio tontamente, que debe haber una forma de guardar un pointer en el que se ejecute el mugshot X ó el Y; y luego invocarlo en un script nuevo. Supongo que es con ese comando, pero no sé bien cómo.
Hola...

Te lo explicaré con un ejemplo. Yo quiero que mi msgbox sea transparente, osea bueno el texto sea transparente.
Para ello necesito del siguiente script:

Código:
#dynamic 0x750000

#org @ini
writebytetooffset 0x3F 0x4000048
writebytetooffset 0x1F 0x4000049
writebytetooffset 0x41 0x4000050
writebytetooffset 0x3F 0x4000051
writebytetooffset 0xF 0x4000052
writebytetooffset 0xA 0x4000053
writebytetooffset 0xFF 0x202F0AA
writebytetooffset 0xFF 0x202F0AB
writebytetooffset 0x0 0x202F0B8
writebytetooffset 0x0 0x202F0B9
writebytetooffset 0x0 0x202F0AC
writebytetooffset 0x0 0x202F0AD
writebytetooffset 0x0 0x202F0BE
writebytetooffset 0x0 0x202F0BF
writebytetooffset 0x0 0x202F0C0
writebytetooffset 0x0 0x202F0C1
writebytetooffset 0x0 0x202F0C2
writebytetooffset 0x0 0x202F0C3
writebytetooffset 0x0 0x202F0C4
writebytetooffset 0x0 0x202F0C5
writebytetooffset 0x0 0x202F0C6
writebytetooffset 0x0 0x202F0C7
writebytetooffset 0x0 0x202F0C8
writebytetooffset 0x0 0x202F0C9
msgbox @1 0x6
end

#org @1
= Pensando en...
Entonces cada vez que yo quiera hacer un mensaje transparente necesitaría todoooo eso de arriba (como mínimo) entonces
¿Como hago para simplificar eso?.

1) Busca espacio libre en tu rom y una vez encontrado has lo siguiente. En mi ejemplo usaré el offset: 700000 ahí yo tengo mucho espacio libre.

2) Ahora en XSE realizas el siguiente script:

Código:
#org 0x700000        @¿Que dice? "Quiero que se compile en esa dirreción, en 700000"
writebytetooffset 0x3F 0x4000048       @El contenido. en tu caso, aquí iría los comandos para                                                                          mostrar el mugshot
writebytetooffset 0x1F 0x4000049
writebytetooffset 0x41 0x4000050
writebytetooffset 0x3F 0x4000051
writebytetooffset 0xF 0x4000052
writebytetooffset 0xA 0x4000053
writebytetooffset 0xFF 0x202F0AA
writebytetooffset 0xFF 0x202F0AB
writebytetooffset 0x0 0x202F0B8
writebytetooffset 0x0 0x202F0B9
writebytetooffset 0x0 0x202F0AC
writebytetooffset 0x0 0x202F0AD
writebytetooffset 0x0 0x202F0BE
writebytetooffset 0x0 0x202F0BF
writebytetooffset 0x0 0x202F0C0
writebytetooffset 0x0 0x202F0C1
writebytetooffset 0x0 0x202F0C2
writebytetooffset 0x0 0x202F0C3
writebytetooffset 0x0 0x202F0C4
writebytetooffset 0x0 0x202F0C5
writebytetooffset 0x0 0x202F0C6
writebytetooffset 0x0 0x202F0C7
writebytetooffset 0x0 0x202F0C8
writebytetooffset 0x0 0x202F0C9
return                                                    @Este es el comando IMPORTANTE.
Lo importante de aquí es que no pierdas el offset en donde compilaste ese script. Yo inserte en el offset: 700000

Ahora para usarlo sería de la siguiente manera:

Código:
#dynamic 0x750000

#org @ini
call @700000    @Con este simple call, llamas al offset donde se compilo tu contenido repetitivo 
msgbox @1 0x6
end

#org @1
= Pensando en...
Como puedes observar se simplifico bastante, y simplemente cuando yo quiera un mensaje transparente solo tengo que llamar [call] a ese offset.

Y listo.


M.H.B.P

Nota: Si te confundí mas o algo esta mal dicho perdón de antemano...
 
Tengo una duda : cuando intento un poner un dialogo ay veces en q no aparece palabra alguna o simplemente una palabra y el cuadro de dialogo vacio.(se q seles hara fácil responder ,pero soy un poco nuevo en esto),
Agradeceria su respuesta
 

FelixTheCat

Profesional de WaH
Tengo una duda : cuando intento un poner un dialogo ay veces en q no aparece palabra alguna o simplemente una palabra y el cuadro de dialogo vacio.(se q seles hara fácil responder ,pero soy un poco nuevo en esto),
Agradeceria su respuesta
Suponiendo que lo hiciste de la forma correcta, no se cual pueda ser el problema. Tendrías que pasar el script (ya no es rápido AAAAAHH (?)) y todo lo referente a dicho script...
 
El problema es q cuando compilo este mensaje :[blue_fr]Niña: Estoy esperando a mamá y papá.¿Cuál es tu nombre? Es[red_fr][player]¿Cual es el tuyo?[blue_fr]Niña: Mi nombre es[.] Actualmente[.] Mamá y papá me dijeron que nunca les diera mi nombre a desconocidos.
Desaparecen los corchetes y la barra de abajo
 
Estado
Cerrado para nuevas respuestas.
Arriba