Quick Reply
Search this Thread
Test Subject
Original Poster
#1 Old 5th Apr 2024 at 2:02 PM
Making a mod to modify Translations?
Hello I want to make a mod which fixes translations (beacuse some translations in language this mod will fix (Polish) are really bad).

And I kinda what to do but i want to make sure i want to do it correctly or if there is different way.

How I would do it copy file with translations from every EP and SP and then make new file in SimPE and then create a new resource and select correct resource type and for every translation i want to fix i would add new string or what is it called and enter originall's Code (that 0X0000 thing) and correct the translation.

Do I think of correct way or is there any better way to fix translations?
Advertisement
Scholar
#2 Old 5th Apr 2024 at 5:14 PM
Translation is spread across a great many number of files. For each object in objects.package there is CTSS (name and description), TTAs (static menus), STR# 12D (dialogs), STR# 12E (dynamic menus), occasionally other resources in STR# used as part of dialogs and menus.

Of course not every kind of object has associated text. The total size of uncompressed text from Objects is about 290 MB. The core UI text not associated with any object is found inside Res\Text directory of the latest EP. I'm not familiar with how it is moddable. Most messages coming from the game are from some invisible object.

To make a mod, you need to extract the required resources, add them to a new package and make your changes. There is not a way of including only Polish. All required languages need to be included. There is a tedious way of slimming down bloated language files by deleting "needs translation" comments and unused languages, mostly at the bottom of the list that contain English text, as well as English (UK) where it duplicates US. You can use the Export Language button to create a text file where you can use text editing tools such as search & replace. When done, you need to press Import Language to get the text back into the package. In some cases newline symbols may be lost if they are at the start or end of a string (for appending multiple strings).

You will create a conflict with mods that add new strings if your version has fewer.
that chaos-loving 'bre
staff: trainee moderator
#3 Old 5th Apr 2024 at 5:44 PM
I agree with everything you said @jonasn but would like to add a few things.

Quote:
(...)unused languages, mostly at the bottom of the list that contain English text, as well as English (UK) where it duplicates US.

English (UK) is not an unused language in Sims 1 and Sims 2.
You can set your game to language code 0x13 and access the language that way. In fact, I play in English (UK).
This is unlike cases such as Hebrew, Greek, Tagalog etc. where references exist in SimPE but you can't set your game to these languages whatsoever.

It is true that it mostly just duplicates English (US) or is blank altogether. There are very few distinct differences, like putting thesims2.co.uk instead of thesims2.com, or the slightly known "Throw Party…/New Year's Bash" error (using the Horizontal Ellipsis character instead of three periods ...). I wish Maxis had done the obvious and, y'know, used the British spelling (colours, centre...) or special British words (elevator -> lift, vacation -> holiday...), and I actually do that for myself where I spot it. But I am a bit weird anyway. For the average end user, this language can usually be wiped clean, yeah.

Quote:
There is not a way of including only Polish. All required languages need to be included.

It is enough to have only English US and whatever language you will be translating, so in this case Polish. I'm just going to assume that those who need a Polish translation fix are playing in Polish and won't need, for example, Czech, French etc. to be present.
That really is the bare minimum, however. Whoever uses this mod will have to keep this restriction in mind if they ever choose to swap their game language for whatever reason.

Quote:
The core UI text not associated with any object is found inside Res\Text directory of the latest EP. I'm not familiar with how it is moddable.

As already mentioned, I have changed most of these core UI texts for myself, so it is absolutely possible. It is enough to put the overrides in your Downloads folder, but you absolutely must call the package the same name as the original, plus you must only have one of it in your Downloads folder.
Test Subject
Original Poster
#4 Old 18th Apr 2024 at 3:32 PM
Quote: Originally posted by LimeyYoshi
As already mentioned, I have changed most of these core UI texts for myself, so it is absolutely possible. It is enough to put the overrides in your Downloads folder, but you absolutely must call the package the same name as the original, plus you must only have one of it in your Downloads folder.
What do you mean by keeping the same name. Does text from every EP reappear in next EP that's why it can be only 1 file?
that chaos-loving 'bre
staff: trainee moderator
#5 Old 18th Apr 2024 at 5:11 PM
@Micro856
Quote:
What do you mean by keeping the same name.

That means that, for example, if you change a text string that was originally from Wants.package, that the replacement also has to be in a file called Wants.package.

Quote:
Does text from every EP reappear in next EP that's why it can be only 1 file?

Indeed it does, and Mansion & Garden Stuff also includes all texts from the eight EP's before it, plus a handful of extra ones.
But the real reason is that, if you have multiple files called Wants.package, then only the file that loads last is considered by the game to accepts overrides from.
So for example, take a Downloads folder. There is a Wants.package in the root Downloads folder, and another in a sub-folder "Abcdef". Load order dictates that any file contained within a sub-folder loads before files in the root directory, so anything that is contained in the Wants.package of the "Abcdef" folder is basically skipped when the game runs.
Test Subject
Original Poster
#6 Old 18th Apr 2024 at 5:35 PM
Quote: Originally posted by LimeyYoshi

That means that, for example, if you change a text string that was originally from Wants.package, that the replacement also has to be in a file called Wants.package.


Indeed it does, and Mansion & Garden Stuff also includes all texts from the eight EP's before it, plus a handful of extra ones.
But the real reason is that, if you have multiple files called Wants.package, then only the file that loads last is considered by the game to accepts overrides from.
So for example, take a Downloads folder. There is a Wants.package in the root Downloads folder, and another in a sub-folder "Abcdef". Load order dictates that any file contained within a sub-folder loads before files in the root directory, so anything that is contained in the Wants.package of the "Abcdef" folder is basically skipped when the game runs.

Thank you it works i tried now i only need to find locations of commontly known mistakes in translation and find new mistakes.
Scholar
#7 Old 19th Apr 2024 at 12:41 PM
It can be hard to identify the object that a message is coming from. There are many invisible service objects. To search across all text quickly, you can extract it and put it a single archive without compression. That is about 23,000 text resources for STR# in objects. Then you can open this file in a powerful text editor or a hex editor with UTF encoding (or not and limit your search to normal letters) and search across it. Once the extraction step is done, the search will be faster than with any tool that goes over the original package and uncompresses it on the fly. Then you can search forward for ".simpe" and find the group number containing your string.

I have done this extraction for my needs and could send you the files. Dealing with thousands of files is hard for the PC.
Screenshots
Back to top