Quick Reply
Search this Thread
Lab Assistant
Original Poster
#1 Old 1st Oct 2025 at 5:01 PM
Default How can I edit the Greek localisation in the Sims 3?
I hope I'm posting this in the right category. Lately, I've been thinking of modifying the Greek localization in the Sims 3. While I'm grateful that it exists, since Greek is very rarely ever included in video games, I can still see that it's far from perfect. It has two major shortcomings:
  1. The game can only really handle English: Judging from my limited experience in translating mod STBLs from English to Greek, the game uses expressions(?) that can refer to various things in the game, such as a sim's gender (i.e. {fa.} and {ma.}) but also (correct me if I'm wrong) object names as well as other strings. In English this works pretty well. In Greek that depends on the string - that is, some strings are fine while others are partially ungrammatical. I'm not going to go into detail about this, because it's something that cannot be fixed. The game is hard coded to work the way it does and that can't be changed.
  2. Translation mistakes: There's three types of mistakes I have encountered in the game:
    1. Bad use of language: Often times it feels like the translator(s) have followed the English texts a little too closely and ended up with sentences that sound kind of unnatural or are a little unclear as to their meaning. Some strings may use uncommon expressions.
    2. Inconsistent translations: Some words may have two or more translations, depending on where in the game they appear. For instance, "WooHoo" has three different translations - one that appears under the romantic category and is the closest to the English word (γιούχου), another one that appears when two sims are relaxing on the bed (γκοοοολ "goaaaal") and a third one when clicking on objects where sims can woohoo in, e.g. the shower or a hay stack (φίκι-φίκι, a rare euphemism for sex). As far as I know, this doesn't happen in English.
    3. Plain mistranslations: These ones are rare but one of them is the title of the "get a mAssage" wish that pregnant sims often get. In Greek it's translated as "λαμβάνετε μήνυμα" (= get a mEssage). There are other ones as well, but I can't remember them off the top of my head.

My plan is to made a mod that will override the default Greek strings with my corrections. In order to do that, I'll need to know three things:
  1. How the game handles translations
  2. Where in the game files I can find the Greek strings
  3. How I can make an override(?) mod of this kind
If you can help me the above, I'd be grateful.

EDIT: In order to find which strings need to be corrected, I'll play the game normally and take a screenshot every time I see a mistake in the texts. Hopefully, I'll be able to search for a string in the Game files using the Greek text from the screenshots.
Lab Assistant
#2 Old 1st Oct 2025 at 8:21 PM Last edited by Destrospean : 1st Oct 2025 at 9:00 PM.
Within your installation folder for The Sims 3 (e.g., "C:\Program Files (x86)\Electronic Arts\The Sims 3"), the Greek STBL, along with others, can be found within "GameData\Shared\Packages\DeltaBuild0.package".
There might be strings outside of this package in other GameData folders for each of the installed expansions, but I haven't run into that as I have found strings for things in expansions in the above package.

You can export the STBL with S3PE—

—and create a new STBL in a new package with the TGI of the old STBL except for the last 4 digits of the Instance of the TGI being "1111" (e.g., 0x090F16B00BA81111 for Greek), as this will allow it to override.

Then you can replace the new STBL with the one that was exported.

Then you can open that new package with Easy STBL Manager to export the STBL as an XML and then search by keywords within the strings you want to edit with your preferred text editor. Then you can import the edited XML back into the new package as an STBL using the same tool.


Note that it may take a long time to load the STBL in Easy STBL Manager and may also take a long time to preview it in S3PE, so patience is required. If you don't want to wait for the export and would find it more convenient for the package to be set up already for you to just easily replace the STBL with Easy STBL Manager, I will provide the package and XML below.
Screenshots
Attached files:
File Type: zip  Greek STBL Replacement Files.zip (5.55 MB, 2 downloads)
Lab Assistant
#3 Old 1st Oct 2025 at 9:59 PM Last edited by Destrospean : 1st Oct 2025 at 11:20 PM.
I will add that you don't need to include all the strings in the new STBL—you can manually assign them in S3PE in an empty STBL with the TGI I mentioned if you know the FNV64 hashes of the strings (can be found in the XML; just add "0x" at the beginning).
The "1111" at the end makes it so that it is prioritized since the last four digits make up a lower value than those of the original STBL's TGI, so any strings in the new STBL will override any of the old, while not deleting any strings that were not included in the new STBL.
Lab Assistant
Original Poster
#4 Old 2nd Oct 2025 at 4:20 PM Last edited by herrbrecht : 2nd Oct 2025 at 4:52 PM.
Wow, thank you so much for taking the time to write this detailed explanation and create the necessary files! I really appreciate it! If I end up releasing the mod, I'm going to credit you and if I have run into issues while making it, I'll post them here.

EDIT: By the way, is there a way to know where a given string appears in-game? I'm asking because it could make it easier for me to fix some of the inconsistent translations.
Lab Assistant
#5 Old 2nd Oct 2025 at 11:36 PM
Unfortunately, there is no easy way to tell when a string is used just by looking at the hash. FNV64 hashes cannot be turned back into the strings they were hashed from. It's asymmetrical encryption.

The code itself (decompiled using ILSpy or dnSpy) has the keys of the strings unhashed, and you can convert those into hashes to see if each hash matches the hash of the string you are editing. That requires you scouring the code base, converting each key string to a hash in order to find where each string is used.

That's the best I've got right now unless someone else has a better method.

Someone could undertake getting all the strings for the hashes, which I've partially done for relation names, using that method so that no one ever has to do that again:
Screenshots
Inventor
#6 Old 3rd Oct 2025 at 10:01 AM
There are a surprising amount of tools for handling STBL - EasySTBL, S3SE, STBLizer, and Stubble are ones I know.

My personal preference is S3SE, but the one among those that does the closest to what you're looking for is Stubble. That one is how you look things up by their key rather than their hash.
However, it doesn't contain every string in the game and I suppose TigerM won't be taking new submissions to complete it considering they haven't logged in since 2009 But you can still use the built-in tool to scrape string keys while playing and read them in the text file, if that helps.
[Edit:] Actually, there was an update to Stubble - even better

Cardinal has been taken by a fey mood!
Lab Assistant
Original Poster
#7 Old 3rd Oct 2025 at 1:44 PM Last edited by herrbrecht : 3rd Oct 2025 at 2:25 PM.
Thank you guys!
I'll take a look at the tools and hopefully I'll find one that suits my needs. But even if I don't, it's not too much of an issue, because my current workflow seems to be working so far, having edited a few strings for the first time yesterday. What I do is take a screenshot and then use ctrl+f to look up the Greek strings in the xml file I created following Destrospean's instructions. I even went as far as creating an xml file out of the English STBL, so now I'm able to assess the Greek translation better.

EDIT: Ok, Stubble and s3se seem to be exactly what I need. They allows me to view the strings in multiple languages and they even can export a package file. But how do I make a mod to put in the overrides folder with them though? My plan it to create a mod that will only include the edited Greek strings and nothing else, so it's smaller in size and doesn't override things it doesn't need to.
Inventor
#8 Old 4th Oct 2025 at 4:10 AM
Quote: Originally posted by herrbrecht
But how do I make a mod to put in the overrides folder with them though?


Similarly to the EasySTBL method, if you first export the English and Greek STBL to a new package you can open that with S3SE to work with only those languages.
You could delete any strings that don't need changes as you work your way down the list, as long as you give the STBL a new ID in S3PE later- just make sure the first two digits are 09, the bit identifier for Greek.
Alternatively, you can keep them and just make a default replacement without changing the ID.

When you're done with your changes and save, you can open the package in S3PE and delete the English STBL.

This can then be installed to Mods > Packages, as Overrides is only necessary for managing load order between conflicting mods.

Final note, the complete strings for expansions are indeed in their own FullBuild packages- the reason the DeltaBuild0 contains a lot of them is because these are the patch files, so they contain everything that was modified by patches to the game but not all of them.

Cardinal has been taken by a fey mood!
Lab Assistant
Original Poster
#9 Old 4th Oct 2025 at 9:15 AM
I see, thanks for the detailed explanation. So far, I've only found the loading screen game tips in the FullBuild packages but I haven't edited any of them yet. If I do, can I include the FullBuild package strings into the same package file as the DeltaBuild0 or will I need to create a separate file for each EP?
Lab Assistant
#10 Old 4th Oct 2025 at 5:59 PM
Quote: Originally posted by CardinalSims
Final note, the complete strings for expansions are indeed in their own FullBuild packages- the reason the DeltaBuild0 contains a lot of them is because these are the patch files, so they contain everything that was modified by patches to the game but not all of them.

That explains why it's called "DeltaBuild0," delta being used in math to denote change. The only issue is that the Greek STBL is not in any of the base game's FullBuild packages, so DeltaBuild0 would still need to be referenced for base game strings.
Lab Assistant
#11 Old 4th Oct 2025 at 6:01 PM Last edited by Destrospean : 4th Oct 2025 at 6:44 PM.
Quote: Originally posted by herrbrecht
I see, thanks for the detailed explanation. So far, I've only found the loading screen game tips in the FullBuild packages but I haven't edited any of them yet. If I do, can I include the FullBuild package strings into the same package file as the DeltaBuild0 or will I need to create a separate file for each EP?

Yes, you can include all of them in the same package. You can also merge entries of the STBLs into one so long as the Instance hash is a lower value than all the STBLs you're replacing.

(Edit: Just be sure that the Instance hash of the TGI always begins with 0x09 for Greek. That is essential for the game to know the STBL belongs to Greek.)
Inventor
#12 Old 5th Oct 2025 at 2:21 AM
For the base game, the DeltaBuild0 set should be used- the FullBuild0 sets are the same ones, just as they were on release in 2009.
In the install location for each expansion, FullBuild is the only option. These will have any expansion strings that weren't patched into the base set.

They can all be included in one package.
I'd keep them as separate STBL, just for ease of use if you ever need to go back and make more changes, but indeed those can be combined too.

Quote: Originally posted by Destrospean
so long as the Instance hash is a lower value than all the STBLs you're replacing

I'm curious why (and if) this is necessary?
I've made STBL that overwrite EA strings before and hashed the IDs arbitrarily from the name I chose, as I would for any resource. These all work, but it is of course possible that I just got lucky and the IDs just happen to fall in the correct range.

All of the languages are present in both my FullBuild0 and DeltaBuild0.

Cardinal has been taken by a fey mood!
Lab Assistant
#13 Old 5th Oct 2025 at 2:31 AM
Oh yeah, I am definitely aware that the DeltaBuild ones should be the ones used as they are the more up-to-date ones—I was just saying that there isn’t even a FullBuild one at least for me. Only English, French, and Spanish (Mexico) show up in my FullBuild0.
As for the values being of a lower hash, I saw someone else mention that the STBLs get prioritized that way and I actually had to change the hash because it being randomized did not work for me, even with the right beginning numbers for the languages.
It could just be cargo cult behavior on both my and the other person’s part, but I assume that’s how that works because packages are prioritized similarly alphabetically.
Back to top