Hello! Is there a way to remove the step limit of Safari Zone? The step limit is gone starting at Gen. 4 and I can't find any tutorials how to remove them... I just want to know if that's possible... Thanks!
Here, taken from wah:
Cambiar el numero de pasos que podemos dar!
Pues esta parte exige ASM o no, dependiendo del caso!
Offsets-
Ruby:0C81D0
Firered:0A0ED8
Emerald:0FC0EC
Atencion: Esta parte es ASM!
En esos offsets deberéis ver el siguiente (en un Disassembler) en las versiones:
Ruby:
Mov r2, #0xFA
lsl r2, r2, #0x1
Firered:
Mov r2, #0x96
Lsl r2, r2, 0x2
Emerald:
Mov r2, #0xFA
lsl r2, r2, #0x1
El comando LSL es, simplificando, una multiplicación! Pero una multiplicación especial, usando una formula, y= X * 2^n. Dado eso, y=1,2,4,8,...
En los casos de Ruby Y Emerald, la rutina esta multiplicando ese 0xFA por 2^1 (= 2), que da 1F4 (500 pasos en decimal)
Entonces si quiero 300 pasos, convierto a HEX, 0x12C, y divido por 2, que da 150 pasos en decimal y 0x96 en HEX entonces iría al offset donde esta el 0xFA y sustituiría por 0x96. Así solo nos daban 300 pasos para el Safari.
Para el Firered es cuasi el mismo, solo que esa instrucción es Lsl r2, r2, #0x2.
Entonces, aplicando la formula, queda y= X * 2^2.
2^2=4
Entonces la rutina esta multiplicando los pasos por 4. Así que si fueran 300 pasos, entonces se dividía 300 por 4, convertía en HEX y sustituía en ese offset.
(Sorry it's in spanish, try google translating, if that doesn't work then I'll translate it for you)