Skip to content

Releases: EMP-UA/SW_EaW-Localization-Suite-UA_EN

EaW Texture Converter v1.0.0

Choose a tag to compare

@EMP-UA EMP-UA released this 07 Jun 09:18

🖼️ EaW Texture Converter v1.0.0

🇺🇦 Українська

Перша версія інструменту на базі WPF для пакетної конвертації DDS-текстур у модифікаціях для Star Wars: Empire at War.

Основні можливості:

  • DDS → PNG: декодування форматів DXT1, DXT3 та DXT5 за допомогою бібліотеки Magick.NET із збереженням альфа-каналу.
  • PNG → DDS: запис нестиснутих даних у форматі BGRA (32bpp), сумісному з DirectX 9 та ігровим рушієм Alamo.
  • Визначення шляхів: автоматичне розпізнавання кореневої папки модифікації за структурою Data\Art.
  • Збереження структури: відтворення відносної структури підпапок у вихідній директорії під час конвертації.
  • Сумісність: підтримка стандартних шляхів розташування текстур гри (Data\Art\Textures та Data\patch2\DATA\ART\TEXTURES).
  • Інтерфейс: підтримка темної та світлої тем, двомовна локалізація (UA/EN).
  • Автономність: робота без використання сторонніх консольних утиліт (використовуються лише інтегровані NuGet-залежності).

🇺🇸 English

Initial release of the WPF-based tool for batch DDS texture conversion in Star Wars: Empire at War mods.

Key Features:

  • DDS → PNG: decoding of DXT1, DXT3, and DXT5 formats using Magick.NET while preserving the alpha channel.
  • PNG → DDS: custom binary writing of uncompressed BGRA (32bpp) data compatible with DirectX 9 and the Alamo engine.
  • Path Detection: automatic detection of the mod root folder based on the Data\Art structure.
  • Structure Preservation: automatic recreation of the relative subfolder structure in the output directory.
  • Compatibility: support for standard game texture paths (Data\Art\Textures and Data\patch2\DATA\ART\TEXTURES).
  • User Interface: support for dark and light themes, bilingual UI (UA/EN).
  • Self-contained Logic: operates without external command-line executables (relies solely on integrated NuGet dependencies).

⚙️ Системні вимоги / System Requirements

EaWLocalizationTool.GUI — v1.0.2

Choose a tag to compare

@EMP-UA EMP-UA released this 06 Jun 07:20

EaWLocalizationTool.GUI — v1.0.2

UA: Патч-реліз з розширеними правилами визначення технічних рядків та подвійним захистом системних маркерів.
EN: Patch release with expanded technical entry detection rules and dual protection for system markers.


✨ Що нового / What's New (v1.0.2)

GUI (EaWLocalizationTool.GUI)

  • [IMPROVED] Визначення технічних рядків / Technical entry detection:

    • UA: Розширено правила визначення технічних рядків: додано розпізнавання фрази DO NOT DISPLAY для прихованого тексту.
    • EN: Expanded technical entry detection rules: added recognition for the DO NOT DISPLAY phrase for hidden text.
  • [IMPROVED] Захист системних маркерів / System marker protection:

    • UA: Системний маркер кінця файлу TEXT_END_OF_DATA тепер жорстко розпізнається як технічний рядок. Це візуально блокує його для випадкового перекладу в GUI, гарантуючи, що рушій гри завжди отримає оригінальні байти.
    • EN: The end-of-file system marker TEXT_END_OF_DATA is now hardcoded as a technical entry. This visually blocks it from accidental translation in the GUI, ensuring the game engine always receives the original bytes.

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

  1. UA: Завантажте EaWLocalizationTool.GUI_v1.0.2.zip нижче
    EN: Download EaWLocalizationTool.GUI_v1.0.2.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

EaWLocalizationTool.GUI — v1.0.1

Choose a tag to compare

@EMP-UA EMP-UA released this 04 Jun 18:54

EaWLocalizationTool.GUI — v1.0.1

UA: Патч-реліз з додаванням системи автоматичного збереження прогресу, логування помилок та налаштування інтервалів.
EN: Patch release adding automatic progress saving, error logging, and interval configuration.


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

  1. UA: Завантажте EaWLocalizationTool.GUI_v1.0.1.zip нижче
    EN: Download EaWLocalizationTool.GUI_v1.0.1.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 (v1.0.1)

GUI (EaWLocalizationTool.GUI)

  • [NEW] Autosave / Автозбереження:
    • UA: Додано таймер автозбереження (за замовчуванням 5 хв). Програма автоматично записує зміни у файл [Назва]_AUTOSAVE.dat поруч із оригіналом, запобігаючи втраті прогресу при раптових збоях.
    • EN: Added autosave timer (default 5 mins). The app automatically writes changes to [Name]_AUTOSAVE.dat next to the original, preventing progress loss during unexpected crashes.
  • [NEW] Logging / Логування:
    • UA: Додано глобальний обробник помилок та запис подій у файл logs/app.log для швидкої діагностики крашів та збоїв.
    • EN: Added global exception handler and event logging to logs/app.log for quick crash and failure diagnostics.
  • [NEW] Config UI / Інтерфейс конфігу:
    • UA: У вікно конфігурації додано поле для налаштування інтервалу автозбереження. Введення значення 0 повністю вимикає таймер.
    • EN: Added a field to the config window to customize the autosave interval. Entering 0 completely disables the timer.

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

EaWLocalizationTool.GUI_v1.0.1.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

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