Registrarse
  • ¡Estamos buscando incorporaciones al Equipo de Staff! Si crees que puedes ayudarnos ¡no esperes más, Invitado! ¡Haz click abajo, infórmate y manda tu postulación!

    Muchas gracias a todos los interesados en mejorar la comunidad

[Otros] E | Exp. All

Samu

Miembro insignia
Miembro insignia
Respuesta: Re: Respuesta: Re: Em | Otros | El Exp. All Barato

Vuelvo a quotear.
Mucha gente estuvo probando mi hack con el exp. Share que has puesto. Pero men han reportado lo siguiente:

- La cantidad de experiencia ganada es menor a la que debería ganar un Pokémon. Esté encendido o no, incluso iniciando el juego la ganancia de experiencia es muy baja (Por vencer un rattata nivel 2 mi cyndaquil gana solo 8 exp cuando debería ser 24 más o menos)
- Loa huevos tambien ganan experiencia.

Lo demás funciona de maravilla. Me gusta que se active a voluntad.
Lo de que ganen menos experiencia me parece extraño, pero tampoco puedo negarte que sea así. La "rutina" original (más bien las ediciones en HEX) no las hice yo.
Yo lo que hice fue adaptar esos cambios a una rutina q puedas activar/desactivar con un flag. No obstante, por lo que recuerdo de como funciona, no debería producir ese error. Checkea por favor que el error se soluciona al desinstalar la rutina.
 

Gold

Porrero a tiempo parcial
Miembro insignia
Respuesta: Re: Respuesta: Re: Em | Otros | El Exp. All Barato

Lo de que ganen menos experiencia me parece extraño, pero tampoco puedo negarte que sea así. La "rutina" original (más bien las ediciones en HEX) no las hice yo.
Yo lo que hice fue adaptar esos cambios a una rutina q puedas activar/desactivar con un flag. No obstante, por lo que recuerdo de como funciona, no debería producir ese error. Checkea por favor que el error se soluciona al desinstalar la rutina.
Efectivamente, al desinstalar la rutina y revertir los cambios hechos en hex la ganancia de experiencia vuelve a la normalidad. Es extraño la verdad.
 

Ruben12333

Profesional de WaH
Respuesta: Re: Respuesta: Re: Em | Otros | El Exp. All Barato

El error te da por que no quitas todos los espacios de los dialogos nuevos, al final debe aparecerte esto

28 68 01 1C 53 31 08 78 07 B4 11 48 11 4A 0E B4 00 F0 1D F8 0E BC 01 28 15 D1 07 BC 78 B4 0E 4E 33 78 0E 4C 64 25 5D 43 64 5D 06 2C 01 D0 01 22 00 E0 00 22 01 33 06 2B 00 D1 00 23 33 80 78 BC 04 B4 07 4A 10 47 07 BC 01 22 02 40 F8 E7 10 47 00 02 00 00 D1 E6 06 08 D0 70 03 02 97 42 02 02 D1 1C 02 08

Flag

Variable

A mi me daba el mismo error pero cuando samu me lo paso compilado descubrí que si no quitas todos los espacios no compila correctamente y por ende no queda bien la rutina, si al final de lo que pusiste no aparece eso, nada mas ponlo y funcionara.

Rutina Rojo Fuego:

/****** NEW GEN EXP SHARE + EGG EXP FIX *******
************** FRED VERSION ********************
Es necesario realizar las siguientes ediciones en el rom:
- Ve a 0x08021BAA y escribe los bytes "02 21"
- Ve a 0x08021CE0 y escribe los bytes "01 20"
- Ve a 0x08021C36 y escribe lo siguiente:
"C0 46 00 4A 10 47 [XX+1 XX XX 08] 04 BC"
siendo [XX+1 XX XX 08] el pointer permutado a esta rutina
************************************************
Es también importante recalcar que debéis escoger el flag que
vais a utilizar para activar/desactivar la rutina.
De la misma forma debéis escoger una variable que utilizará
está rutina para almacenar un valor de control.
************************************************
************************************************
************************************************
Créditos a BluRose & Lunos *********************
************************************************
************************************************/

.align 2
.thumb

no_crash:
ldr r0, [r5]
mov r1, r0
add r1, #0x53
ldrb r0, [r1]

flag_check:
push {r0-r2}
ldr r0, flag_number
ldr r2, flag_routine
push {r1-r3}
bl linker
pop {r1-r3}
cmp r0, #0x1
bne routine_off
pop {r0-r2}

main:
push {r3-r6}
ldr r6, slot_var
ldrb r3, [r6]
ldr r4, is_egg_party
mov r5, #0x64
mul r5, r5, r3
ldrb r4, [r4, r5]
cmp r4, #0x6
beq pokemonIsEgg
mov r2, #0x1
b update_slot

pokemonIsEgg:
mov r2, #0x0

update_slot:
add r3, #0x1
cmp r3, #0x6
bne end
mov r3, #0x0

end:
strh r3, [r6]
pop {r3-r6}

return:
push {r2}
ldr r2, return_dir
bx r2

routine_off:
pop {r0-r2}
mov r2, #0x1
and r2, r0
b return

linker:
bx r2

.align 2
flag_number:
.word 0x00000200
flag_routine:
.word 0x0806E708 +1
slot_var:
.word 0x0202703C + (0x800C * 2)
is_egg_party:
.word 0x020241F4 + 0x13
return_dir:
.word 0x08021C40 + 1

Y si tengo la rom en inglés? Mi problema es parecido, después de acabar una batalla se queda bloqueado el juego. Esto ya es desesperante, llevo 5 días intentando arreglarlo.
 

Gold

Porrero a tiempo parcial
Miembro insignia
Respuesta: Re: Respuesta: Re: Em | Otros | El Exp. All Barato

Y si tengo la rom en inglés? Mi problema es parecido, después de acabar una batalla se queda bloqueado el juego. Esto ya es desesperante, llevo 5 días intentando arreglarlo.
A mi el problema que @Versekr Dark dice no me pasaban por la rutina mal compilada, si no porque olvidé hacer los cambios de ciertos bytes. ¿Has seguido las instrucciones y escribiste los bytes necesarios en esas offsets que se indican en el tutorial?
 

Ruben12333

Profesional de WaH
Respuesta: Re: Respuesta: Re: Em | Otros | El Exp. All Barato

A mi el problema que @Versekr Dark dice no me pasaban por la rutina mal compilada, si no porque olvidé hacer los cambios de ciertos bytes. ¿Has seguido las instrucciones y escribiste los bytes necesarios en esas offsets que se indican en el tutorial?
Creo que no te entiendo lo siento. Si quieres ayudarme he subido un vídeo insertando este tutorial. Me puedes corregir desde ahí para ver que estoy haciendo mal, la verdad me vendría muy bien tu ayuda si conseguiste solventar el problema. Gracias de antemano amigo.
Aquí el vídeo(tranquilo esta pasado a cámara rápida para que sea mucho más ameno jajaja): https://www.youtube.com/watch?v=AIUoWR0vDQs&t=2s
 

Samu

Miembro insignia
Miembro insignia
Respuesta: Re: Respuesta: Re: Em | Otros | El Exp. All Barato

Creo que no te entiendo lo siento. Si quieres ayudarme he subido un vídeo insertando este tutorial. Me puedes corregir desde ahí para ver que estoy haciendo mal, la verdad me vendría muy bien tu ayuda si conseguiste solventar el problema. Gracias de antemano amigo.
Aquí el vídeo(tranquilo esta pasado a cámara rápida para que sea mucho más ameno jajaja): https://www.youtube.com/watch?v=AIUoWR0vDQs&t=2s
Es muy sencillo, los bytes que te manda cambiar el tutorial de Ancer están mal. Simplemente utiliza la versión de la rutina que hice en la segunda página de este mismo post. (Ancer copió mi rutina para emerald y cambió los offsets de la rutina como tal para fire red. Pero no modifico las ediciones en HEX, que siguen siendo las de emerald).


Por cierto, no dije nada en su día porque me la suda mucho pero.... @Ancer xD... https://whackahack.com/foro/t-57299/fr-em-exp-all este tutorial... bueno, ya estaba en este post.

Imagino que no lo has hecho a malas, pero el post que has hecho no sirve de nada, porque lo que tiene de 'novedoso', que es la rutina para firered (que ya está en este post), no funciona correctamente. Deberías haberlo probado.

En fin, ya que has creado ese post, por lo menos actualiza la rutina de fred por la mía, para que la gente no se rompa la cabeza instalando algo que no funciona.
 

Ruben12333

Profesional de WaH
Respuesta: Re: Respuesta: Re: Em | Otros | El Exp. All Barato

Es muy sencillo, los bytes que te manda cambiar el tutorial de Ancer están mal. Simplemente utiliza la versión de la rutina que hice en la segunda página de este mismo post. (Ancer copió mi rutina para emerald y cambió los offsets de la rutina como tal para fire red. Pero no modifico las ediciones en HEX, que siguen siendo las de emerald).


Por cierto, no dije nada en su día porque me la suda mucho pero.... @Ancer xD... https://whackahack.com/foro/t-57299/fr-em-exp-all este tutorial... bueno, ya estaba en este post.

Imagino que no lo has hecho a malas, pero el post que has hecho no sirve de nada, porque lo que tiene de 'novedoso', que es la rutina para firered (que ya está en este post), no funciona correctamente. Deberías haberlo probado.

En fin, ya que has creado ese post, por lo menos actualiza la rutina de fred por la mía, para que la gente no se rompa la cabeza instalando algo que no funciona.
¡¡MIL MILLONES DE GRACIAS ERES UN MÁQUINA!! ¡POR FÍN JAJAJAJA!
Solo una última cosa, me da la sensación como que da menos experiencia, ¿puede ser eso cierto o es cosa mia?
 

Samu

Miembro insignia
Miembro insignia
Respuesta: Re: Respuesta: Re: Em | Otros | El Exp. All Barato

¡¡MIL MILLONES DE GRACIAS ERES UN MÁQUINA!! ¡POR FÍN JAJAJAJA!
Solo una última cosa, me da la sensación como que da menos experiencia, ¿puede ser eso cierto o es cosa mia?
Aparentemente es cierto según me dijo Ruki/Gold, pero yo no lo he comprobado personalmente >.< (este sistema no me gusta y no lo uso :p).
 

Lunos

Enfrentando a La Organización
Miembro insignia
Re: Respuesta: Re: Respuesta: Re: Em | Otros | El Exp. All Barato

Solo una última cosa, me da la sensación como que da menos experiencia, ¿puede ser eso cierto o es cosa mia?
Aparentemente es cierto según me dijo Ruki/Gold, pero yo no lo he comprobado personalmente >.< (este sistema no me gusta y no lo uso :p).
Yep, Ruki está en lo correcto. Esta implementación del Exp. All ciertamente reduce la experiencia obtenida a la mitad permanentemente.
Estaria bien que no lo hiciese si el Exp. All está apagado, pero eh, algunos quizá lo vean como una forma de ponerle las cosas mas dificiles al jugador.
 

Jolt

Pokémon Omega Red
Re: Respuesta: Re: Respuesta: Re: Em | Otros | El Exp. All Barato



Yep, Ruki está en lo correcto. Esta implementación del Exp. All ciertamente reduce la experiencia obtenida a la mitad permanentemente.
Estaria bien que no lo hiciese si el Exp. All está apagado, pero eh, algunos quizá lo vean como una forma de ponerle las cosas mas dificiles al jugador.
En el offset 0x21C3A se puede modificar la cantidad de experiencia ganada. Cambiar 02 21 por 01 21 para que la cantidad vuelva a la normalidad.
También pueden usar una rutina que creó Akame para modificar la experiencia ganada usando una flag. BluRose la ha mejorado para que funcione con 2 variables. Así pueden modificar la cantidad de experiencia ganada.

Aquí está el post: https://whackahack.com/foro/threads/fr-modificar-la-experiencia-ganada-usando-2-vars-de-script.64617/
 
Última edición por un moderador:

MrJordaaany

Pequeño saltamontes
Hi @Samu , sorry to bump an old thread. Spanish is not my first language, so hopefully Google translate does a good job.

I've been using your routine for exp share all in Emerald. It works for the most part however there are some bugs when you disable the routine with a flag.

With the routine off, in trainer battles only the Pokemon in your first slot earns exp points in the battle, no matter how many other pokemon participate in the battle.

For example, if a npc trainer you fight has 4 pokemon, only the first one you fight will work properly. Any pokemon you switch to during the battle with the first pokemon will receive exp. After that, for the remaining 3 pokemon you battle, no pokemon in your party will receive exp EXCEPT the pokemon in your first slot (if you switch back to them). This does not happen with wild battles (probably because there is only 1 pokemon you fight).

Another bug when the routine is set to off is outside of battle some hold items also seem to pass on exp. If a pokemon has a hold item like Never-Melt Ice, the pokemon in the slot below will receive exp from battle as though the routine is on.

I've tested this alot and it remains consistent. I was wondering if you ever had these bugs reported? Or if you can replicate? I know its been many years at this point, but it would be great if anyone could confirm.


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


Hola @Samu, lamento reactivar un hilo antiguo. El español no es mi lengua materna, así que espero que el traductor de Google haga un buen trabajo.

He estado usando tu rutina para compartir experiencia en Emerald. Funciona en su mayor parte, sin embargo, hay algunos errores cuando deshabilitas la rutina con una bandera.

Con la rutina desactivada, en las batallas de entrenadores solo el Pokémon en tu primer espacio gana puntos de experiencia en la batalla, sin importar cuántos otros Pokémon participen en la batalla.

Por ejemplo, si un entrenador NPC con el que luchas tiene 4 Pokémon, solo el primero con el que luchas funcionará correctamente. Cualquier Pokémon al que cambies durante la batalla con el primer Pokémon recibirá experiencia. Después de eso, para los 3 Pokémon restantes con los que luchas, ningún Pokémon en tu grupo recibirá experiencia EXCEPTO el Pokémon en tu primer espacio (si cambias de nuevo a ellos). Esto no sucede con las batallas salvajes (probablemente porque solo hay 1 Pokémon con el que luchas).

Otro error que se produce cuando la rutina está desactivada es que, fuera de la batalla, algunos objetos de retención también parecen pasar experiencia. Si un Pokémon tiene un objeto de retención como el Hielo que nunca se derrite, el Pokémon que se encuentre en la ranura inferior recibirá experiencia de la batalla como si la rutina estuviera activada.

He probado esto muchas veces y sigue siendo constante. Me preguntaba si alguna vez se les informó sobre estos errores o si se pueden replicar. Sé que han pasado muchos años, pero sería genial si alguien pudiera confirmarlo.
 

MrJordaaany

Pequeño saltamontes
After some more testing, the issue only happens on single battles. Double battles are fine, and exp is given for other participating pokemon.

Después de realizar más pruebas, el problema solo ocurre en batallas individuales. Las batallas dobles están bien y se otorga experiencia a los demás Pokémon que participan.
 
Arriba