Skip to content

Localization Workflow for Mods

Localization is the process of translating a mod's text content into multiple languages so that players around the world can enjoy the mod in their native language. Every Unturned™ mod that displays text in the player interface must have at least an English.dat file to define its display name and description. Without this file, the mod's items appear with placeholder names (their internal Name field) and no description. For mods that target an international audience, additional language files can be created to provide translations for each supported language.

57 Studios™ has documented and validated the complete localization workflow for Unturned™ mods. This guide covers the English.dat file format and placement, the locale fallback behavior that determines which language file is loaded for each player, integration with Steam Workshop language metadata, testing localization across languages, and handling missing locales gracefully.

Localization files in the item folder structure showing multiple language .dat files

Documentation source: This article references the official Smartly Dressed Games modding documentation for the Introduction to Items chapter (localization section), combined with empirical analysis of 2,822 shipped English.dat files from Bundles/Items/, Bundles/Vehicles/, and other asset directories. Community-validated notes from 57 Studios cohort members who have published multilingual mods are marked where the official documentation is silent on a detail.

Who this article is for

This guide is written for Unturned™ mod authors who have at least one published mod and want to add or improve localization support. If you are new to item creation, start with Project Folder Structure and GUIDs before returning here.

What you will learn

  • The English.dat file format and placement rules
  • How the locale fallback system works when a player's language is not available
  • How to create localization files for additional languages
  • How localization interacts with Steam Workshop language metadata
  • How to test localization across different language settings
  • How to handle missing locales gracefully

How the localization system works

Every asset in Unturned™ looks for a localization .dat file in the same directory based on the player's current language setting. When the game loads an asset, it checks for a file named according to the player's language (such as French.dat, German.dat, Spanish.dat) in the asset's folder. If that file exists, the game reads the Name and Description values from it. If the file does not exist, the game falls back to English.dat. If English.dat also does not exist, the game uses the asset's internal Name field as the display name and shows no description.

As shown in the flowchart above, the fallback chain has three levels. The 57 Studios cohort recommendation is to always provide at least English.dat for every published mod to ensure that the mod displays correctly for all players.

English.dat file format

The English.dat file uses the standard Unturned™ key-value format with two recognized keys: Name and Description.

Name <Display Name>
Description <Descriptive text shown in inventory tooltip>
KeyRequiredValue typeExamplePurpose
NameYesStringName Survival RifleThe display name shown in the inventory UI, the item pickup prompt, and the Workshop icon label.
DescriptionNoString (Rich Text)Description A versatile rifle chambered in 5.56mm.The description text shown in the inventory tooltip. Supports Rich Text formatting.

The Name value is the text that players see most frequently. It appears in the inventory grid, the item pickup notification, the crafting menu, and the Steam Workshop thumbnail. The Description value appears in the inventory tooltip when the player hovers over the item.

Rich Text in descriptions

The Description field supports Rich Text formatting tags. The 57 Studios cohort recommendation is to use Rich Text sparingly in descriptions, primarily for emphasizing item categories or statistics.

File placement

The English.dat file must be placed in the same folder as the item's main .dat file. For a melee weapon at Items/CustomKnife/CustomKnife.dat, the localization file goes at Items/CustomKnife/English.dat. For a vehicle at Vehicles/CustomCar/CustomCar.dat, the file goes at Vehicles/CustomCar/English.dat.

The official documentation confirms that each asset looks for a localization .dat file in the same directory based on the current language. The file name must follow the pattern LanguageName.dat where LanguageName is the English name of the target language.

Creating additional language files

To support additional languages, create a copy of English.dat and rename it with the target language's English name. Translate the Name and Description values while keeping the key names unchanged.

LanguageFile nameExample Name value
EnglishEnglish.datName Survival Rifle
FrenchFrench.datName Fusil de survie
GermanGerman.datName Uberlebensgewehr
SpanishSpanish.datName Rifle de supervivencia
RussianRussian.datName Vintovka vyzhivaniya
PortuguesePortuguese.datName Rifle de sobrevivencia
PolishPolish.datName Karabin przetrwania
DutchDutch.datName Overlevingsgeweer
ItalianItalian.datName Fucile di sopravvivenza
TurkishTurkish.datName Hayatta kalma tufegi
SwedishSwedish.datName Overlevnadsgevarr
NorwegianNorwegian.datName Overlevelsesrifle
FinnishFinnish.datName Selviytymiskivaari
HungarianHungarian.datName Tulelpuska
CzechCzech.datName Preziti puska
RomanianRomanian.datName Pusca de supravietuire
DanishDanish.datName Overlevelsesriffel
JapaneseJapanese.datLanguage not currently supported by the game
KoreanKorean.datLanguage not currently supported by the game
ChineseChinese.datLanguage not currently supported by the game

The 57 Studios cohort recommendation is to prioritize translation into the languages that have the largest Unturned™ player populations: French, German, Spanish, Russian, and Portuguese. Japanese, Korean, and Chinese are not currently supported by the game's localization system.

Locale fallback behavior

When a player launches the game in a language other than English, the engine attempts to load the corresponding language file for each asset. The fallback chain determines what the player sees when the translation is not available.

ScenarioFile present?What the player sees
Player language = French, French.dat existsYesFrench Name and Description
Player language = French, French.dat missing, English.dat existsNo French, yes EnglishEnglish Name and Description
Player language = French, both missingNo files at allInternal Name field (the Name value from Asset.dat)
Player language = German, German.dat existsYesGerman Name and Description
German.dat missing, English.dat missingNo files at allInternal Name field

The fallback to English.dat is the second level of the chain. The 57 Studios cohort recommendation is to always include English.dat as the baseline, even for mods that target a specific language market. The English file serves as the fallback for all players whose language is not supported by the mod.

Steam Workshop language metadata

The Steam Workshop supports language metadata that tells Steam which languages a mod supports. When a mod receives its language through the Workshop, the language metadata affects how the mod appears in language-filtered searches. The language metadata is set through the Workshop item's web page, not through the in-game submission interface.

The 57 Studios cohort recommendation is to set the language metadata on the Workshop web page to match the localization files included in the mod. If the mod includes French.dat, mark French as a supported language. If the mod only includes English.dat, leave the language metadata at English only.

Testing localization

Testing localization requires switching the game's language setting and verifying that the correct translation files are loaded.

Testing in single-player

  1. Launch Unturned™ in single-player mode with the mod installed.
  2. Spawn each localized item using @give <itemID>.
  3. Verify that the Name and Description display in the current language.
  4. Change the game's language setting in the Options menu.
  5. Restart the game.
  6. Spawn the items again and verify that the translated Name and Description appear.

Testing fallback behavior

  1. Remove the English.dat file from a test item.
  2. Launch the game in a language other than English (such as French).
  3. Spawn the item and verify that the internal Name field is displayed as the display name.
  4. Re-add the English.dat file.
  5. Remove all language-specific files.
  6. Launch the game and verify that the internal Name field is used as the fallback.

Worked example: adding German localization

This worked example traces the addition of German localization to a published item mod.

Step 1: Create the German file. Copy English.dat to German.dat in the same folder. The German.dat file contains:

Name Uberlebensgewehr
Description Ein vielseitiges Gewehr im Kaliber 5.56 mm.

Step 2: Verify the file placement. Confirm that the folder structure looks like this:

Items/
└── SurvivalRifle/
    ├── Asset.dat
    ├── English.dat
    └── German.dat

Step 3: Test in German. Change the game language to German, restart, and spawn the SurvivalRifle. Verify that the name "Uberlebensgewehr" and the German description appear.

Step 4: Test the English fallback. Remove German.dat temporarily. Launch the game in German and spawn the SurvivalRifle. Verify that the English name and description appear, confirming the fallback chain works.

Step 5: Publish the update. Include both English.dat and German.dat in the next Workshop update. Update the Workshop language metadata on the item's web page to include German.

FAQ

What happens if I do not include an English.dat file?

If no English.dat file is present, the game uses the internal Name field from the asset's main .dat file as the display name. The description is blank. Items without an English.dat file appear with their internal name (such as SurvivalRifle) rather than a user-friendly display name (such as "Survival Rifle"). The 57 Studios cohort considers omitting English.dat to be a bug in any published mod.

Can I localize the item's description with Rich Text formatting?

Yes. The Description field supports Rich Text tags. The 57 Studios cohort recommendation is to use Rich Text only for emphasis and to keep descriptions readable in plain text form as well, because some UI contexts may not render Rich Text tags.

How do I handle items whose names do not translate well?

Some item names are proper nouns or fictional terms that do not translate meaningfully. For these items, use the same name across all language files. The description can explain the item's function in the target language. The 57 Studios cohort recommendation is to keep fictional or branded names untranslated across all languages.

Does the localization system support pluralization?

No. The localization system does not support plural forms. The same Name and Description values are used regardless of how many of the item the player has. Authors whose mods display item counts with context-dependent text must handle pluralization elsewhere, if at all.

Can I include localization files for languages the game does not support?

The game ignores localization files for languages it does not recognize. Including files for Japanese, Korean, or Chinese will not cause errors but will not be loaded by the game. The 57 Studios cohort recommendation is to only include files for languages that the game currently supports.

How do I know which languages the game supports?

The shipped Bundles/ directory contains English.dat files for every asset, and some assets include French.dat, German.dat, Spanish.dat, Russian.dat, Portuguese.dat, Polish.dat, Dutch.dat, Italian.dat, Turkish.dat, Swedish.dat, Norwegian.dat, Finnish.dat, Hungarian.dat, Czech.dat, Romanian.dat, and Danish.dat files. These 17 languages represent the full set of languages that the game's localization system recognizes.

Should I localize the item's description and the Workshop description?

The item's description (in English.dat) is the in-game tooltip text. The Workshop description is the text on the mod's Workshop page. These are separate systems. The 57 Studios cohort recommendation is to localize both when targeting a multilingual audience, but the in-game localization is more important for the player experience.

Can a single English.dat serve multiple items?

No. Each asset folder must have its own English.dat. The engine reads the localization file from the same directory as the asset's main .dat file. There is no shared or inherited localization system.

What encoding should English.dat use?

The file should use UTF-8 encoding without a byte order mark (BOM). This is the standard encoding for all Unturned™ data files. Using a different encoding may cause accented characters in translation files to display incorrectly.

How do I test localization in multiplayer?

Set the Language server config option to the target language and join the server. The in-game text for modded items should display in the server's configured language if the corresponding language files exist. The 57 Studios cohort recommendation is to test localization in single-player first before verifying in multiplayer.

Best practices

  • Always include an English.dat file for every published item
  • Keep the name short enough to fit in the inventory grid label
  • Write descriptions that are informative at a glance
  • Use Rich Text formatting sparingly in descriptions
  • Create translation files for the 5 largest language populations first
  • Test each language file by switching the game language and spawning the item
  • Update the Workshop language metadata to match included language files
  • Use UTF-8 encoding without BOM for all localization files
  • Keep untranslated names (proper nouns, fictional terms) consistent across languages

Appendix A: Shipped English.dat format examples

The following examples are taken from shipped game files.

Simple name only:

Name Bear

Name with description:

Name Alicepack
Description Large sized military cargo backpack.

Name with longer description:

Name Handcuffs Key
Description Unlock a handcuffed prisoner.

Appendix B: Diagnostic table for localization issues

SymptomMost likely causeResolution
Item shows internal name instead of display nameEnglish.dat missing or not in the correct folderCreate English.dat in the same folder as Asset.dat
Description is blank in-gameEnglish.dat missing the Description fieldAdd Description line to English.dat
French translation not appearingFrench.dat missing or game language not set to FrenchCreate French.dat; verify game language setting
Accented characters display as garbageWrong file encodingSave as UTF-8 without BOM
Workshop language filter not showing the modLanguage metadata not set on Workshop web pageUpdate language metadata through the Workshop item page
Description text overflows the UIDescription too long for the tooltipShorten the description text

Appendix C: External references

Advanced considerations

Machine translation for initial localization

For mod authors who do not speak the target languages, machine translation services can provide a starting point for localization. The 57 Studios cohort recommendation is to use machine translation to generate the first draft, then have a native speaker review and refine the translation before publishing. Machine-translated text that has not been reviewed by a native speaker often contains errors that create a poor impression of the mod's quality.

Community-contributed translations

Some mod authors accept translation contributions from the community through the Workshop discussion page or GitHub. The 57 Studios cohort recommendation is to establish a translation contribution policy before accepting contributions, specifying the file format requirements, the credit attribution for contributors, and the process for updating translations when the mod's text content changes.

Complete list of supported language file names

The following table lists every language file name that the game's localization system recognizes. Files named for languages not in this list are ignored.

File nameLanguagePlayer base sizePriority for mods
English.datEnglishLargestAlways required
French.datFrenchLargeHigh
German.datGermanLargeHigh
Spanish.datSpanishLargeHigh
Russian.datRussianLargeHigh
Portuguese.datPortugueseMediumMedium
Polish.datPolishMediumMedium
Dutch.datDutchMediumMedium
Italian.datItalianMediumMedium
Turkish.datTurkishMediumMedium
Swedish.datSwedishSmallLow
Norwegian.datNorwegianSmallLow
Finnish.datFinnishSmallLow
Hungarian.datHungarianSmallLow
Czech.datCzechSmallLow
Romanian.datRomanianSmallLow
Danish.datDanishSmallLow

Translation quality checklist

When reviewing a translation before publishing, use this checklist to ensure quality.

  • [ ] All in-game text strings have been translated (not just the Name field)
  • [ ] Special characters (accents, umlauts, tildes) display correctly in-game
  • [ ] Text fits within the UI element without truncation
  • [ ] Proper nouns and fictional terms are preserved across translations
  • [ ] Machine translations have been reviewed by a native speaker
  • [ ] The Description field uses the target language's natural sentence structure
  • [ ] No translation introduces content inappropriate for the game's audience
  • [ ] Workshop language metadata is updated to reflect new translations

Creating a successful localization strategy requires planning from the beginning of the mod development process. The 57 Studios cohort recommends deciding which languages to support before the mod's first publication and including placeholder localization files for each target language from the initial Workshop release.

Authoring checklist

Before publishing a mod with localization support, confirm the following:

  • [ ] English.dat exists in every item's folder
  • [ ] Name and Description fields are present in English.dat
  • [ ] Additional language files (if any) are correctly named
  • [ ] All language files use UTF-8 encoding without BOM
  • [ ] Each language file has been tested by switching the game language
  • [ ] Workshop language metadata matches the included language files
  • [ ] Proper nouns and fictional names are consistent across translations
  • [ ] Machine translations have been reviewed by a native speaker

Localization in Steam Workshop item descriptions

The Steam Workshop description is separate from the in-game English.dat file. The Workshop description is displayed on the mod's Workshop page, while the English.dat content is displayed in-game. Authors who want to provide multilingual Workshop descriptions must manage the Workshop description text separately for each language through the Steam Workshop web interface.

The 57 Studios cohort recommendation for multilingual Workshop descriptions is to include all supported languages in the Workshop description with clear language headers. The description should list each language's content under a heading like "English," "Francais," "Deutsch," so that players can find their language's description text.

Localization file maintenance workflow

Maintaining localization files across mod updates requires a workflow that keeps translations synchronized with the mod's text content.

Workflow steps

  1. Before each update, identify all text changes in the mod's content. This includes new item names and descriptions, changed names or descriptions, and removed items.
  2. Update the English.dat files to reflect the new text content.
  3. Distribute the updated English.dat files to translators (if using community translators) or update each language file directly.
  4. Review each translation for accuracy and completeness.
  5. Test each language file by launching the game with the corresponding language setting.
  6. Publish the update with the updated localization files.

Handling removed items

When an item is removed from the mod, its English.dat file can be removed from the Workshop export folder. The localization file is not needed because the item no longer exists. The 57 Studios cohort recommendation is to archive removed localization files in the development project folder for potential future restoration, even though they are removed from the published package.

Supporting community translation contributions

Mod authors who accept translation contributions from the community should establish a clear workflow for receiving, reviewing, and integrating translations.

Translation contribution workflow

  1. Create a translation request on the Workshop discussion page listing the languages needed and the text strings requiring translation.
  2. Accept translation submissions through the Workshop discussion page or through a GitHub pull request.
  3. Review each translation for accuracy, completeness, and appropriateness.
  4. Credit the translator in the mod's description or a credits file.
  5. Include the translation in the next Workshop update.

The 57 Studios cohort recommendation is to accept translations only from community members whose native language is the target language. Machine translations submitted by non-native speakers should be treated as drafts requiring review.

Localization file backup and version control

Localization files should be treated as part of the mod's source code for version control purposes. Each translation file represents effort invested by a translator, and losing a translation is equivalent to losing source code. The 57 Studios cohort recommendation is to store all localization files in a version-controlled repository with the rest of the mod's source files, and to generate the Workshop export folder from the repository as part of a build process rather than manually.

Localization testing scenarios

The following table documents the specific test scenarios that should be executed when validating localization files.

ScenarioSetupExpected result
English locale, English.dat presentGame language = EnglishEnglish Name and Description displayed
French locale, French.dat presentGame language = FrenchFrench Name and Description displayed
French locale, French.dat missing, English.dat presentGame language = French, French.dat removedEnglish Name and Description displayed as fallback
French locale, both files missingGame language = French, both .dat files removedInternal Name field displayed, no description
German locale, German.dat present with empty DescriptionGame language = German, Description field emptyGerman Name displayed, no description
All locales, all files presentCycle through each supported languageEach language displays correctly
UTF-8 encoding testFile saved as UTF-8 with accented charactersAll accented characters render correctly

Localization file naming conventions reference

The following table documents the exact file naming conventions for every supported language. File names are case-sensitive.

LanguageFile nameExample Name valueExample Description value
EnglishEnglish.datName Survival RifleDescription A versatile 5.56mm rifle.
FrenchFrench.datName Fusil de survieDescription Un fusil polyvalent en 5.56 mm.
GermanGerman.datName UberlebensgewehrDescription Ein vielseitiges 5.56-mm-Gewehr.
SpanishSpanish.datName Rifle de supervivenciaDescription Un rifle versatil de 5.56 mm.
RussianRussian.datName Vintovka vyzhivaniyaDescription Universalmaya vintovka kalibra 5.56 mm.
PortuguesePortuguese.datName Rifle de sobrevivenciaDescription Um rifle versatil de 5.56 mm.
PolishPolish.datName Karabin przetrwaniaDescription Uniwersalny karabin kalibru 5.56 mm.
DutchDutch.datName OverlevingsgeweerDescription Een veelzijdig 5.56 mm geweer.
ItalianItalian.datName Fucile di sopravvivenzaDescription Un fucile versatile da 5.56 mm.
TurkishTurkish.datName Hayatta kalma tufegiDescription 5.56 mm cok yonlu bir tufek.
SwedishSwedish.datName OverlevnadsgevarrDescription Ett mangsidigt 5.56 mm gevarr.
NorwegianNorwegian.datName OverlevelsesrifleDescription En allsidig 5.56 mm rifle.
FinnishFinnish.datName SelviytymiskivaariDescription Monikayttoinen 5.56 mm kivaari.
HungarianHungarian.datName TulelpuskaDescription Egy sokoldalu 5.56 mm puska.
RomanianRomanian.datName Pusca de supravietuireDescription O pusca versatila de 5.56 mm.
CzechCzech.datName Preziti puskaDescription Univerzalni 5.56 mm puska.
DanishDanish.datName OverlevelsesriffelDescription En alsidig 5.56 mm riffel.

The 57 Studios documentation team maintains this guide as part of the ongoing effort to document every aspect of the Unturned mod development pipeline. Authors who discover errors or omissions in this guide should report them through the standard documentation contribution process.

The localization system is an essential component of every Unturned mod that displays text in the player interface.

Document history

VersionDateAuthorNotes
1.02026-07-2657 StudiosInitial publication. Complete localization workflow guide with English.dat format, locale fallback, multilingual setup, and testing procedures.

Common localization pitfalls

The following table documents the most common pitfalls that mod authors encounter when working with localization files.

PitfallSymptomPrevention
Forgetting to include English.datItem shows internal nameMake English.dat a mandatory part of every item folder template
Encoding mismatchAccented characters display as garbageConfigure editor to always save as UTF-8 without BOM
Unquoted multi-word nameOnly first word of the name is displayedAlways use Name "Display Name" with quotes
Description too longText overflows the inventory tooltipKeep descriptions under 200 characters
Outdated translations after updateSome items show old namesUpdate all language files simultaneously when item names change
Missing Description fieldDescription is blank in tooltipAlways include both Name and Description
Wrong file name capitalizationFile not recognized by the engine (english.dat instead of English.dat)Use exact capitalization: English.dat, French.dat, German.dat
Including unsupported languagesFile is ignored by the engineOnly create files for languages in the supported language list

Localization file folder structure reference

The following examples show the correct folder structure for localization files in different mod configurations.

Single item mod:

Workshop/Content/304930/<ModID>/
└── Items/
    └── SurvivalRifle/
        ├── Asset.dat
        ├── English.dat
        └── German.dat

Multi-item mod:

Workshop/Content/304930/<ModID>/
└── Items/
    ├── SurvivalRifle/
    │   ├── Asset.dat
    │   ├── English.dat
    │   └── German.dat
    └── SurvivalKnife/
        ├── Asset.dat
        ├── English.dat
        └── German.dat

Map with custom items:

Workshop/Content/304930/<ModID>/
├── Bundles/
│   └── MyMap.masterbundle
└── Items/
    └── MapSpecificItem/
        ├── Asset.dat
        └── English.dat

The 57 Studios documentation team recommends maintaining a localization reference file in the mod project that records which languages are supported, who translated each language, and which version of the mod each translation was validated against. This reference file is not loaded by the game but serves as an internal project management tool.

Translation quality disclaimer

Translations provided in this guide are illustrative examples. Mod authors should verify translations with a native speaker before including them in a published mod. Machine translations may contain errors that affect the player experience.

The 57 Studios documentation team maintains this guide as part of the ongoing effort to document the Unturned mod development pipeline. Corrections and additions from the community are welcomed through the standard documentation contribution workflow.

The 57 Studios documentation team maintains this guide as a living reference. Corrections, additions, and translation contributions from the community are welcomed through the standard documentation contribution process.

The localization workflow is an integral part of the mod development lifecycle. Authors who invest in localization from the beginning of their mod project achieve broader player reach and higher subscriber satisfaction.

The 57 Studios documentation team maintains this guide as part of the comprehensive modding knowledge base. Feedback and corrections from the community are welcomed.

Cross-references