Back to Home

Project Progress

FL-Lingo

Active Development
71% Overall
Core Compare Pipeline79%
Translation Workflow68%
Expert Tools and QA66%

Current focus: stabilizing Expert Mode and further automating the translation pipeline.

Project Details

FL-Lingo

FL-Lingo is a relocalization tool for Freelancer mods. It compares a currently modified installation against a clean reference installation, restores known vanilla text automatically, exports mod-specific entries for external translation, and writes localized results back to resource DLLs using a backup-first strategy.

Relocalization DLL-Workflow In Development

Overview

FL-Lingo is designed for the common case where a Freelancer mod resets a localized installation back to English or other mod-defined text. It compares a modified game install with a clean target-language reference and classifies entries into auto-restorable, already localized, manually translated, or mod-specific content.

Quick Facts

  • Type: desktop app for Windows and Linux
  • Role: compare, export, import, and apply workflow
  • Status: actively developed

Installation

  • Use Python 3.11+
  • Create a virtual environment and run `python -m pip install -e .[all]`
  • Start via `python launch.py` from the project root

Quick Start

  • Select the current modified Freelancer installation
  • Load a clean reference installation in the target language
  • Run compare, export mod-specific entries, import translations, and apply

Key Features

  • Simple Mode for guided three-column workflows
  • Expert Mode with filters, DLL analysis, manual corrections, and terminology
  • Automatic backups before write operations and in-app restore

Technical Notes

  • Works with string tables, infocards, and DLL references from `EXE/freelancer.ini`
  • Supports terminology files per target language and `.FLLingo` project files
  • Tests run with `pytest`, GUI smoke tests run headless with `QT_QPA_PLATFORM=offscreen`

Safety

  • Automatic backups are created before applying changes
  • DLLs are not overwritten blindly and use the safest available write strategy
  • Recommended: test on a copy of the game with a clean reference install

Project Structure

  • `launch.py` starts the app with central defaults
  • `src/flatlas_translator/` contains UI, catalog, DLL, and write logic
  • `Languages/`, `data/help/`, `data/`, and `tests/` cover UI text, help, terminology, and tests