Localization Guide: Language Support & Setup
Localization is the process of preparing Oxygen Not Included for players in different languages and regions: translating in‑game names and strings, handling non‑ASCII page or key formats, and mapping in‑game identifiers to localized text. Proper localization preserves gameplay meaning, keeps technical identifiers intact, and ensures assets (images, units, element names) display correctly across languages.
Keys, identifiers, and in‑game names
- The game uses internal identifiers (code names) for many biomes, elements and objects. Localizers must map these identifiers to readable localized names while keeping the code name unchanged. Example mappings from the game code:
- Arboria → ForestDefault (internal name)
- Verdante → ForestLush (internal name)
- Volcanea → Volcanic (internal name)
- When an internal identifier differs from the display name, preserve the identifier in code and supply the localized display string in the translation files.
Elements, items and units
- Some items and materials are derived from other concepts and may cause confusion if translated imprecisely. Localizers must keep element and item distinctions consistent:
- Table Salt is not an element; its game element is named Salt. Translate the display name accordingly.
- Reed Fiber and Lumber are items made from Genetic Ooze; treat the source material consistently in descriptions.
- Units appear in several contexts and must match the game's presentation:
- Items like Lumber are sometimes displayed with “kg” and sometimes as integer “units”; translations should not change unit formats.
- Elemental and material names have language variants to provide. Examples:
Buildings, sensors and systems
- Preserve exact building names and their capitalization when translating UI labels so code references remain clear. Example names that require localization attention:
- Temperature Sensor (zh: 温度传感器 / ru: Сенсоры…)
- Filter Gate and related automation devices should keep their technical meaning.
Fire Pole (zh: 消防滑杆 / ru: Пожарный столб / pt‑br: Poste de Bombeiro)
- Historical or legacy attribute names changed between updates (for example an attribute previously named “cooking” was renamed). Translation of UI text must reflect the current game version terminology.
UI string formatting and special cases
- Some page names or keys include characters not supported by WikiName or by code-friendly identifiers. Allow alternate bracketed formatting for such names when creating pages or keys:
- Use BracketName to allow page or key names containing spaces or non‑ASCII characters.
- URLs and email addresses in localization or documentation should remain clickable; when displaying raw text, ensure typical URL/email patterns remain intact.
- Keep formatting tokens, markup and placeholders intact in translated strings (for example {0}, %s, newline tokens). Do not translate or remove technical tokens.
Graphics, previews and asset variants
- Some assets have multiple visual variants between expansions/updates (e.g., Spaced Out DLC). Localized text should indicate the correct variant when describing an asset:
- Cargo Bay differs between base game and Spaced Out expansion (size and appearance differ). Use accurate descriptive text tied to the variant.
- Many elements and objects have preview tiles or gallery images; localizers should ensure image captions and alt text are localized while image filenames and asset references remain unchanged.
Names with multiple language entries
- Provide localized strings for every supported language explicitly. The source material includes Chinese (zh), Russian (ru), Portuguese (pt‑br) examples; ensure your translation files include entries for each target language rather than relying on fallback.
- When the same term appears in multiple places (e.g., page title, gallery caption, engineering note), translate it consistently.
Technical notes for translators
- Do not change internal identifiers or code names; only supply the localized display value.
- Avoid inventing numerical values. If a string or tooltip contains a numeric gameplay value, reflect the exact in‑game value supplied by developers.
- Keep element and item relationships explicit in descriptions (for example “Reed Fiber — an item made of Genetic Ooze”).
- Maintain consistency for terms across the game: biome names, element names, building names, unit labels, and traits should use identical translations wherever they appear.
Practical examples and common mappings
- Biomes: ForestDefault → Arboria (display as Arboria / localized equivalent)
- Biomes: ForestLush → Verdante
- Biomes: Volcanic → Volcanea
- Items/elements:
Salt (element) — translate as the canonical “Salt” term for that language, not “Table Salt” unless context requires it.
- Traits/items: Lumber, Reed Fiber — indicate material source (
Genetic Ooze) where relevant.
Following these rules ensures localized builds of Oxygen Not Included remain faithful to the original game logic, are consistent across UI and content, and present a clear, playable experience to non‑English players.
