first commit
This commit is contained in:
145
README.md
Normal file
145
README.md
Normal file
@ -0,0 +1,145 @@
|
||||
# Projektstruktur & README
|
||||
|
||||
## 📁 Empfohlene Ordnerstruktur (Best Practice)
|
||||
```text
|
||||
bg1ee-tts/
|
||||
├── README.md
|
||||
├── docs/
|
||||
│ ├── architecture.md
|
||||
│ ├── extraction-guide.md
|
||||
│ ├── tools-installation.md
|
||||
│ └── lua-hook-spec.md
|
||||
├── data/
|
||||
│ ├── raw/
|
||||
│ │ ├── tlk/
|
||||
│ │ │ ├── dialog_de.tlk
|
||||
│ │ │ └── dialog_en.tlk
|
||||
│ │ └── dlg/
|
||||
│ ├── processed/
|
||||
│ │ └── dialogs.json
|
||||
│ └── mappings/
|
||||
│ └── npc_map.json
|
||||
├── scripts/
|
||||
│ ├── extract_tlk.py
|
||||
│ ├── parse_dlg.py
|
||||
│ ├── build_database.py
|
||||
│ └── selftest.py
|
||||
├── tts-service/
|
||||
│ ├── app/
|
||||
│ │ ├── main.py
|
||||
│ │ ├── engines/
|
||||
│ │ ├── cache/
|
||||
│ │ └── playback/
|
||||
│ ├── tests/
|
||||
│ └── requirements.txt
|
||||
├── lua-hook/
|
||||
│ ├── bg1ee_tts_hook/
|
||||
│ │ ├── dialog.lua
|
||||
│ │ └── mod.ini
|
||||
│ └── build_instructions.md
|
||||
├── audio/
|
||||
│ ├── de/
|
||||
│ └── en/
|
||||
└── tools/
|
||||
├── NearInfinity.jar
|
||||
└── weidu/
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
# 📘 README.md
|
||||
|
||||
## 🎯 BG1EE Dual‑Language TTS Projekt
|
||||
Dieses Repository enthält die vollständige Infrastruktur, um **Baldur's Gate Enhanced Edition (Steam)** automatisch in **Deutsch** und **Englisch** zu vertonen – live während des Spielens, mit Umschaltung per Hotkey.
|
||||
|
||||
Ziel: Dialog erscheint im Spiel → ID wird abgefangen → TTS erzeugt Audio → Audio wird abgespielt.
|
||||
|
||||
---
|
||||
|
||||
## 🚀 Features
|
||||
- Extraktion aller BG1EE‑Texte (DE & EN)
|
||||
- Parser für TLK + DLG Dateien → JSON‑Datenbank
|
||||
- TTS‑Backend mit mehreren Engines (Melo, Kokoro, F5‑TTS, Piper)
|
||||
- Live‑Integration via Lua‑Dialoghook
|
||||
- Plattformunabhängig (Linux: Entwicklung / Windows: Spielen)
|
||||
|
||||
---
|
||||
|
||||
## 🧩 Voraussetzungen
|
||||
Du benötigst:
|
||||
- **Baldur's Gate: Enhanced Edition (Steam)**
|
||||
- **Java 17+** (für Near Infinity)
|
||||
- **Python 3.10+**
|
||||
- **FastAPI**
|
||||
- Optional: GPU‑TTS Engines
|
||||
|
||||
---
|
||||
|
||||
## 🔧 Installation externer Tools
|
||||
### Near Infinity (TLK + DLG Viewer/Exporter)
|
||||
Download:
|
||||
https://github.com/Argent77/NearInfinity
|
||||
|
||||
```
|
||||
wget https://github.com/Argent77/NearInfinity/releases/latest/download/NearInfinity.jar
|
||||
```
|
||||
|
||||
### WeiDU (Modding Toolkit)
|
||||
Download:
|
||||
https://github.com/WeiDUorg/weidu
|
||||
|
||||
---
|
||||
|
||||
## 📥 BG1EE Dateien finden (Steam)
|
||||
Linux‑Pfad:
|
||||
```
|
||||
~/.steam/steam/steamapps/common/Baldur's Gate Enhanced Edition/data/
|
||||
```
|
||||
Windows‑Pfad:
|
||||
```
|
||||
C:\Program Files (x86)\Steam\steamapps\common\Baldur's Gate Enhanced Edition\data
|
||||
```
|
||||
|
||||
Relevante Dateien:
|
||||
- `lang/de_DE/dialog.tlk`
|
||||
- `lang/en_US/dialog.tlk`
|
||||
- `dialog.bif`
|
||||
- sämtliche `.dlg` Dateien
|
||||
|
||||
---
|
||||
|
||||
## 🏗️ Projektaufbau
|
||||
1. **TLK & DLG exportieren** (Near Infinity)
|
||||
2. **Parser ausführen** → erzeugt `dialogs.json`
|
||||
3. **TTS‑Service starten** (`uvicorn app.main:app`)
|
||||
4. **Lua‑Hook als Mod installieren**
|
||||
5. Spiel starten → Vertonung läuft automatisch
|
||||
|
||||
---
|
||||
|
||||
## 📚 Dokumentation
|
||||
- [docs/architecture.md](docs/architecture.md)
|
||||
- [docs/extraction-guide.md](docs/extraction-guide.md)
|
||||
- [docs/tools-installation.md](docs/tools-installation.md)
|
||||
- [lua-hook-spec.md](docs/lua-hook-spec.md)
|
||||
|
||||
---
|
||||
|
||||
## 📜 Rechtliches
|
||||
Dieses Projekt enthält **keine Originalspieldateien**.
|
||||
Alle Extraktionen müssen lokal auf einem legal erworbenen BGEE‑Spiel erfolgen.
|
||||
Siehe:
|
||||
- Baldur's Gate EE Copyright © Beamdog
|
||||
- https://store.steampowered.com/app/228280
|
||||
|
||||
Quellenverlinkungen enthalten nur **offizielle** Hersteller‑Seiten.
|
||||
|
||||
---
|
||||
|
||||
## 🤝 Mitwirken
|
||||
PRs, Issues und Erweiterungen willkommen. Dies ist ein technisches Forschungs‑ und Hobbyprojekt.
|
||||
|
||||
---
|
||||
|
||||
Fertig!
|
||||
|
||||
Reference in New Issue
Block a user