Skip to content
УКР

Tooling

The complete list of programs, libraries and reference sources used in the project: what each one is, where to get it, which version, under which license and exactly what it is used for. How to install and run everything is covered in setup.md.

The “Level” column shows when a tool is needed: text — building a text update without the game, native — building the plugin, full — rebuilding fonts and textures from the game files, research — investigations only.

Tool Version / license Purpose Level
TT Font Studio (online) current, MIT An in-browser editor for .FNT fonts: atlas, glyph rectangles, X/Y/Width, text preview. It grew out of the glyph viewer in which the sampling windows of the Ukrainian letters were tuned by hand (fonts.md). full, research
python -m ua (the ua/ folder) this repository, MIT The single CLI: validation, extraction, build, installation (setup.md). all
tools/ this repository, MIT Texture catalog with OCR, .FNT and dump inspectors, game memory reading. research
Tool Version / license Purpose Level
QuickBMS (Luigi Auriemma) 0.12.0 — current on the author’s site; GPL-2.0 Unpacking GAME.DAT, RAIDERS.DAT, TEMPLE.DAT, CRUSADE.DAT. Invoked by python -m ua extract. full
ttgames.bms script 0.9.11a; no license stated in the repository QuickBMS script for TT Games DAT files; explicitly supports LEGO Indiana Jones. full
TTGames-Explorer-Rebirth (AcK77) MIT Reference: its .ft2 parser (Formats/FT2.cs) hinted at the (X, Y, Width) glyph metric layout in our .FNT. No code was copied. research
TTGames LEGO Documentation (AlubJ) license not detected by GitHub Community documentation: how to unpack DAT files and run classic TT games from unpacked resources. research
BactaTank Classic (AlubJ) MIT A model and texture tool for classic TT games; reference for resource structure and for the practice of not distributing game resources. research
Tool Version / license Purpose Level
Ultimate ASI Loader (ThirteenAG) 9.7.4, x86, Ultimate-ASI-Loader-NoPDB.zip; MIT + licenses of bundled components dinput8.dll in the game root loads scripts/UKRAINIAN.asi and calls InitializeASI. The binary is vendored unchanged in native/vendor/ultimate-asi-loader-v9.7.4/, with its SHA-256 and provenance in provenance.json. native, release
Tool Version / license Purpose Level
Affinity (Designer / Photo) commercial Font identification by overlay, rendering Franklin Gothic Medium glyphs (46.62 pt, 3 pt outside stroke), texture and logo layers (.af in assets/). full (for graphics edits)
Franklin Gothic Medium (ITC / Monotype) commercial font, not shipped Source of the six new Font 1 letters. Obtain it legally and place it in local/fonts/. full
Adventure (Neale Davidson, Pixel Sagas) fan font, author’s terms Source of the Font 2 glyphs. Kept in local/donors/. full
A third-party Cyrillic font patch third-party material, not shipped Base atlas for Font 1. The file and its SHA-256 are described in manifests/inputs.json. full
ImageMagick 7.x, ImageMagick License Optimizing screenshots for the documentation and the site. documentation
Tool Version / license Purpose Level
Python 3.10+ (developed on 3.12); PSF The ua CLI, formats, UAP build, checks. all
Pillow current; MIT-CMU Glyph rendering, PNG ↔ DDS, texture previews. full
pytest current; MIT Tests for formats, the index and baseline reproduction. all
capstone optional; BSD Disassembly when analyzing crash dumps and reading memory. research
Visual Studio Build Tools, C++ workload (x86) 2022; free Microsoft license The cl.exe compiler for UKRAINIAN.asi and the x86 tests. native/build.ps1 finds it via vswhere. native
Windows SDK 10/11 Win32 headers and libraries for the plugin. native
PowerShell 5.1 or 7 native/build.ps1 and helper scripts. native
Windows OCR (Windows.Media.Ocr) built into Windows 10/11; requires the English language pack Recognizing the lettering on 5,939 textures while searching for what to translate. Tesseract was not used. research
Git, GitHub CLI current Repository work and publishing releases. release
Tool Purpose
Claude Code (Anthropic) Research into the game’s formats and memory, tools, tests, documentation, translation drafts.
Codex (OpenAI) The same: a second pair of eyes for research and code.

The division of roles between the author and AI is described in approach.md.

When the project was migrated, every script in the research archive that invokes an external program was checked against this list:

What was invoked Entry in the list
quickbms.exe + ttgames.bms QuickBMS
cl.exe, vswhere.exe in the plugin build Visual Studio Build Tools
Windows.Media.Ocr in the texture catalog OCR script Windows OCR
capstone in dump analysis and memory reading capstone
PIL in the font and texture builders Pillow
steam.exe -applaunch 32330 in test runs Steam (your own copy of the game)
powershell.exe / pwsh in the installer tests PowerShell