Create a Localization
Grim Dawn reads community localizations from the “/localization” subdirectory of the location the game is installed. This is usually similar to “Program Files\Steam\SteamApps\Common\Grim Dawn”. The game reads directly from a .zip file containing your localization files, which can be created using any standard .zip utility.
A community localization consists of a .zip file containing the localization texts along with a “language.def” file which tells the game the name of the localization as well as the font set to use.
example language.def:
language=French
fonts=FR
author=John Smith
version=v1.1.0.0
The name given in the language field is what shows up in in game options. Community localizations appear as “community_French” for example in the language selection box in game options.
Localizing DLC
Beginning with the release of the Forgotten Gods expansion (v1.1.0.0), the zip file format has changed to include two subdirectories, “fg” (Forgotten Gods), and “aom” (Ashes of Malmouth). Translation files specific to these expansions should appear in these subfolders, and the game will load them appropriately when the expansions are present. This change has been made to allow translations for the base game and expansions to be contained within a single zip file.
Currently the following font sets are available:
“CS” - Czech
“DE” - German
“EL” - Greek
“ES” - Spanish
“FR” - French
“HU” - Hungarian
“IT” - Italian
“KO” - Korean
“NL” - Dutch
“PL” - Polish
“RU” - Russian
“ZH” - Chinese
“SK” - Slovak
“PT” - Portuguese
“BG” - Bulgarian
“JA” - Japanese
“VI” - Vietnamese
“TH” - Thai
“TR” - Turkish
If you are working on a localization and require a font set for a different language, please PM me the request along with a link to the unicode alphabet for your desired language.
Item Localization
Gender Support
If you want to make use of gender support, you need to edit tagItemNameOrder (it’s the first tag in “tags_items.txt”) to use ‘a’ instead of ‘s’ for the genderized parameters, and specify the index of the parameter which contains the item gender to use for the item.
for example (genderized prefix/quality/style/suffix, with gender chosen by name)
tagItemNameOrder={%_3a0}{%_3a1}{%_3a2}{%_s3}{%_3a4}
Gender codes would then be given to each tag representing an item name. The code present in the name is then used to pick from the genders supplied in other tags.
for example, a masculine singular object would be defined as follows:
tagSword=[ms]Sword
and a genderized suffix would be defined:
tagSuffixPower=[ms]Power[fs]etc[ns]etc
Recognized gender codes are:
[ms] Masculine Singular
[fs] Feminine Singular
[ns] Neuter Singular
[mp] Masculine Plural
[fp] Feminine Plural
[np] Neuter Plural
Reorder All Item Names
If you want to change the order in which item names are built for all items (from prefix/quality/style/name/suffix to some other order), you can change the parameter indexes around in tagItemNameOrder.
for example, name/quality/style/prefix/suffix (all items)
tagItemNameOrder={%_s3}{%_s1}{%_s2}{%_s0}{%_s4}
Recapitalize Item Names
If you want to recapitalize the item name string after it is created you can prepend ‘$’ to tagItemNameOrder. The string will be changed so that only the first letter is capitalized.
tagItemNameOrder=${%_s0}{%_s1}{%_s2}{%_s3}{%_s4}
“Godly Plate of the Whale” would become “Godly plate of the whale”.
If you want to mark a specific tag to prevent recapitalization you can prepend ‘$’ to the tag.
tagSuffixWhale=$the Whale
The item name would then become “Godly plate of the Whale”.
Individual Item Tag Reordering
If you require it, you can reorder only some tags, for example to move a certain prefix to the end of the item name, you can prepend reordering info to the tags.
The code is |X where X is from 1 to 9 indicating the new location relative to the locations of other tags.
tagPrefixToBecomeSuffix=|1Warrior's
Tags without reordering info set are considered to have ‘|0’. The tags making up the item name are then sorted in order of their indexes and the item name is created.
In this case, Warrior’s would be moved to the end of the string since all other tags aren’t reordered.
Conversation Localization
Gender of Target
You can change npc speech in conversations based on the gender of the target the npc is talking to (usually the player) using gender tags.
Hello [[ms]sir[fs]madam], how are you today?
Support for Scriptio Continua
If your language uses scriptio continua and you are encountering text wrapping issues in conversations, add the line “wordmode=false” to your language.def file.
Questions?
If you have game related issues with your translation you can post in this thread for help.
Thanks to the community localizers for their effort!
community_english_1160_022120.zip (1.2 MB)