Swedish translations of SCUMM games

General chat related to ScummVM, adventure gaming, and so on.

Moderator: ScummVM Team

User avatar
Praetorian
ScummVM Developer
Posts: 787
Joined: Tue May 08, 2007 8:54 am
Location: Greece
Contact:

Re: Swedish translations of SCUMM games

Post by Praetorian »

thanius wrote: Fri Jan 04, 2019 1:15 am I noticed that the death easter egg verb grid has different values, since they have no function connected to them.
I hacked together a version for my translation where I couldn't get "Stare" to fit where it's supposed to be.
I'll do more experiments using the original data and will update my reference sheet later.
Off the top of my head, the verbs also change during the Meathook/ parrot sequence. I'm only mentioning this in case you haven't checked that one yet.
User avatar
thanius
Posts: 75
Joined: Sat Jun 30, 2007 12:42 pm

Re: Swedish translations of SCUMM games

Post by thanius »

During the parrot scene the verbs are exchanged, so a simple swap of any verbs that didn't fit was easy. The death Easter egg is in a completely different file (0017) and uses some weird enumeration for the spots. 02, 04, 08, 06, 0A, 07 and so forth
User avatar
Sushi
Posts: 26
Joined: Wed Dec 26, 2018 12:37 am

Re: Swedish translations of SCUMM games

Post by Sushi »

Hi Thanius,

posting here as my PM seem to be stuck in my outbox.

In the meantime, I did find 5 font files: DISK_0001/LECF/LFLF_0010/CHAR_000*. But reimporting them after editing didn't seem to have any effect. Almost as if they aren't used by SCUMMVM at all.

Really weird.

Code: Select all

REM unpack the game files
./scummrp.exe -g monkeycd -p ./MI -d dump_MI -o

REM extract the font bitmaps
./scummfont.exe o ./dump_MI/DISK_0001/LECF/LFLF_0010/CHAR_0001 char0001.bmp 
./scummfont.exe o ./dump_MI/DISK_0001/LECF/LFLF_0010/CHAR_0002 char0002.bmp 
./scummfont.exe o ./dump_MI/DISK_0001/LECF/LFLF_0010/CHAR_0003 char0003.bmp 
./scummfont.exe o ./dump_MI/DISK_0001/LECF/LFLF_0010/CHAR_0004 char0004.bmp 
./scummfont.exe o ./dump_MI/DISK_0001/LECF/LFLF_0010/CHAR_0006 char0006.bmp 

REM edit the bmp files using photoshop

REM reimport the modified bitmaps 
./scummfont.exe i ./dump_MI/DISK_0001/LECF/LFLF_0010/CHAR_0001 char0001_modif.bmp 
./scummfont.exe i ./dump_MI/DISK_0001/LECF/LFLF_0010/CHAR_0002 char0002_modif.bmp 
./scummfont.exe i ./dump_MI/DISK_0001/LECF/LFLF_0010/CHAR_0003 char0003_modif.bmp 
./scummfont.exe i ./dump_MI/DISK_0001/LECF/LFLF_0010/CHAR_0004 char0004_modif.bmp 
./scummfont.exe i ./dump_MI/DISK_0001/LECF/LFLF_0010/CHAR_0006 char0006_modif.bmp 

REM repack the game files
./scummrp.exe -g monkeycd -p ./MI -d dump_MI -i

REM extract the text
./scummtr.exe -g monkeycd -p ./MI -of orig.txt
REM import the new text
./scummtr.exe -g monkeycd -p ./MI -if new.txt
User avatar
Sushi
Posts: 26
Joined: Wed Dec 26, 2018 12:37 am

Re: Swedish translations of SCUMM games

Post by Sushi »

ok, nevermind...
I forgot that scummfont doesn't overwrite the existing CHAR files but only creates a CHARxxx-new file.

So after adding this to my script before repacking, the font was correctly modified:

Code: Select all

mv ./dump_MI/DISK_0001/LECF/LFLF_0010/CHAR_0001-new ./dump_MI/DISK_0001/LECF/LFLF_0010/CHAR_0001
mv ./dump_MI/DISK_0001/LECF/LFLF_0010/CHAR_0002-new ./dump_MI/DISK_0001/LECF/LFLF_0010/CHAR_0002
mv ./dump_MI/DISK_0001/LECF/LFLF_0010/CHAR_0003-new ./dump_MI/DISK_0001/LECF/LFLF_0010/CHAR_0003
mv ./dump_MI/DISK_0001/LECF/LFLF_0010/CHAR_0004-new ./dump_MI/DISK_0001/LECF/LFLF_0010/CHAR_0004
mv ./dump_MI/DISK_0001/LECF/LFLF_0010/CHAR_0006-new ./dump_MI/DISK_0001/LECF/LFLF_0010/CHAR_0006
User avatar
Laserschwert
Posts: 280
Joined: Mon Mar 06, 2006 11:48 pm

Re: Swedish translations of SCUMM games

Post by Laserschwert »

Bringing up this old topic, I was wondering if there was a way to extract the dialogue, and have each line marked with which character in the game speaks that line? Maybe if it could at least mark the lines based on subtitle color, as that's usually different per ingame-character?
User avatar
Sushi
Posts: 26
Joined: Wed Dec 26, 2018 12:37 am

Re: Swedish translations of SCUMM games

Post by Sushi »

It should be possible, but not with the current version of scummtr
Blackmonkey
Posts: 7
Joined: Wed Aug 17, 2016 9:12 am

Re: Swedish translations of SCUMM games

Post by Blackmonkey »

Hi everyone.
I'm also trying to add some character to the CHAR files to get an italian-subbed Monkey Island 2 Ultimate Talkie Edition.

I've extracted the CHAR files from the italian CD and imported them into the UTE game files using scummtr and scummrp, since the original UTE files do not contain accented letters.
Up to this point it all works fine, except for a couple of accented letters (mainly È) which for some reason are missing in the italian version of the game too (maybe because they do not appear in ASCII table?).

I then tried to edit some of the *.bmp obtained form the italian CHAR (scummfont) by adding the missing letters in empty spaces and using the correspondant \xyz sequence in the subtitles... but then no text did show in game! Not only the already missing È, no text at all.
Should I try to overwrite unused existing characters instead of filling empty spaces? Should I use gimp or something like that instead of MS paint?

Thanks in advance!
User avatar
Sushi
Posts: 26
Joined: Wed Dec 26, 2018 12:37 am

Re: Swedish translations of SCUMM games

Post by Sushi »

Hi Blackmonkey,

did you try to modify a letter that is displayed, like the letter A or something?
This way, you can test if the correct BMP files are imported.
User avatar
Sushi
Posts: 26
Joined: Wed Dec 26, 2018 12:37 am

Re: Swedish translations of SCUMM games

Post by Sushi »

Proof of concept:
I have mangled the letter a and I have copied the E with ´ and put it on an empty space (position 146) and changed it to an `
Then I called that position in my text

Code: Select all

Mijn naam is Guybrush Threepwood en ik wil piraat worden! \x92
https://youtu.be/A0LA2h3jRS0
Blackmonkey
Posts: 7
Joined: Wed Aug 17, 2016 9:12 am

Re: Swedish translations of SCUMM games

Post by Blackmonkey »

Sushi wrote: Tue Sep 17, 2019 9:41 pm did you try to modify a letter that is displayed, like the letter A or something?
Hi,
not yet, thanks.
Blackmonkey
Posts: 7
Joined: Wed Aug 17, 2016 9:12 am

Re: Swedish translations of SCUMM games

Post by Blackmonkey »

Ok, I managed to add all the letters (in their correct ASCII position) I need in the CHAR file. I've used GIMP and an English CHAR file, and this time all the letters do show up.
OmerMor
Got a warning
Posts: 176
Joined: Thu Nov 17, 2005 9:29 pm
Location: Israel
Contact:

Re: Swedish translations of SCUMM games

Post by OmerMor »

Praetorian wrote: Sat Apr 21, 2018 9:38 pm
Masavishnu wrote: Do you have idea as to the meaning of the @-signs that occur with some strings? For example, there are certain name-of-object strings that contain these @-signs and I tried experimenting what would happen if I edited that a little, but it seemed to make little difference with the version of ScummVM I was using.
No, I don't think I found out the actual purpose for the '@'; just that they were typically related to object in-gane, so we figured we should leave them untouched. I don't remember if I experimented with changing them :/
*** Necrothreading Alert *** :D

I ran into this thread while searching for the elusive meaning of the '@' signs myself.
However - I managed to find out what it does so decided to document it here for future translators.
The explanation comes from the official SCUMM Tutorial which was shared by Aric Wilmunder: https://web.archive.org/web/20160721004 ... f#page=111
Here are the relevant bits:
There are a few characters that can be embedded in messages:
  • ^ will produce ...
  • @ is a non printing character
  • ` will produce "
If the name is command is to be changed during the game, be sure to pad the name with enough @'s. This is so the name's definition contains the maximum number of characters that it will ever need.

The length of the new name can not exceed the length of the original object name. To get around this, just pad the original names with @'s to the length desired. This sets up the appropriate storage to allow the new name later.
There is no error checking for this, so be very careful. Exceeding the alloted size will cause part of the object's code to be overwritten, yielding unpredictable crashes. You can evoke the brief macro to count the characters in a string with escape-C.

Example:

Code: Select all

name is "plant"
name is "flashlight@@@@"
(Then we can use new-name-of flashlight is "lit flashlight")
So IIUC, when translating a string with @ characters, you need to pad the translated string with enough @ characters so when the games replaces it with another (translated) name, it will have sufficient size.

HTH
User avatar
Praetorian
ScummVM Developer
Posts: 787
Joined: Tue May 08, 2007 8:54 am
Location: Greece
Contact:

Re: Swedish translations of SCUMM games

Post by Praetorian »

OmerMor wrote: Wed Jul 15, 2020 9:37 pm
So IIUC, when translating a string with @ characters, you need to pad the translated string with enough @ characters so when the games replaces it with another (translated) name, it will have sufficient size.

HTH
Interesting, thank you for this explanation
User avatar
Sushi
Posts: 26
Joined: Wed Dec 26, 2018 12:37 am

Re:

Post by Sushi »

krbj wrote: Wed Feb 21, 2018 10:24 pm I am using the English VGA floppy version of MI for testing. I then run the game in the latest ScummVM.

If I add a character the game starts with corrupted graphics and goes into the copy protection check, which is impossible to solve because of the corrupted graphics.

I obviously want to edit the text, with change of string length, and not get a result with corrupted graphics and unpassable copy protection. Do you have any hints to get started with this?

(I have already translated quite a lot of the strings, while not getting the actual ScummTr magic to work.)
After having translated the CD version, I am porting that translation over to the VGA floppy and I encounter the same issue of the corrupted graphics.

Do you still remember how you got to work around this in the end?
Tsomi
Posts: 50
Joined: Sun Apr 14, 2013 3:48 pm
Location: France

Re: Swedish translations of SCUMM games

Post by Tsomi »

Hi,

I just wanted to let you know that the original author of the ScummTR tools kindly provided the original source code and allowed it to be open-source, now.

So I've just made a new release:
https://github.com/dwatteau/scummtr/releases

It improves (or, at least, detects) some corruption problems with ScummFont (but indeed, using GIMP is probably the best solution at the moment… ScummFont just needs to be rewritten in order to be much more robust). I've also added a FAQ and some manuals to help people understand how to use these tools. More documentation to come.

As for this particular version of Monkey Island 1 VGA, unfortunately, I couldn't fix this bug for this release. Here's the issue: https://github.com/dwatteau/scummtr/issues/47. Basically, yes, removing the duplicate resource appears to corrupt the main index file. It's probably a ScummTR bug, but I couldn't find a solution yet. Maybe someone else will help, now that the tool is open-source.

A possible workaround for you would be to try to find some other SCUMM resource editing tool, and try to remove the 117 costume from room 59 with it.

EDIT: Sorry, I'm aware of another, simpler workaround. If you run your VGA game in DOSBox, and type Ctrl-V in it, I think you will see a "1.0" version number somewhere? If that's the case, see if you can work from a "1.1" VGA version, instead. My English 1.1 VGA version doesn't have this bug, as far as I can say.
Post Reply