Samu
Puntuación de reacción
698

Mensajes de perfil Última actividad Publicaciones Acerca

  • Saludos! Buen día Samu!

    Veo que entiendes perfectamente todo lo que tenga que ver con el desarrollo de las rom, y quisiera un poco de tu atención sobre eso si puedes por favor!
    estoy escribiendo un código para traducir una rom de forma "semi-automática" y he escrito la lógica en base a los punteros pero he tenido bastantes errores.

    me di cuenta que muchos de los punteros, aunque apunten hacia un texto, no lo hacen realmente. dentro de la búsqueda encontré que la mayoría de punteros hacia los textos empiezan con los byte [0F 00 + Puntero], y otros punteros usan también los byte [67 + Puntero + 66], entonces hice que solo introdujera los nuevos punteros que comenzaran con esos Byte, entonces probé la Rom y todo esta Perfecto (hasta donde pude probar claro), "casi" todo los diálogos están traducidos pero no "todos".

    lo que quería saber es ¿como puedo saber cuando un puntero hacia un texto es real o no?, si esta a tu disposición, por favor!
    Samu
    Samu
    Código:
    message pointer
    waitmessage
    Hay muchos textos que se muestran con msgbox que corresponde a una llamada callstd(0x9) de tipos 2, 3, 4, 5,6 y 9 que seguiría un formato como este:
    Código:
    msgbox pointer == callstd pointer 2(o 3, 4, 5...)
    
    En binario habría quedado compilado como ''09 pointer 02'' (o 03, 04, 05...)
    También hay muchos otros textos que no se muestran haciendo uso de estos comandos, como podrían ser los textos del combate o de varios menús.
    Samu
    Samu
    Volviendo a lo que decía antes, no existe ninguna forma fiable de de determinar de forma automática si algo es un texto o no, o si se trata de un puntero a un texto o no. Perfectamente se podría dar el caso de que parte de la información de una imagen o de parte del audio del juego (incluso de las propias instrucciones) coincidiese por casualidad con lo que tu identificas como puntero a un texto.
    Es decir, una imagen podría contener los bytes '67 10 41 28 08 66', pero tu los identificarías como un puntero al texto, entonces cambiarías este falso puntero provocando una corrupción de la imagen.

    Lo mismo podría ocurrir con el audio (pudiendo llegar a colgar el juego al reproducir la pista/pistas afectadas) o peor aún a una sección del código, la cual podría quedar totalmente inservible y casi seguro colgaría el juego en su ejecución.
    Samu
    Samu
    No te digo que no sigas con la herramienta, pero ten en cuenta que existe la posibilidad de que aparezcan errores inesperados.

    Sobre como detectar lo textos que no están traducidos... tendrías que ir mirando las funciones que se llaman para imprimir el texto en esos casos usando decomp.

    Otra opción sería buscar el byte que se usa como caracter "fin de texto", pero me temo que hay muchas ocurrencias de ese byte en el rom que no hacen referencia a texto (seguramente la mayoría).

    @PkPower Me cago en tu puta limitación de 1000 caracteres en los tablones.
    • Sad
    Reacciones : PkPower
    Samu
    Samu
    Me aparece correctamente el vídeo en el post, supongo que lo habrás reportado y lo han arreglado.

    En cualquier caso, si me lo puedes confirmar estaría perfecto :3
    Cheve
    Cheve
    Se! Lo habrán arreglado xD
    Hey hola! No se si me conoces... Mi nombre es Rata.
    He visto algo relacionado al descomp, de que trata, puedes inducirme un poco en el tema?
    Gracias, saludos.
    Samu
    Samu
    Diría que no nos conocemos, pero sé que eres un antiguo usuario del foro que se dedicaba algo más al tema gráfico. Si no recuerdo mal, algunos de los gráficos del HA eran tuyos.

    Decompilación o Decomp consiste fundamentalmente en editar el código de los proyectos de pret, que es un código fuente similar al original de GF y que al compilar da como resultado un ROM (emerald, ruby, fred).

    La ventaja principal es que trabajas con código, y puedes editar todo de forma mucho más limpia y más sencilla que en RH tradicional. Hasta dentro de 10 días no tengo mucho tiempo, pero en el subforo de tutoriales de decompilación debería haber varios temas introductorios, y dentro del apartado correspondiente de Discord podrás encontrar ayuda.
    Rata
    Rata
    Gracias por responder con rapidez! Veré de que trata todo el tema. Para echarle un vistazo.
    Saludos.
    Samu
    Samu
    Cierto es, pero técnicamente eso es dissasembly, como bien has dicho. Todo el código está en ensamblador y es bastante petardo.

    El Prism por ejemplo, que puse como hack de gbc técnicamente está hecho en dissasembly, porque yo he compilado el juego desde el fuente que hay por ahí público. Lo malo es que cuando hice ese post pensaba que prism estaba hecho en binario xDD.

    Cuando hablo de decompilación, me refiero concretamente a los proyectos de tercera generación de pret. Aunque el término podría englobar a cualquier juego que esté en un lenguaje compilable, supongo.
    samu voy al grano quiero que mi player lance bolas de fuego como mario, el tema es que para hacer un movesprite necesito que el OW esté en la OAM , si estoy lejos la bola de fuego no se moverá hasta mi.

    Por lo que he pensado en crear un objeto que se muestre, encontré le tuto de compu, pero no dice nada de como animar ese objeto ni menos como moverlo!
    Ahí andamos, peleandome con todos por que son muy jurásicos..
    A ver si llego al año y me cambio de proyecto jajaj
    Tio, cada vez te admiro más.
    Dejate de decomp, y ponte a desarrollar juegos indies, que tienes futuro!!
    Jajaja
    Si, me di cuenta de que él sombreado es un poco molesto
    Luego edito y lo quito
    Y pues la idea fue hacer algo facil de instalar y usar pero si, quizás pocos o nadie lo use. En lo que recupere mi pc lo porto a las otras bases
    ;)
    Ohhh niceeee

    Me gusta lo que leo XD Ahora me interesa ver tu proyecto owo
    Jeje, el nombre es en realidad uno de los apodos que recibe el termino "Callback Hell", que se empezó a emplear con Javascript producto de la estructura engorrosa que se formaba al pasar una función callback a otra función, y luego dento del callback pasar otra función, y en está otra, otro callback a otra, y así sucesivamente.

    El apodo "Piramide de la Muerte" se creo para englobar no solo a los callback hells sino a toda estructura que creciese de esa forma piramidal de forma mastodontica, estuviese formada por callback, ifs, bucles o lo que sea.

    Wups, no conocía esa historia de la Pirámide de Keops. a investigaré :D
    Se, el audio de la gba es de lo peor xD
    Y no estaba seguro de comentar lo de los gráficos por eso, medio que lo comentaste en la sección siguiente. Pero me parece que "facilidad para remplazar gráficos" es medio confuso, capaz que quedaría mejor "facilidad para remplazar recursos".
  • Cargando…
  • Cargando…
  • Cargando…
Arriba