[RH - Otros] Se bugueó el sistema de surf


Like Tree16Gracias
Tema cerrado
 
Herramientas Desplegado
  #11  
28/11/2018
Predeterminado Respuesta: Se bugueó el sistema de surf
Bueno, como comenté en el reporte que hice en los tutos de Jo7a:
Se me ocurre que el script que tiene el sistema de SURF por defecto, tenga en su estructura algunos specials 0x113 y 0x114. (Lo digo porque el mini se mueve hacia el agua tras hacer SURF).
Jo7a indicó que tras aplicar esta herramienta, se debe tener cuidado con esos specials.
Sin embargo no sé bien como encontrar el script del sistema de SURF para verificar esa idea. =P
Gracias: Иacho
  #12  
28/11/2018
Predeterminado Re: Se bugueó el sistema de surf
yo investigaría los scripts asociados a los comportamiento de tiles, a ver si encuentras algo relacionado con el SURF
Gracias: hacanoca
Libertad

PREMIOS SABROSOS


  #13  
29/11/2018
Predeterminado Respuesta: Se bugueó el sistema de surf
@hacanoca
El offset donde se encuentra el script de surf es:
Offset: 0x1A6AC8

Código:
#include stdattacks.rbh

#org @start
special 0x187
compare 0x800D 0x2
if 0x1 goto @snippet1
checkattack ATK_SURF
compare 0x800D 0x6
if 0x1 goto @snippet1
bufferpartypokemon 0x0 0x800D
setanimation 0x0 0x800D
lockall
msgbox @string1 0x5
compare 0x800D 0x0
if 0x1 goto @snippet2
msgbox @string2 0x4
doanimation 0x9
releaseall
end

#org @snippet1
end

#org @snippet2
releaseall
end

#org @string1
= The water is dyed a deep blue[.]\nWould you like to SURF?

#org @string2
= [buffer1] used SURF!
Una solución simple que se me ocurre es que tu hagas el script de surf, ya que tienes sistema de cambio de OW usa esa rutina para cambiar su apariencia, en vez del sistema original... (espero que se entienda)

Y cuando tengas el script, con ayuda de HXD cambias el pointer del script original por el tuyo:

Offset: 0x1A6AC8
En aquel offset contrarás estos bytes: C8 6A 1A 08
Simplemente los cambias por offset permutado de tu script y listo

Es una idea, en todo caso espero haber ayudado...


M.H.B.P.
Gracias: hacanoca
  #14  
29/11/2018
Predeterminado Respuesta: Se bugueó el sistema de surf
Bueno, después de buscar mucho, y de un gran apoyo por parte de @CompuMax...
Logramos dar con la solución al problema del SURF cuando aplicas la herramienta para el cambio de OW de JPAN.
Para solucionarlo requieres un editor hexadecimal, en mi caso HxD.

Luego de insertar la rutina, se debe ir al pointer 0x5F2D0 en un editor hexadecimal.
Allí, te aparecerá un puntero compilado, debes de seguirlo.
En mi caso tengo el 2DD1E5

Así que voy a esa dirección
Allí debes avanzar 15 casillas, y editar ese byte por "FF".
El byte que se debe cambiar es el que está luego de "29 18 D0"
De tal forma que quede: "29 18 D0 FF"



Y listo, esa debería ser la solución.
Otro punto, (aunque realmente no lo hice), es asegurarse de que al inicio del juego, todas las variables asociadas a la rutina de JPAN para el cambio del OW estén en 0.
(Entonces se recomienda setearlas en este valor, en algún script cercano al inicio del juego)

Muchas gracias de nuevo a CompuMax y a karatekid552 que fue quien posteó la solución.

Dicho por Navy_ Ver mensaje
@hacanoca
El offset donde se encuentra el script de surf es:
Offset: 0x1A6AC8

Código:
#include stdattacks.rbh

#org @start
special 0x187
compare 0x800D 0x2
if 0x1 goto @snippet1
checkattack ATK_SURF
compare 0x800D 0x6
if 0x1 goto @snippet1
bufferpartypokemon 0x0 0x800D
setanimation 0x0 0x800D
lockall
msgbox @string1 0x5
compare 0x800D 0x0
if 0x1 goto @snippet2
msgbox @string2 0x4
doanimation 0x9
releaseall
end

#org @snippet1
end

#org @snippet2
releaseall
end

#org @string1
= The water is dyed a deep blue[.]\nWould you like to SURF?

#org @string2
= [buffer1] used SURF!
Una solución simple que se me ocurre es que tu hagas el script de surf, ya que tienes sistema de cambio de OW usa esa rutina para cambiar su apariencia, en vez del sistema original... (espero que se entienda)

Y cuando tengas el script, con ayuda de HXD cambias el pointer del script original por el tuyo:

Offset: 0x1A6AC8
En aquel offset contrarás estos bytes: C8 6A 1A 08
Simplemente los cambias por offset permutado de tu script y listo

Es una idea, en todo caso espero haber ayudado...


M.H.B.P.
Sí, estaba intentando hacer eso también.
Y es una buena alternativa.
Aunque estaba teniendo el problema de que aún tras hacer el cambio de mini al de SURF, el juego estaba reconociéndolo como mini "terrestre" y no me dejaba moverme de un tile acuático a uno de tierra, me dejaba encerrado en el agua.



Al final me muevo a la derecha, pero el mini no sale del agua. =P

EDITO:
Gente.
Falsa calma.
Si bien el modificar ese byte si permite usar el mvto SURF, el juego se congela tras salir de un combate acuático; o tras acceder a un menú estando dentro del agua.
Si alguien sabe como solucionarlo...estaría muy agradecido.

Última edición por hacanoca; 29/11/2018 a las 14:43
  #15  
29/11/2018
Predeterminado Respuesta: Se bugueó el sistema de surf
Bueno vengo a complementar la solución que nos ha traído el compañero @hacanoca. A diferencia de lo que dice el post de karatekid552 no se deben setear todas las variables a 0x0 sino a sus valores correspondientes y no son 8 variables sino 7, es decir, en vez de hacer:
Código:
setvar 0x408F 0x0
setvar 0x4090 0x0
setvar 0x4091 0x0
setvar 0x4092 0x0
setvar 0x4093 0x0
setvar 0x4094 0x0
setvar 0x4095 0x0
setvar 0x4096 0x0
Hay que hacer lo siguiente:
Código:
setvar 0x408F 0x0
setvar 0x4090 0x1
setvar 0x4091 0x2
setvar 0x4092 0x3
setvar 0x4093 0x4
setvar 0x4094 0x5
setvar 0x4095 0x6
Donde 0x408F es la variable que seleccionamos al insertar el hack y las otras variables las 6 siguientes.

Creo que con esto ya se puede dar por solucionado (a menos que hacanoca le consiga otro bug)


Tema cerrado

Herramientas
Desplegado

Permisos para publicar mensajes
No puedes crear nuevos temas
No puedes responder mensajes
No puedes subir archivos adjuntos
No puedes editar tus mensajes

Los BB code están Activado
Los Emoticones están Activado
El código [IMG] está Activado
El Código HTML está Desactivado
Trackbacks are Activado
Pingbacks are Activado
Refbacks are Desactivado



Extra
Estilo clásico
La franja horaria es GMT +1. Ahora son las 15:02.