You are viewing a potentially older version of this package. View all versions.
HsgtLgt-Autolocalization-1.0.1 icon

Autolocalization

AutoLocalization is a game localization tool specifically designed for BepInEx mods. It exports descriptions and texts of configuration options for players to localize and translate, making it easy to localize all your mod settings!

Date uploaded 11 months ago
Version 1.0.1
Download link HsgtLgt-Autolocalization-1.0.1.zip
Downloads 530
Dependency string HsgtLgt-Autolocalization-1.0.1

This mod requires the following mods to function

denikson-BepInExPack_Valheim-5.4.2333 icon
denikson-BepInExPack_Valheim

BepInEx pack for Valheim. Preconfigured with the correct entry point for mods and preferred defaults for the community.

Preferred version: 5.4.2333
ValheimModding-YamlDotNet-16.3.1 icon
ValheimModding-YamlDotNet

Shared version 16.3.0 of YamlDotNet from Antoine Aubry and contributors, net47 package for use in Valheim mods. Maintained by the ValheimModding team.

Preferred version: 16.3.1

README

🚀 AutoLocalization Introduction

A game localization tool designed specifically for BepInEx mods, automatically exports configuration option text for player translation, making mod settings localization effortless!

✨ Core Features

  • 🌍 One-Click Translation: Automatically detects and translates configuration option descriptions
  • 🔄 Hot-Reload Compatible: No game restart needed after translation updates (takes effect in ~5 seconds)
  • 📥 Smart Text Collection: Automatically collects untranslated text from new mods
  • 🧠 Auto Detection: Recognizes configuration descriptions from all mods
  • 📝 Simple Translation Format: Uses easy-to-edit YAML files
  • 🌐 Multi-Language Support: Supports Chinese/Japanese/Korean and any other languages

📥 Installation Steps

  1. Download the mod file
  2. Extract to game root directory
  3. Place Autolocalization.dll in the BepInEx/plugins folder
  4. Start the game for automatic initialization

⚠️ Important Note: This mod MUST be the first loaded plugin! Plugins loaded before AutoLocalization cannot be translated


🛠️ User Guide

First Time Setup

  1. Start the game
  2. The mod will generate in BepInEx/config/AutoLocalizationEngine:
    • AutolocalizationGlobalTranslations.yaml (translation file)
    • AutolocalizationUntranslatedTexts.yaml (untranslated text)

🔧 Hot-Reload Process

  1. Edit AutolocalizationGlobalTranslations.yaml to add/update translations
  2. Save the file
  3. Wait about 5 seconds
  4. Return to game to see updates

➕ Handling New Mods

  1. Install new mod and start the game
  2. New text will be automatically added to AutolocalizationUntranslatedTexts.yaml
  3. Copy new entries to AutolocalizationGlobalTranslations.yaml
  4. Add translations and save for automatic loading

📝 Example YAML Format

Offset relative to the upper right corner of the inventory (side elements included): Offset from the inventory's upper right corner (including side elements)
Enabled slot obtaining progression. If disabled - all enabled slots will be available from the start. [Synced with Server]: Enable slot unlocking progression. When disabled - all slots available from start. [Synced with Server]
Main menu button caption: Main Menu Button Text
'[ServerSync] Gain XP when interacting with Pickables': '[ServerSync] Gain XP when interacting with Pickable objects'

❓ FAQ

Q: What to do if translations aren't working?
A:

  1. Check text matching: Ensure text in translation file exactly matches untranslated text (including case/spaces/punctuation)
  2. Verify load order: AutoLocalization must be the first loaded plugin
  3. Check YAML syntax: Ensure no missing colons/correct indentation/valid characters
  4. Wait for reload: Wait about 5 seconds after saving file
  5. Confirm file location: Located in BepInEx/config/AutoLocalizationEngine/

📜 Changelog

v1.0.0 (2025-07-23)

  • First stable release
  • Added debug mode

❤️ Support the Developer

If this mod has improved your gaming experience:

Developer's Note: Thank you for using AutoLocalization! Your support drives continuous improvement

CHANGELOG

📜 Changelog

v1.5.6

  • 🔧 Translation Key Conflict Detection - Added automatic detection and resolution for translation key conflicts:
    • System automatically detects when multiple original texts are translated to the same key
    • Automatically generates unique suffixes based on MD5 hash to prevent duplicate key errors
    • Prevents BepInEx configuration errors caused by duplicate keys
  • Translation Validation Mechanism - Enhanced translation validation to ensure compliance with BepInEx requirements:
    • Validates that translated text does not contain invalid characters (=, \n, \t, , ", ', [, ])
    • Ensures translated text has no leading or trailing spaces
    • Automatically removes invalid translations to prevent mod crashes
  • 🔄 Fixed Translation File Merging - Fixed issue where translation files were automatically merged during secondary collection:
    • Translation files now correctly merge without data loss
    • Improved file merging logic to handle multiple translation sources (translations.yaml and collected_items.yaml)
    • Added persistent group memory to maintain grouping stability across file saves
    • Note: This fix only affects grouping metadata, not user-provided translation text in translations.yaml
  • 🛡️ Enhanced Exception Handling - Optimized exception handling in configuration and GUID mapping stages:
    • Improved exception detection and handling during ConfigEntry/ConfigDefinition processing
    • Better error recovery and logging when building GUID mappings
    • Prevents crashes caused by unhandled exceptions in configuration processing

v1.5.5

  • 📝 YAML File Format Documentation Update - Translation files now support two formats:
    • Nested format: Grouped by mod GUID for easier management and organization of translation content
    • Flat format: A simple backward-compatible format suitable for small-scale translations
    • The system automatically recognizes and loads both formats, users can choose according to their needs
  • ⚙️ New Collection Feature Toggle Configuration - Added [Collection] configuration section in .com.HsgtLgt.autolocalization.cfg:
    • EnableCollection: Controls whether to enable the collection feature
    • After translation is complete, the collection feature can be disabled to improve game startup speed
    • When disabled, the system only applies existing translations and no longer collects new content

v1.5.4

  • 🎨 Updated Icons - Improved visual design and user interface with new icons
  • 📝 Updated MD Content - Enhanced documentation and markdown files for better readability and user guidance

v1.5.2

  • 🔧 Fixed Translation File Loading - System now correctly recognizes and loads user-provided translation files

v1.5.0

  • Complete core architecture rebuild
  • New high-performance caching system
  • Improved file management and user experience
  • Optimized translation workflow