Files
bg1-ee-voiceover/GEMINI.md
2025-12-07 19:47:40 +01:00

2.2 KiB

BG1EE Voiceover Project Context (v0.3)

1. Project Overview

Project Name: bg1-ee-voiceover
Goal: Create a robust dual-language (German/English) data foundation and game integration hook for Baldur's Gate: Enhanced Edition.

Current Scope (v0.3):

  • Focus: Data Extraction, Parsing, and Logging Hook.
  • Excluded: Active TTS generation and HTTP API (deferred to later phases).
  • Objective: Establish a clean, bilingual dialogs.json database and a working Infinity_Log trigger from within the game.

2. Architecture (v0.3)

The system is reduced to three core components:

  1. Extraction (Near Infinity):
    • Source: dialog.tlk (DE & EN), *.dlg, *.2da.
    • Output: JSON files in data/raw/.
  2. Parser (Python):
    • Input: Raw JSONs (tlk and dlg).
    • Logic: Match IDs across languages, link dialog nodes, map speakers.
    • Output: data/processed/dialogs.json.
  3. Lua Hook (Mod):
    • Location: lua-hook/bg1ee_tts_hook/.
    • Events: OnDialogStart, OnDialogNodeChange.
    • Action: Write ID to Infinity_Log.

3. Technology Stack

  • Extraction: Near Infinity (Java Tool).
  • Processing: Python 3.10+ (Standard Library + json).
  • Game Modding: Lua (embedded in BG1EE).

4. Immediate Roadmap (Phases)

  • Phase 1: Extract (NOW):
    • Export dialog.tlk (DE) -> data/raw/tlk/dialog_de.json.
    • Export dialog.tlk (EN) -> data/raw/tlk/dialog_en.json.
    • Export all *.dlg -> data/raw/dlg/*.json.
    • (Optional) Export npc.2da -> data/mappings/npc_map.json.
  • Phase 2: Parser (NEXT):
    • Implement Python parser to merge these inputs into dialogs.json.
  • Phase 3: Hook (PARALLEL):
    • Create dialog.lua to log dialog events.
  • Phase 4: Offline Rendering Prep (OPTIONAL):
    • Define WAV naming convention and folder structure.

5. Directory Structure

  • docs/: detailed specs (Architecture, Extraction, Project Plan).
  • data/:
    • raw/: Raw exports.
    • processed/: Final dialogs.json.
  • scripts/: Python ETL scripts.
  • lua-hook/: The game modification files.