docs: Stand nach dem Ingame-Test nachgezogen
Die Lampen-Phase im Plan beschrieb noch den DrawSpotLight-Eigenbau, und die offenen Punkte listeten Unsicherheiten (Prop-Name, Leuchtrichtung), die mit der Umstellung auf die native Scuba-Lampe hinfaellig sind. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
@@ -135,8 +135,15 @@ Tiefenanzeige und O2-Anzeige zusammen als ein NUI-Overlay — `qbx.drawText2d`
|
|||||||
|
|
||||||
### Phase 5 — Gesyncte Taschenlampe (~2–3 h)
|
### Phase 5 — Gesyncte Taschenlampe (~2–3 h)
|
||||||
|
|
||||||
Licht ist in GTA nie synchronisiert — jeder Client zeichnet das Licht für jeden
|
**Nachträglich komplett ersetzt.** Der ganze Abschnitt unten beschreibt den
|
||||||
Taucher in seiner Nähe selbst.
|
DrawSpotLight-Eigenbau — der ist raus. GTA hat seit v1493 eine eigene Lampe an der
|
||||||
|
Tauchausrüstung (`SetEnableScubaGearLight`, `0xEE2476B9EE4A094F`), gefunden über
|
||||||
|
[wobozkyng/esx_scuba](https://github.com/wobozkyng/esx_scuba). Die sitzt richtig,
|
||||||
|
leuchtet in Blickrichtung und macht Prop, Offsets, Kegelwerte, Distanzfilter und
|
||||||
|
Draw-Thread überflüssig. Geblieben ist nur der Statebag, weil der Flag ein lokaler
|
||||||
|
Ped-Zustand ist. Einschränkung: die Lampe hängt an der Scuba-Kleidung.
|
||||||
|
|
||||||
|
Der ursprüngliche Plan zum Vergleich:
|
||||||
|
|
||||||
- [x] Torch-Prop mit derselben harten Attach-Methode aus Phase 1 anhängen
|
- [x] Torch-Prop mit derselben harten Attach-Methode aus Phase 1 anhängen
|
||||||
(Kopf-Bone oder Hand, Config)
|
(Kopf-Bone oder Hand, Config)
|
||||||
@@ -231,24 +238,23 @@ Am 2026-08-10 festgelegt:
|
|||||||
|
|
||||||
## Offen
|
## Offen
|
||||||
|
|
||||||
Alles unten ist **ungetestet im Spiel** — es gibt hier keinen FiveM-Server. Geprüft
|
Ingame getestet (2026-08-11): Anlegen/Ablegen, Flaschenauswahl, Luftverbrauch,
|
||||||
sind nur Lua-Syntax und Globals (`node ../.tools/lint.mjs`, 0 Warnungen), die
|
HUD mit Tiefe und Druck, Lampe. Zwei Bugs kamen dabei raus und sind gefixt —
|
||||||
Locale-JSONs und das HUD im Browser.
|
`consume = 0` im Item-Snippet (der qbx-Callback feuerte nie) und leere
|
||||||
|
Metadata bei frisch gekauften Flaschen.
|
||||||
|
|
||||||
1. **Lampen-Prop `prop_cs_police_torch`** — Name ungeprüft. Ist er falsch, meldet
|
1. **Scuba-Lampe braucht die Scuba-Kleidung** (Component 8). Auf Wunsch des Users
|
||||||
das Script eine Warnung und leuchtet ohne sichtbares Prop weiter.
|
fasst die Resource das Outfit nicht an — wer keine trägt, bekommt eine Meldung.
|
||||||
Ersatz suchen: [forge.plebmasters.de/objects](https://forge.plebmasters.de/objects)
|
Soll die Ausrüstung die Kleidung selbst setzen, muss das inklusive Sichern und
|
||||||
2. **`lampDirection`** — welche lokale Achse des Kopf-Bones nach vorne zeigt, hängt
|
Wiederherstellen gebaut werden (wie in wobozkyng/esx_scuba).
|
||||||
am Skelett. Leuchtet der Kegel falsch herum, in `config/client.lua` die Achse
|
2. **`IsHudHidden()`** — ungetestet, ob die Native auf `DisplayHud(false)`
|
||||||
tauschen oder das Vorzeichen drehen.
|
anspringt. Falls nicht, greifen Taste und Export weiterhin.
|
||||||
3. **Auto-Anziehen nach Relog** (siehe Phase 2) und **HUD-Position in der Config**
|
3. **Auto-Anziehen nach Relog** und **HUD-Position in der Config** sind nicht
|
||||||
(Phase 4) sind nicht umgesetzt.
|
umgesetzt.
|
||||||
4. **`IsHudHidden()`** — ob die Native wirklich auf `DisplayHud(false)` anspringt,
|
4. **Balancing:** `maxDrainPerSecond = 5.0` muss über `maxDecayFactor = 4.0` liegen,
|
||||||
ist ungetestet. Falls nicht, greifen weiterhin die eigene Taste und der Export;
|
|
||||||
`hudFollowGameHud` lässt sich dann abschalten.
|
|
||||||
5. **Balancing:** `maxDrainPerSecond = 5.0` muss über `maxDecayFactor = 4.0` liegen,
|
|
||||||
sonst bekommen ehrliche Spieler in großer Tiefe vom Server Luft zurückgeschrieben.
|
sonst bekommen ehrliche Spieler in großer Tiefe vom Server Luft zurückgeschrieben.
|
||||||
Wer den Tiefenfaktor hochdreht, muss beides nachziehen.
|
Wer den Tiefenfaktor hochdreht, muss beides nachziehen. Die Laufzeiten selbst
|
||||||
|
sind noch nicht am Spielgefühl geprüft.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|||||||
@@ -259,20 +259,21 @@ Schachbrett, in Slot-Größe und klein, zum Gegenschauen nach Änderungen.
|
|||||||
|
|
||||||
Der Umbau ist in [PLAN.md](PLAN.md) dokumentiert, inklusive der offenen Punkte.
|
Der Umbau ist in [PLAN.md](PLAN.md) dokumentiert, inklusive der offenen Punkte.
|
||||||
|
|
||||||
## Bekannte Unsicherheiten
|
## Offene Punkte
|
||||||
|
|
||||||
Bisher **nicht im Spiel getestet** — geprüft sind Lua-Syntax und Globals, die
|
Ingame getestet sind Anlegen und Ablegen, Flaschenauswahl, Luftverbrauch, HUD mit
|
||||||
Locale-JSONs und das HUD im Browser.
|
Tiefe und Druck sowie die Lampe. Noch offen:
|
||||||
|
|
||||||
- **`lampProp`** — der Prop-Name ist ungeprüft. Falls falsch: Warnung im Log, das
|
- **Scuba-Lampe ohne passendes Outfit** — sie hängt an der Scuba-Kleidung
|
||||||
Licht funktioniert weiter, nur ohne sichtbares Prop. Ersatz finden:
|
(Component 8). Wer die nicht trägt, bekommt eine Meldung. Soll die Ausrüstung
|
||||||
[forge.plebmasters.de/objects](https://forge.plebmasters.de/objects)
|
das Outfit selbst setzen, muss das noch gebaut werden (inklusive Sichern und
|
||||||
- **`lampDirection`** — welche lokale Achse des Kopf-Bones nach vorne zeigt, hängt
|
Wiederherstellen der vorherigen Kleidung).
|
||||||
am Skelett. Leuchtet der Kegel falsch herum: Achse tauschen oder Vorzeichen drehen.
|
|
||||||
- **`IsHudHidden()`** — ob die Native auf `DisplayHud(false)` anspringt, ist
|
- **`IsHudHidden()`** — ob die Native auf `DisplayHud(false)` anspringt, ist
|
||||||
ungetestet. Falls nicht, greifen Taste und Export weiterhin.
|
ungetestet. Falls nicht, greifen Taste und Export weiterhin.
|
||||||
- Nach einem Relog muss die Ausrüstung neu angelegt werden. Die Restluft geht
|
- **Nach einem Relog** muss die Ausrüstung neu angelegt werden. Die Restluft geht
|
||||||
dabei nicht verloren, die liegt auf der Flasche.
|
dabei nicht verloren, die liegt auf der Flasche.
|
||||||
|
- **HUD-Position** ist nur in `nui/style.css` einstellbar, nicht in der Config.
|
||||||
|
- **Balancing** — die Laufzeiten sind gesetzt, aber nicht am Spielgefühl geprüft.
|
||||||
|
|
||||||
## Lizenz
|
## Lizenz
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user