[SM][TEXT] Translate "SPACE COLONY" doesn't work as it should, help please!

Started by messiahgov, October 08, 2013, 07:04:29 PM

Previous topic - Next topic

messiahgov

Hello everyone, I played some very nice hacks from here and decided to just translate the game to German, because the official "German" version is more English than anything else. I'm not an ASM, math etc. pro, but I know Hex editing enough to edit text with tables and such stuff. From time to time I try to work on my Final Fantasy Tactics translation, just to say. But some 3rd party tools (like SMILE for SM) helped me with DTE etc.

Anyway, just with TinyHexer, Tile Layer Pro, SMILE JX (for some text and to export & import .gfx files) and later some very helpful docs. Especially DCs Map and Equipment Screen Editing Guide, Jathys Text Format (btw, i don't get it with those "2-tile high characters", can't find "SAMUS DATA", "DATA CLEAR MODE" etc.) and for my problem RaccoonSam Tile Maps.

As the title states, I want to rewrite "SPACE COLONY". I successfully translated "1994" to "2013" (comes with "NINTENDO" and, "PRESENTS") as an example (but it caused me quite a headache, because there is some centred scrolling thing with it). Plus the whole in-game menu, all "you get the item" messages etc.

The text "SPACE COLONY" doesn't have any scrolling and should be easier, it just add letters to the right of the previous, like "S", then "SP", then "SPA" and so on. The "S" stay at the same position.

I want to change "SPACE COLONY" which gets constructed with "SPACEOLNY" [9 letters/each 8x8 tile] (Special GFX: Colony_4bpp_B510A.gfx)
to "RAUMSTATION" which gets constructed with "RAUMSTION" [luckily also 9 letters^^].

I changed the graphics to (this is just a segment and I wrote the language on the left for this post):



With RaccoonSams guide it was piece of cake to find the hex values! And here how it works:

[spoiler]
QuoteS (starts at 0x0612AA)
01 00
D0 01 FC ED 31

SP
02 00
D8 01 FC EE 31
D0 01 FC ED 31

SPA
03 00
E0 01 FC EF 31
D8 01 FC EE 31
D0 01 FC ED 31

SPAC
04 00
E8 01 FC F7 31
E0 01 FC EF 31
D8 01 FC EE 31
D0 01 FC ED 31

SPACE
05 00
F0 01 FC F8 31
E8 01 FC F7 31
E0 01 FC EF 31
D8 01 FC EE 31
D0 01 FC ED 31

SPACE C
06 00
00 00 FC F7 31
F0 01 FC F8 31
E8 01 FC F7 31
E0 01 FC EF 31
D8 01 FC EE 31
D0 01 FC ED 31

SPACE CO
07 00
08 00 FC F9 31
00 00 FC F7 31
F0 01 FC F8 31
E8 01 FC F7 31
E0 01 FC EF 31
D8 01 FC EE 31
D0 01 FC ED 31

SPACE COL
08 00
10 00 FC FA 31
08 00 FC F9 31
00 00 FC F7 31
F0 01 FC F8 31
E8 01 FC F7 31
E0 01 FC EF 31
D8 01 FC EE 31
D0 01 FC ED 31

SPACE COLO
09 00
18 00 FC F9 31
10 00 FC FA 31
08 00 FC F9 31
00 00 FC F7 31
F0 01 FC F8 31
E8 01 FC F7 31
E0 01 FC EF 31
D8 01 FC EE 31
D0 01 FC ED 31

SPACE COLON
0A 00
20 00 FC FB 31
18 00 FC F9 31
10 00 FC FA 31
08 00 FC F9 31
00 00 FC F7 31
F0 01 FC F8 31
E8 01 FC F7 31
E0 01 FC EF 31
D8 01 FC EE 31
D0 01 FC ED 31

SPACE COLONY (is actually before the other entries at 0x06121F)
0B 00
28 00 FC B9 31
20 00 FC FB 31
18 00 FC F9 31
10 00 FC FA 31
08 00 FC F9 31
00 00 FC F7 31
F0 01 FC F8 31
E8 01 FC F7 31
E0 01 FC EF 31
D8 01 FC EE 31
D0 01 FC ED 31
[/spoiler]

Pretty easy I thought... but no, it's not. I changed the hex values to:

[spoiler]
QuoteR (starts at 0x0612AA)
01 00
D0 01 FC ED 31

RA
02 00
D8 01 FC EE 31
D0 01 FC ED 31

RAU
03 00
E0 01 FC EF 31
D8 01 FC EE 31
D0 01 FC ED 31

RAUM
04 00
E8 01 FC F7 31
E0 01 FC EF 31
D8 01 FC EE 31
D0 01 FC ED 31

RAUMS
05 00
F0 01 FC F8 31
E8 01 FC F7 31
E0 01 FC EF 31
D8 01 FC EE 31
D0 01 FC ED 31

RAUMST
06 00
F8 01 FC F9 31
F0 01 FC F8 31
E8 01 FC F7 31
E0 01 FC EF 31
D8 01 FC EE 31
D0 01 FC ED 31

RAUMSTA
07 00
00 00 FC EE 31
F8 01 FC F9 31
F0 01 FC F8 31
E8 01 FC F7 31
E0 01 FC EF 31
D8 01 FC EE 31
D0 01 FC ED 31

RAUMSTAT
08 00
08 00 FC F9 31
00 00 FC EE 31
F8 01 FC F9 31
F0 01 FC F8 31
E8 01 FC F7 31
E0 01 FC EF 31
D8 01 FC EE 31
D0 01 FC ED 31

RAUMSTATI
09 00
10 00 FC FA 31
08 00 FC F9 31
00 00 FC EE 31
F8 01 FC F9 31
F0 01 FC F8 31
E8 01 FC F7 31
E0 01 FC EF 31
D8 01 FC EE 31
D0 01 FC ED 31

RAUMSTATIO
0A 00
18 00 FC FB 31
10 00 FC FA 31
08 00 FC F9 31
00 00 FC EE 31
F8 01 FC F9 31
F0 01 FC F8 31
E8 01 FC F7 31
E0 01 FC EF 31
D8 01 FC EE 31
D0 01 FC ED 31

RAUMSTATION (is actually before the other entries at 0x06121F)
0B 00
20 00 FC B9 31
18 00 FC FB 31
10 00 FC FA 31
08 00 FC F9 31
00 00 FC EE 31
F8 01 FC F9 31
F0 01 FC F8 31
E8 01 FC F7 31
E0 01 FC EF 31
D8 01 FC EE 31
D0 01 FC ED 31
[/spoiler]

I can demonstrate my problem with the full block, because the rest are just pieces of that. I marked the important stuff in bold for comparison.

German (my current try):
20 00 FC B9 31 N
18 00 FC FB 31 O
10 00 FC FA 31 I
08 00 FC F9 31 T
00 00 FC EE 31 A
F8 01 FC F9 31 T
F0 01 FC F8 31 S
E8 01 FC F7 31 M
E0 01 FC EF 31 U
D8 01 FC EE 31 A
D0 01 FC ED 31 R

English:
28 00 FC B9 31 Y
20 00 FC FB 31 N
18 00 FC F9 31 O
10 00 FC FA 31 L
08 00 FC F9 31 O
00 00 FC F7 31 C (I think here is the "space character" & "C" - because here the game skip "F8 01", 1st 2 bytes)
F0 01 FC F8 31 E
E8 01 FC F7 31 C
E0 01 FC EF 31 A
D8 01 FC EE 31 P
D0 01 FC ED 31 S

same with "PLANET ZEBES" (but I don't need to translate that, in German it's the same)

[spoiler]

28 00 F8 9E 00 S
20 00 F8 9A 00 E
18 00 F8 9D 00 B
10 00 F8 9A 00 E
08 00 F8 9C 00 Z ("space character" + "Z" again and it skip "00 00", 1st 2 bytes)
F8 01 F8 9B 00 T
F0 01 F8 9A 00 E
E8 01 F8 99 00 N
E0 01 F8 98 00 A
D8 01 F8 97 00 L
D0 01 F8 8F 00 P[/spoiler]

I assume that the 1st 2 bytes in each row define the position, while the 4th byte define the tile itself (goes 1:1 true with the GFX files, it's simple sum up hex code). The 3th and 5th byte in each row remain at FC and 31, they don't seem to be important for my problem.

So I edited the tiles with the German letters and it should be very easy to translate, because even the count of letters in use are the same. Just this 1 tile space between SPACE and COLONY could be a problem, I thought.

Some kind of table I made for myself:

Letter pos.: 1  2  3  4  5  6  7  8  9  10 11 12
Hex code: D0 D8 E0 E8 F0 F8 00 08 10 18 20 28

German letters:
R=ED A=EE U=EF M=F7 S=F8 T=F9 A=EE T=F9 I=FA O=FB N=B9

English letters:
S=ED P=EE A=EF C=F7 E=F8 C=F7 O=F9 L=FA O=F9 N=FB Y=B9

I used TinyHexer (which always worked for me ^^) to paste in my new code (that should be right) and to come to an end, my problem is, equal what I try, the result is always



"RAUMS MTITON"
or with the untouched original JU rom (no GFX editing) it stays at
"SPACE COLONY".

You see, as if I haven't hex edited anything. I tried several other things with the code, but no change. The space character is still there and all letters are still sorted 1:1 along the old English positions. I just export the GFX (SMILE JX), edit it (Tile Layer Pro), import it and close SMILE JX, open the SMILE'ed rom in TinyHexer, replace the hex code to insert my German word and save, start the game and ... somehow not a single change is visible at all, only my GFX edit works so far. xD

Could anybody experienced enough help me out here? After hours of trying I'm getting a bit depressed (all because of one word!!) and would appreciate any helpful advice on my problem! I'm at the right address, I find exactly 1:1 the right code (according the RaccoonSam's Tile Maps guide) but it doesn't seem to alter the text in any way.

messiahgov

So no one has any clue about my translating problem? I worked on some other text in the meanwhile, but I'm a bit stuck there too (especially the deeper menus like "Option Mode" and "Special Setting Mode", maybe I post a new thread for that later), because the coding gets a bit different with those 2 line text incl. buttons etc.

A tip in the right direction or any hint or any guesswork, what could be wrong with my "SPACE COLONY to RAUMSTATION" problem, would be very helpful.

begrimed

I haven't edited the SPACE COLONY text except to change its colors awhile back, so I can't really help you myself, except to say that you should come to the IRC channel and ask in there until somebody helps you out. Just stick around there and ask periodically until you get it fixed up.

P.JBoy

Definitely come onto the IRC channel at some point, I reckon I can go through this with you
...