Architektur
Komponenten
TruckSimLogBook.Plugin
Native C++-DLL auf Basis des SCS Telemetry SDK. Zuständig für Kanäle, Gameplay-Ereignisse und Shared Memory.
TruckSimLogBook.Core
.NET-Kernbibliothek mit:
- Domänenmodellen
- Telemetrie-Leser
- Tourzustandslogik
- SQLite-Zugriff
- Statistikberechnung
- CSV-, JSON- und PDF-Export
- Konfigurations- und Launcher-Diensten
TruckSimLogBook.App
Unpackaged WinUI-3-Desktop-App für x64. Sie verwendet MVVM und bindet Ansichten an den gemeinsamen MainViewModel-Zustand.
TruckSimLogBook.Tests
Automatisierte Tests für zentrale Geschäftslogik und Datenverarbeitung.
Installer
Inno Setup veröffentlicht App, Konfiguration, Dokumente und Plugin. Das Setup verwaltet Neuinstallation und datenbewahrendes Update.
Repository-Gerüst
src/ App, Core, Plugin und Tests
scripts/ Build-, Release- und Prüfscripte
installer/ Inno-Setup-Definition und Assets, keine Release-Ablage
third_party/ SCS SDK und weitere unveränderte Abhängigkeiten
docs/ technische Dokumentation
wiki/ separates Wiki-Repository
build/ lokale versionierte Release-Artefakte
Das Gerüst entspricht dem gemeinsamen Bastelhof-Standard. Produktspezifisch
bleiben das native Plugin und der zusätzliche third_party-Bereich.
Freizugebende Versionen entstehen ausschließlich unter
build/trucksim_logbook/<version>. installer/out ist nur temporäres Staging
der Build-Skripte.
Datenfluss
- Das Spiel ruft das Plugin über die SCS Telemetry API auf.
- Das Plugin normalisiert Werte in einen Shared-Memory-Snapshot.
- Die App liest und validiert den Snapshot.
- Der Tourdienst erkennt Zustandsübergänge.
- Repository und Statistikdienst arbeiten auf SQLite.
- Die Oberfläche aktualisiert gebundene ViewModels.
Designziele
- vollständig lokale Datenhaltung
- klare Trennung zwischen nativer Telemetrie und .NET-App
- robuste Zustandsübergänge statt blindem Polling
- updatefähige Installationsstruktur
- nachvollziehbare Diagnose über Textlogs
TruckSim LogBook
Bedienung
- Dashboard
- Touren und Logbuch
- Statistiken
- Fahrerprofil
- Einstellungen
- Launcher
- Discord-Integration
- Exporte
Technik
- Telemetrie und Plugin
- Kosten und Ereignisse
- Datenbank und Dateien
- Architektur
- Entwicklung und Build
- Fehlerdiagnose
Projekt