On Fri, 14 Jul 2000, Albert Beevendorp wrote:

> Best advice to stick within the space Konami put the japanese texts in
> SD-Snatcher translated method (which has cut out many aspects just to get
> the text correctly) or (but then it would get a bit too far for me at
> this moment) in Solid Snake translated method (AFAIK it uses a method to
> encode words used many times to one single character).

In Solid Snake I did four things to make it fit:

1. Made a compiler that calculates all the pointers. In that way, space 
saved in one message can be used for another message.

2. Compacted the messages. There were a few unused messages: messages that 
were stored, but never shown. Also, Konami didn't always choose the most 
compact storage method.

3. Used dictionary compression (this is what Albert hinted at). The 
dictionary contains the most frequently used words, those can be referenced 
with a single byte (or was it two bytes?). Anyway, you can really save 
space if you shorten the storage for "SNAKE". The compression was 
automated: the compiler automatically searched for words in the dictionary 
and inserted their code. The creation of the dictionary itself was done 
manually, however.

4. Shortened the messages. Unfortunately, this was necessary. However, very 
little text was lost, about 10% I guess. A much better ratio than acheeved 
by Oasis or even Konami themselves (MG1 English lacks a lot of text).

In my opinion, translating with a hex editor is OK for intro demos or 
action games. But in a game where text really matters, it will hurt the 
game too much. You will have to recalculate pointers. And that is not 
something you want to do by hand: too much work and too error-prone. So 
you'll need to make a simple compiler.

The compiler approach isn't as hard as it may sound. Sure, you'll need some 
basic knowledge about compilers, but it's a simple compiler. And once you 
have it running, you'll be very glad you can use that instead of a hex 
editor. It's like the difference between coding machine language by 
entering opcodes in a hex editor and using an assembler...

By the way, if anyone is going to attempt Shalom text replacement, I'm 
willing to give some advice, help out in some hard parts, send the sources 
for a few utils. But I have a lot of other MSX projects planned, so I don't 
want to do the actual text replacement.

Bye,
                Maarten


****
MSX Mailinglist. To unsubscribe, send an email to [EMAIL PROTECTED]
and put "unsubscribe msx [EMAIL PROTECTED]" (without the quotes) in
the body (not the subject) of the message.
Problems? contact [EMAIL PROTECTED]
More information on MSX can be found in the following places:
 The MSX faq: http://www.faq.msxnet.org/
 The MSX newsgroup: comp.sys.msx
 The MSX IRC channel: #MSX on Undernet
****

Reply via email to