#15 Entre martes y miércoles la tendrás

. Y a ver si con ello se anima más gente ^^.
EDIT: Pues ya está ^^.
SUPERGUÍA PARA TRADUCIR:
Vamos a ver. Recomiendo seguir esta guía con algunos textos, puesto que se entenderá mejor, pero al no tenerlos vosotros intentad coger las ideas básicas. Empecemos: doble clic en el programa ==> Ctrl + O ==> Archivo con textos. Nos aparecerá una ventana parecida a ésta:
Vamos a testearlo un poco:
1.- Situaos en la primera columna y mirad que terminen en "0". Si no terminan en "0" agrandad o encoged la ventana hasta que lo haga. Esto será muy útil cuando cambiemos códigos.
2.- ¿Veis que en la tercera columna está parpadeando el primer byte (espacio)? Eso quiere decir que, como en Word, ahora mismo el cursor está ahí, es decir, si tecleas algo, se
sobrescribirá allí. Sin hacer nada aún, podéis comprobar que en la segunda columna (la de columnitas rojas y azules) también está marcado el primer byte (espacio) pero con la diferencia que no parpadea y que engloba a los dos espacios de la columnita. Es la correspondencia en hexadecimal de cualquier número/letra/símbolo de la tercera columna. Si presionas la tecla "Tabulador" verás que en la tercera columna, el cursor deja de parpadear. Esto es porque has saltado de columna y ahora estás en la segunda. Vamos, que ahora, la que parpadea es el primer número/letra de la primera columnita. Todo lo que modificáis en alguna de las dos columnas, se modificará automáticamente en la otra con su correspondiente valor (hexadecimal en caso de modificar la tercera columna o "normal" en caso de modificar la segunda).
QUEDA PERMANENTEMENTE PROHIBIDO PULSAR LA TECLA "SUPR", ya que lo que haríais sería suprimir un byte. A ver, que podéis hacerlo para modificar algo, pero luego acordaos de meter un byte en otro sitio para mantener el mismo tamaño del archivo. De todas formas, el programa ya os avisa al guardar (Ctrl + S) cuando el archivo ha aumentado o reducido su tamaño. Si ha aumentado, quitadle los bytes que os señale; si se ha reducido, añadidle los bytes necesarios.
Como podemos ver en la tercera columna, hay unos cuantos códigos al principio del archivo. Al primero de ellos (el código "00 00 FE" que le falta un "00" al principio porque se lo he cortado para que encaje todo y podamos trabajar mejor) no vamos a hacerle caso porque apunta a un lugar dentro de los códigos, no a los textos, pero nos servirá para contar hexadecimalmente. Si nos fijamos en la columna de la izquierda:
Nos situamos en la línea "00 00 01 00". Esta línea nos dice que al primer byte (espacio) de la fila le corresponde el número "00 00 01 00" de la numeración hexadecimal. Éste número está más allá del código "00 00 00 FE", por lo tanto tendremos que contar hexadecimalmente hacia atrás. ¿Cómo? Pues si el primer byte (espacio) de la fila es el número "00 00 01 00" quiere decir que el último de la fila anterior es el "00 00 00 FF". ¡No he hecho magia! xD Simplemente le he restado "1" al número hexadecimal pero, como ya sabéis, los hexadecimales cuentan desde el 0 hasta el 9, luego "A", "B", "C", "

", "E" y "F" y después vuelve a empezar con el "0". Si cuesta verlo de esta manera, podéis ver que si sumamos "1" al número "00 00 00 FF" vemos que la última "F" tiene que cambiar a "0", por lo tanto, me llevo "una" (como si hubiésemos sumado 9 + 1 y nos daría 0, pero como nos llevamos una, se la añadimos a la decena y termina dándonos "10" ). Esta "una" se le suma a la siguiente "F", que nos volverá a dar "0" y nos llevaremos otra. Esta "otra" se la sumamos al siguiente "0" y nos da "1". Por lo tanto, si restamos otro "1" de "00 00 00 FF" nos dará "00 00 00 FE" que claramente apunta a un código. Como no nos interesa lo dejamos tal cual y seguimos.
Estos textos que utilizo como ejemplo son las "acciones del personaje". Es decir: correr, trepar, lanzar, subir, sentarse, abrir, etc. Fijémonos en la primera acción:
Trepar
Como podéis ver, a la acción "Trepar" le corresponde el código "00 00 03 FC". Esto quiere decir que dicho código (que es el de inicio de la acción) apunta a la "T" de "Trepar". Podemos contarlo hexadecimalmente de la misma manera que antes y vemos que es así. Traducimos "Trepar" por "Enfilar-se". Lo hacemos situándonos en la tercera columna (donde están los textos), ponemos el cursor en la "T" y tecleamos la "E". Si lo hacéis, podréis ver que (tal y como comenté antes) la transcripción hexadecimal también ha cambiado. Esto es normal: la letra "T" tiene una correspondencia hexadecimal que es el código "54". Si contamos hexadecimalmente atrás hasta la letra "E" vemos que coincide con la que se nos ha puesto, que es el "42". Una vez tecleada la "E", el cursor se nos situará en el siguiente byte. Este byte es un "00" pero no le hagáis ningún caso. En hexadecimal, todos los números/símbolos/letras tienen un byte para él y otro byte como "acompañante". Simplemente, pulsad la flecha derecha del teclado y os situaréis en la "r". La cambiamos por la "n" y así sucesivamente. Os habéis dado cuenta ya, ¿verdad? "Enfilar-se" es más largo que "Trepar" y cuando habéis llegado a la última "r" y la habéis substituido por la "a" os habéis topado contra un código "00 00" que marca el final de frase (o acción en este caso).
Lo que tenéis que hacer es muy fácil: IGNORADLO. Con la modificación de los códigos de arriba, lo que hacemos es adaptar los textos como un acordeón: a veces necesitaremos más espacio y lo alargaremos; otras veces necesitaremos menos espacio y lo acortaremos. Así que, sin hacer nada nuevo, substituimos el "00" correspondiente por la "r", luego viene "-", "s" y finalmente la "e". Ahora ya hemos terminado de escribir la acción, por lo tanto, lo siguiente será poner un código "00" tal y como lo estaba antes de traducirlo. Para hacerlo, basta con pulsar la tecla "Tabulador" para situarnos en la segunda columna y teclear "00" allí donde corresponda.
Luego viene la acción "Saltar" que no requiere traducción y la escribimos tal cual, después "descolgarse" que lo traducimos por "Penjar-se", "Soltarse" por "

eixar-se" y así sucesivamente. Una vez hayamos traducido todas las órdenes tendremos que hacer coincidir los códigos del principio del texto con los inicios de las acciones. Como "Trepar" y "Enfilarse" empiezan en el mismo lugar, no hace falta modificar nada. Vamos a la acción "Saltar".
Como vemos, antes de traducirlo, la acción "Saltar" empezaba en el lugar "00 00 04 0A" pero, debido a que "Enfilar-se" ha ocupado más espacio que el que ocupaba "Trepar" se ha desplazado hacia delante. Fijémonos en la primera columna. Ahí vemos que la "f" de "Enfilar-se" cae en la posición hexadecimal "00 00 04 00". Vamos a contar:
f ==> 00 00 04 00
i ==> 00 00 04 02
l ==> 00 00 04 04
a ==> 00 00 04 06
r ==> 00 00 04 08
- ==> 00 00 04 0A
s ==> 00 00 04 0C
e ==> 00 00 04 0E
(código "00" de fin de frase) ==> 00 00 04 10
S ==> 00 00 04 12
Es decir, la "S" de la acción "Saltar" empieza ahora en el lugar hexadecimal "00 00 04 12", por lo tanto, lo substituimos por este valor.
Y así con todos. A veces me he topado con casos que los códigos apuntan a un "00". No tengo ni idea de por qué lo apuntan hacia allí, pero lo que sé es que el siguiente código apuntaba en un lugar correcto, que era ni más ni menos que dos bytes más adelante. ¿Qué quiero decir con esto? Mirad el archivo original antes de modificar los códigos para ver donde apunta cada uno de ellos cuando tengáis que modificarlo. De esta manera no os equivocaréis y andaréis sobre seguro.
Con este ejemplo no hemos visto códigos raros, así que os mostraré otro. Vamos a empezar con el primer texto de Altárea:
Nos situamos en la "A" de "Altárea". En catalán no existe el acento cerrado sobre la "a" así que lo modificamos por una "à".
También me he permitido el lujo de modificarle la "e" y substituirla por una "i" (de "línea" a "línia" es el mismo ejemplo), aunque si queréis podemos traducirlo por Skyloft. Ningún problema ^^. Después de la "a" hay un código "00" que nos indica final de frase, es decir, en el lugar donde se vea “Altària” no se verá nada más. Si este código no estuviese aquí, el nombre de “Altària” sería mostrado como todo el texto hasta un nuevo código “00”. Luego viene un código nuevo: "0E 00 01 00 09 00 04 00 00". Estos códigos los dejamos tal cual, porque ahora tocan estos códigos (fijaos que "Altària" no ha variado en cuanto al número de letras y, por tanto, podemos dejarlos ahí sin variar nada). Proseguimos con la siguiente frase. Por si no os acordáis, esta frase la dice la persona que está sentada en un banco de la gran plaza.
"Hombre," lo traducimos por "Home," luego viene un "espacio normal", vamos los que dejáis para separar palabras en el Word xD. Y atentos: de "Hombre" a "Home" se ha acortado dos "espacios" y ahora hay un código, concretamente el "0E 00 02 00 00 00 00 00". Este código corresponde al nombre del personaje. Es decir, si le hemos puesto "Link", en lugar de este código saldrá "Link"; si le hemos puesto "Hola", saldrá "Hola". No tiene misterio. Como ahora toca ponerle este código (porque en castellano lo hemos encontrado así) pues se lo ponemos. ¿Cómo? Pues pulsando la tecla "Tabulador". En la segunda columna, no se distinguen mayúsculas de minúsculas, así que si escribís "0e" os aparecerá un "0E". Luego viene un "00", "02", etc. hasta el último "00". Después del último "00" vemos que hay un "2E". El "2E" es la transcripción hexadecimal del punto "." Aquí pues, termina una oración.
Lo siguiente es un "20", con lo cual nos indica un espacio " ". Y ahora ya viene texto. Vamos a traducir un poco de él.
"Ya no queda prácticamente nada para el torneo celeste, ¿eh? Tengo unas ganas de ver a los pelícaros volar a todo trapo..."
"Ja gairebé és l'hora de començar el torneig celeste, eh? Tinc tantes ganes de veure volar els pelícars a tota velocitat..."
Vemos que entre "no" y "queda" hay un punto donde debería de haber un espacio. Miramos la posición hexadecimal de este punto y vemos que se trata del código "0A". Este código señala un fin de línea. Es decir, la frase continuará escribiéndose en la siguiente línea. También los hay en "torneo celeste" y "de ver".
PUNTO CLAVE: No sabemos si el que lo va a jugar le pondrá "Link" al personaje o tantas letras como el juego le permita. Por lo tanto, en estos casos recomiendo situar el código "0A" tan cerca del lugar donde se encuentra originariamente o, si no se puede porque coincide que estás en mitad de una palabra, antes de empezar dicha palabra. Si no lo hacemos, se verían marranadas que no gustarían de ver xD. Substituimos pues, el espacio " " que hay en "és l'hora" por un "0A".
De la misma manera substituimos los espacios de "torneig celeste" y "veure volar" por dicho código. ¿Por qué tenemos que substituir el espacio de "veure volar" y no el de "de veure" que coincidiría con el original? Fácil: Una frase larga sin un código "0A" en el momento justo hará que se vea una marranada. Tengo contado que tiene que haber como máximo 39 caracteres en cada línea. Si se supera dicho límite el juego saltará a la siguiente línea pero sin saltar: es decir, quedaría mal encuadrado y hasta saldría texto por debajo del recuadro, haciendo que no se pueda leer en algunos casos. Contando la "v" de "volar" y llegando al último punto de "velocitat..." nos salen 38 caracteres, pero si lo hacemos desde "veure" se superan y tendríamos que añadir una nueva línea. Recomiendo no añadir nuevas líneas porque luego hay casos en los que se añaden dos o tres códigos "0A" seguidos y se tendría que calcular cuántas líneas hay en cada párrafo donde tenemos que pulsar "A" para avanzar. Y es muy lioso xD.
Continuamos un poco más. Después de "trapo..." hay otro código "0A", también lo añadimos. Sigamos con la traducción:
"El año pasado Coocker ganó en el último suspiro, aún me acuerdo... ¡Menudo espectáculo! Estuvo muy emocionado, francamente."
"L'any passat en Coocker va guanyar a l'últim sospir, encara ho recordo... Quin espectacle! Va ser realment emocionant, de debò."
Continuamos siguiendo después del "0A" y nos detenemos justo antes de "Coocker". ¿Veis que Coocker está muy espaciado? Ahí hay otro código, que es el "0E 00 00 00 03 00 02 00 03". Este código es de color (concretamente el azul claro). Hemos llegado al “0E” cuando aún teníamos que poner el “espacio”. ¿Pasa algo? En absoluto. Ponemos el “espacio” y copiamos el código igual porque hemos llegado al punto en que tenemos que escribir la palabra "Coocker". Pero no toda la frase está de este color, por lo tanto, después de "Coocker" hay un código que señala el fin de color: "0E 00 00 00 03 00 02 FF FF". También lo copiamos puesto que ya hemos escrito "Coocker" y luego seguimos. Pero si seguimos veremos esto:
¿Veis que en medio del último código hay una "y" con dos puntos encima? Si lo dejáis se verá mal. Tenéis que ir hasta ahí y cambiarla por un “00”, que sería el acompañante del “03”. Es decir,
TENÉIS QUE DEJAR ESCRITOS LOS CÓDIGOS TAL CUAL LOS VEIS. Una vez hecho esto continuamos con la traducción hasta el final. Luego sólo hará falta modificar los códigos de arriba del texto tal y como se ha hecho en el anterior ejemplo en caso que sea necesario.
Y esto es todo. Cualquier código que haya se tiene que conservar en el momento que toque. Sé que puede parecer algo engorroso de hacer al leer todo esto, pero a la práctica es mucho más sencillo. En un par de minutos puedes tener una larga frase traducida correctamente y con códigos chungos. Hay veces que los códigos pueden ir uno tras otro. Por ejemplo, si al principio de alguien que habla éste crida al personaje por su nombre tendrás algo semejante a esto: “0E 00 01 00 09 00 04 00 00 00 0E 00 02 00 00 00 00 00”, que para nada hay que asustarse porque ya los conocemos ^^.
En fin, a ver si con esto consigo que la gente se anime a probar cosas nuevas ^^.