Romxhacking Romxhacking
- Nasío pa'jakear -
 
 F.A.Q.F.A.Q.   BuscarBuscar   Lista de MiembrosLista de Miembros   Grupos de UsuariosGrupos de Usuarios   RegístreseRegístrese 
 PerfilPerfil   Identifíquese para revisar sus mensajesIdentifíquese para revisar sus mensajes   ConectarseConectarse 


Menú principal
Portal
Foros
F.A.Q.
Buscar
Lista de miembros
Grupos de usuarios
Perfil

Usuario
Nombre de Usuario:

Contraseña:

 Recordarme



He olvidado mi contraseña

¿Aún no tiene su cuenta?
Puede registrarse Aquí, es GRATIS.


Anuncio del administrador
No pretendemos solucionar todos los problemas ni ser referencia de nada, simplemente nos reunimos aquí para charlar de nuestras cosas.
NO SE RESPONDERÁ A NADA POR PRIVADO, QUE EL FORO ESTÁ PARA ALGO

Algo para este "formato"?

 
Publicar Nuevo Tema   Responder al Tema    Romxhacking -> Dudas y Preguntas
Ver tema anterior :: Ver siguiente tema  
Autor Mensaje
cralso



Sexo: Sexo:Hombre
Registrado: 19 Aug 2013
Edad: 26
Mensajes: 86
Estado: Offline
MensajePublicado: Mon Aug 19, 2013 5:04 pm    Título del mensaje: Algo para este "formato"? Responder citando

Hola, pues me pregunto si existe algun programa para descompilar/trabajar un "formato" que encuentro desde hace tiempo en muchos juegos.

Es simple pero termina resultando una gran molestia traducir con eso de por medio al final.

Así va la cosa:
Por ejemplo en Age of Wonders y una traducción algo mas desente queda así:
"16 Queda(n) %s turno(s) "
Esta claro que el "16" dice en hex que son 22 caracteres, pero es una pesadilla traducir tanto texto de esta forma.

ojo, no es el unico juego que usa esto, en su mayoria suelen ser juegos para telefonos (.jar)

por ejemplo esto es en Resident Evil Genesis:
"08 New Game"
este ya tiene una traducción, pero me gustaria hacer una por mi cuenta, ademas de que no funciona el juego desde sierto punto, pero ya es otro tema.

en fin, hay algun programa que se encarge de esa parte de "cantidad de caracteres"?
quisas algo que decompile los textos en varias lineas junto con su valor pero en decimal.
Volver arriba
Ver perfil del usuario Enviar mensaje privado  
CUE
Administrador
Administrador


Sexo: Sexo:Hombre
Registrado: 24 Jan 2011
Mensajes: 5435
Estado: Offline
MensajePublicado: Mon Aug 19, 2013 5:54 pm    Título del mensaje: Responder citando

Eso depende del fichero. Si las líneas de textos necesitan punteros es peor que de costumbre porque hay que recalcular los punteros además de las longitudes. Si no hay punteros, no veo el problema, se puede hacer a mano. Se pone siempre un carácter específico, por ejemplo, un '#' en lugar de la longitud y después se traduce todo. Cuando se haya acabado es cuestión de armarse de paciencia e ir sustituyendo los '#' por el valor real de la longitud de cada mensaje. Lo mejor es usar un carácter no usado que se vea a simple vista, para evitar confusiones.

De todas formas, lo mejor es siempre ver uno de esos ficheros. Así se ve si tiene punteros, si usa caracteres separadores entre mensajes, si hay que alinear cada mensaje a 4 bytes, ...
Volver arriba
Ver perfil del usuario Enviar mensaje privado  
cralso



Sexo: Sexo:Hombre
Registrado: 19 Aug 2013
Edad: 26
Mensajes: 86
Estado: Offline
MensajePublicado: Tue Aug 20, 2013 2:38 am    Título del mensaje: Responder citando

Cita:
Eso depende del fichero. Si las líneas de textos necesitan punteros es peor que de costumbre porque hay que recalcular los punteros además de las longitudes. Si no hay punteros, no veo el problema, se puede hacer a mano.

No se mucho sobre eso de los punteros, aunque me parece que vi algunas partes de texto donde al añadir mas texto se "expandia de mas" y causa un desorden/error aunque coloco la longitud de caracteres, quisas tenga algo que ver.

Cita:
Se pone siempre un carácter específico, por ejemplo, un '#' en lugar de la longitud y después se traduce todo. Cuando se haya acabado es cuestión de armarse de paciencia e ir sustituyendo los '#' por el valor real de la longitud de cada mensaje. Lo mejor es usar un carácter no usado que se vea a simple vista, para evitar confusiones.

Buena idea, no se me ocurrio eso Razz

Cita:
De todas formas, lo mejor es siempre ver uno de esos ficheros. Así se ve si tiene punteros, si usa caracteres separadores entre mensajes, si hay que alinear cada mensaje a 4 bytes, ...

Dejo dos archivos que contienen textos del juego RE Genesis:
http://temp-host.com/download.php?file=op29wk

Pueden buscarse estos textos:
events.bin: What...
m.class: New Game

Supongo no existe ningun programa para esto.
Volver arriba
Ver perfil del usuario Enviar mensaje privado  
CUE
Administrador
Administrador


Sexo: Sexo:Hombre
Registrado: 24 Jan 2011
Mensajes: 5435
Estado: Offline
MensajePublicado: Tue Aug 20, 2013 7:53 am    Título del mensaje: Responder citando

En event.bin los textos se separan con un simple 00. Puede que lleve punteros, pero en ese caso estarán en otro fichero. Si no los usa se pueden cambiar los 00 por 0D0A con algún editor hexadecimal. Se graba el fichero y se abre con cualquier editor de texto para cambiar los textos. Una vez cambiado todo se graba y se vuelve a abrir con el editor hexadecimal, cambiando ahora los 0D0A por 00. En principio parece que no hay límite de caracteres a meter.

El m.class es un fichero java compilado. Los textos van precedidos de 3 bytes, que son un 01 que indica que comienza un texto y dos bytes que indican la longitud del texto, con el byte más significativo primero. No conozco el formato que se usa en java, así que no sé si se usan punteros o lee los textos secuencialmente, que sería la razón para guardar la longitud de cada uno, pero parece que todos los textos, incluso mensajes internos, se almacenan igual. La zona de textos va de 0x15F4 a 0x3F5E, puede que 0x3F5F si el 00 que hay al final es un ajuste para rellenar hasta un múltiplo de 16, y todos los textos están ordenados alfabéticamente, aunque no creo que eso sea necesario para traducir.

Lo primero sería cambiar dos textos seguidos para ver si se usan punteros o no. Hay un "GAME LOADED" seguido de un "GAME SAVED" que puede servir. El primero ocupa 00-0B bytes y el segundo 00-0A, 11+10=21 bytes entre los dos. Para probar ponemos 8 bytes con el texto "ABCDEFGH" seguidos de 13 bytes con "abcdefghijklm", recordando poner bien la longitud y el 01 inicial. Ahora hay que probar el juego con ese fichero para ver si los dos textos salen bien, lo que indicaría que no se usan punteros, en cuyo caso se podría hacer algo en medio minuto para sacar los textos (meterlos es otra cosa).
Volver arriba
Ver perfil del usuario Enviar mensaje privado  
Mostrar mensajes anteriores:   
Publicar Nuevo Tema   Responder al Tema    Romxhacking -> Dudas y Preguntas Todas las horas están en GMT + 1 Hora
Página 1 de 1

 
Saltar a:  
No puede crear mensajes
No puede responder temas
No puede editar sus mensajes
No puede borrar sus mensajes
No puede votar en encuestas

Temas Relacionados
 Temas   Respuestas   Autor   Lecturas   Último Mensaje 
No hay mensajes nuevos Se puede editar algo del Legend of heroes trails in the sky? 1 gadesx 1628 Thu Apr 16, 2015 8:08 pm
CUE Ver último mensaje
No hay mensajes nuevos goodsets y todo eso ¿qué traducciones listan? 14 gadesx 5223 Thu Aug 21, 2014 3:58 pm
CUE Ver último mensaje
No hay mensajes nuevos ¿Este programa puede servir para algo? 2 gadesx 2075 Sat Sep 21, 2013 8:22 am
CUE Ver último mensaje
No hay mensajes nuevos Light Crusader o algo 10 gadesx 4171 Sun Aug 04, 2013 1:07 pm
Auron Ver último mensaje
No hay mensajes nuevos Intentando aprender algo de romhack 13 tchusami 5542 Sat Nov 24, 2012 11:05 am
CUE Ver último mensaje
 


Crear foro gratis - Powered by phpBB © 2001, 2005 phpBB Group
subRebel style by ktauber