Files

38 lines
2.1 KiB
Markdown
Raw Permalink Normal View History

2026-09-12 11:01:37 +02:00
# TTK und Laufmündung
## Ziel
Längere Feuergefechte bei unverändertem Movement, Rückstoß, Feuertempo und 100 HP. Die zuvor gewünschte One-Shot-M77 bleibt erhalten. Mündungen werden aus dem Modellbau abgeleitet statt in Handlingprofilen geschätzt.
## Dateien / vollständiger Code
- `scripts/weapons.gd` / Arsenal: neue Schadenswerte.
- `scripts/weapon_models.gd` / WeaponModels: Muzzle-Marker an der Lauföffnung, gespeicherte lokale Koordinaten.
- `scripts/weapon_variants.gd`: eigene Laufenden für D58 und LM60.
- `scripts/shot_origin.gd` / ShotOrigin: serverautoritärer Schussursprung und animierter visueller Ursprung.
- `scripts/weapon_view.gd`: ausgerichtetes Mündungsfeuer.
- `scripts/weapon_handling.gd`: entfernt die veralteten, unabhängig gepflegten Mündungsschätzungen.
## Balancing
Benötigte Schüsse gegen 100 HP, naher Oberkörper, alle Schrotkörner treffen, ohne Schutz:
| Waffe | Schaden | Schüsse |
|---|---:|---:|
| AR-4 | 20 | 5 |
| V9 | 15 | 7 |
| SG-8 | 11 × 8 | 2 |
| M77 | 130 | 1 |
| P12 | 21 | 5 |
| D58 | 45 | 3 |
| LM60 | 26 | 4 |
| AK42 | 32 | 4 |
| K16 | 11 | 10 |
| AS12 | 7,5 × 6 | 3 |
Headshots, Gliedmaßentreffer, Distanz und Streuung verändern diese Werte. Granaten, Claymore, Nahkampf und Lebenspunkte wurden nicht verändert.
## Einbau und Tests
Aktuelles Projekt mit Godot 4.5 importieren und starten; beide LAN-PCs müssen denselben Stand verwenden. Keine neuen Assets nötig.
`tests/ttk_muzzle.gd` prüft 60 Fälle: Trefferanzahl, Laufenden aller zehn Modelle, animierte visuelle Mündung, Ausrichtung des Feuerblitzes und serverautoritären Ursprung für Hipfire/ADS. In `tests/Run-Tests.ps1` integriert. Der bestehende Headshot-Test vergleicht jetzt Kopf- und Körperschaden statt eines alten absoluten Grenzwerts.
Manuell: Schüsse bei Hipfire/ADS, Bewegung und Ducken ansehen; besonders AR-4 und Pistole. An Deckung herantreten und prüfen, dass der Lauf nicht durch Wände feuert. Typische Verwechslung: Eine höhere TTK bedeutet mehr benötigte Treffer, keine höhere Feuerrate. Serverseitige Trefferberechnung nutzt eine stabile Waffenhaltung; kosmetisches Wackeln bleibt auf die Darstellung beschränkt.