Skip to content

EaWLocalizationTool.GUI v1.0.0 — DAT Editor

Choose a tag to compare

@EMP-UA EMP-UA released this 04 Jun 01:40

EaWLocalizationTool.GUI — v1.0.0

UA: Перший публічний реліз WPF редактора DAT файлів для рушія Alamo.
EN: First public release of the WPF DAT file editor for the Alamo engine.


📦 Встановлення / Installation

  1. UA: Завантажте EaWLocalizationTool.GUI_v1.0.0.zip нижче
    EN: Download EaWLocalizationTool.GUI_v1.0.0.zip below

  2. UA: Розпакуйте у будь-яку папку (портативний, без інсталятора)
    EN: Extract to any folder (portable, no installer required)

  3. UA: Встановіть .NET 10 Desktop Runtime якщо ще не встановлено
    EN: Install .NET 10 Desktop Runtime if not already installed

  4. UA: Запустіть EaWLocalizationTool.GUI.exe
    EN: Run EaWLocalizationTool.GUI.exe

UA: Вимоги: Windows 10/11 x64
EN: Requirements: Windows 10/11 x64


✨ Що нового / What's New

Core — DAT Engine (EaWLocalizationTool.Core)

  • [FIX] DatProcessor.WriteSafe: UA: виправлено критичний баг — програма помилково додавала \0 в кінець кожного перекладеного рядка. Рушій Alamo сприймав цей символ як кінець файлу, через що crawl-текст (вступні титри) повністю переставав відображатись. EN: fixed critical bug — the app was incorrectly appending \0 to every translated string. The Alamo engine interpreted this as end-of-file, causing crawl text (intro titles) to stop rendering entirely.
  • [FIX] UA: Технічні рядки-роздільники crawl-тексту (пробіли, ___, ---) більше не отримують переклад — WriteSafe копіює для них оригінальні байти без змін. EN: Technical separator entries (whitespace, ___, ---) no longer receive translations — WriteSafe copies their original bytes unchanged.
  • [FIX] DatService: UA: замінено .ToDictionary() на foreach + TryAdd — усунуто виняток при дублікатах ключів (TEXT_END_OF_DATA та ін.). EN: replaced .ToDictionary() with foreach + TryAdd — eliminates exception on duplicate keys (TEXT_END_OF_DATA etc.).
  • [NEW] UA: DatProcessor.Parse() зберігає сирі байти CRC32 та KeyLength для кожного запису — гарантована побайтова точність при записі. EN: DatProcessor.Parse() stores raw CRC32 and KeyLength bytes per record — guarantees byte-perfect accuracy on write.
  • [NEW] UA: DatProcessor.ParseTsvTranslations() — читає TSV з будь-якою назвою колонки що містить "Translat". EN: DatProcessor.ParseTsvTranslations() — reads TSV with any column name containing "Translat".
  • [NEW] UA: DatProcessor.ExportTsv() — експорт у TSV з UTF-8 BOM для сумісності з Excel. EN: DatProcessor.ExportTsv() — exports to TSV with UTF-8 BOM for Excel compatibility.

GUI (EaWLocalizationTool.GUI)

  • [NEW] UA: Завантаження оригінального DAT + джерела перекладу (TSV або інший DAT). EN: Load original DAT + translation source (TSV or another DAT).
  • [NEW] UA: Шість фільтрів: Всі / Без перекладу / Перекладено / Змінено / Проблемні / Технічні. EN: Six filters: All / Untranslated / Translated / Modified / Issues / Technical.
  • [NEW] UA: Автоматична валідація перекладів: кількість \n, format-specifiers (%s, %d, %f...), [bracket tags], <angle tags>. EN: Automatic translation validation: \n count, format specifiers (%s, %d, %f...), [bracket tags], <angle tags>.
  • [NEW] UA: Розумне визначення технічних рядків (5 правил: порожні, без літер, TEXT_KEY_, [TBL], DO NOT USE тощо). EN: Smart detection of technical entries (5 rules: empty, no letters, TEXT_KEY_, [TBL], DO NOT USE etc.).
  • [NEW] UA: Кнопка «⚙ Очистити технічні» — видаляє переклад з усіх технічних рядків перед збереженням. EN: "⚙ Clear Technical" button — removes translation from all technical entries before saving.
  • [NEW] UA: Попередження при збереженні якщо технічні рядки мають переклад. EN: Warning on save if technical entries have translations.
  • [NEW] UA: Темна / світла тема з збереженням між сесіями. EN: Dark / light theme with persistence between sessions.
  • [NEW] UA: Масштабування шрифту (A- / A+) від 10 до 20pt, фіксований шрифт chrome UI. EN: Font scaling (A- / A+) from 10 to 20pt, fixed chrome UI font.
  • [NEW] UA: Контекстне меню (ПКМ): копіювати оригінал/ключ, вставити оригінал як переклад, очистити. EN: Context menu (RMB): copy original/key, paste original as translation, clear.
  • [NEW] UA: Пошук по всіх трьох полях (Key, Original, Translated) без урахування регістру. EN: Case-insensitive search across all three fields (Key, Original, Translated).
  • [NEW] UA: Скидання сортування до порядку оригінального файлу. EN: Reset sorting to original file order.
  • [NEW] UA: Збереження у новий DAT зі збереженою побайтовою структурою. EN: Save to new DAT with byte-perfect structure preservation.
  • [NEW] UA: Конфіг-вікно для збереження нотаток про шляхи до файлів (JSON). EN: Config window for saving file path notes (JSON).

UA: Консольний інструмент / EN: Console Tool (EaWLocalizationTool)

  • [FIX] ReviewBuilder: UA: виправлено нормалізацію шляхів (\/) при зіставленні TXT записів. EN: fixed path normalization (\/) when matching TXT entries.
  • [FIX] ReviewBuilder: UA: TryAdd замість прямого присвоєння — усуває падіння на дублікатах ключів DAT. EN: TryAdd instead of direct assignment — prevents crash on duplicate DAT keys.
  • [FIX] ReviewBuilder: UA: BadDataFound = null — програма більше не падає на пошкоджених TSV від API. EN: BadDataFound = null — app no longer crashes on malformed TSV files from the API.

🗂️ Вміст архіву / Archive Contents

EaWLocalizationTool.GUI_v1.0.0.zip
├── EaWLocalizationTool.GUI.exe          ← UA: головний виконуваний файл / EN: main executable
├── EaWLocalizationTool.GUI.dll          ← UA: бібліотека GUI / EN: GUI library
├── EaWLocalizationTool.Core.dll         ← UA: спільна бібліотека DAT engine / EN: shared DAT engine library
├── EaWLocalizationTool.GUI.deps.json    ← UA: залежності / EN: dependencies manifest
├── EaWLocalizationTool.GUI.runtimeconfig.json
├── CsvHelper.dll                        ← UA: обробка TSV / EN: TSV processing
└── AppIcon.ico

⚠️ Відомі обмеження / Known Limitations

  • UA: Редагує лише .dat файли. Для XML/TXT та повного циклу (export → translate → repack) використовуйте консольний EaWLocalizationTool.
    EN: Edits .dat files only. For XML/TXT and the full pipeline (export → translate → repack), use the console EaWLocalizationTool.
  • UA: Потребує .NET 10 Desktop Runtime (не включено в архів через розмір).
    EN: Requires .NET 10 Desktop Runtime (not bundled due to size).

🔗 Пов'язані інструменти / Related Tools

UA: Цей редактор — частина більшого тулсету.
EN: This editor is part of a larger toolset.

EMP-UA/SW_EaW-Localization-Suite-UA_EN