From da0e43a1fdca30b4ae62bb6941327f9578683401 Mon Sep 17 00:00:00 2001 From: D4rkst3r Date: Tue, 11 Aug 2026 08:58:01 +0200 Subject: [PATCH] docs: Testliste Nach Bereichen gruppiert, mit Prioritaet und Kennzeichnung dessen, was ohne laufendes Spiel gar nicht pruefbar war (Scuba-Lampe, IsHudHidden, Sync zu zweit). Abgehakt ist nur, was tatsaechlich lief. Co-Authored-By: Claude Opus 5 --- README.md | 1 + TESTING.md | 126 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 127 insertions(+) create mode 100644 TESTING.md diff --git a/README.md b/README.md index 0a25f49..b886893 100644 --- a/README.md +++ b/README.md @@ -258,6 +258,7 @@ Schachbrett, in Slot-Größe und klein, zum Gegenschauen nach Änderungen. > kommen korrekt raus. Der Umbau ist in [PLAN.md](PLAN.md) dokumentiert, inklusive der offenen Punkte. +Die Testliste liegt in [TESTING.md](TESTING.md). ## Offene Punkte diff --git a/TESTING.md b/TESTING.md new file mode 100644 index 0000000..0504f6a --- /dev/null +++ b/TESTING.md @@ -0,0 +1,126 @@ +# Testliste + +Stand nach dem ersten Ingame-Test am 2026-08-11. Abgehakt ist nur, was +tatsächlich im Spiel lief — nicht, was „sollte gehen". + +**Legende:** 🔴 kann die Resource unbrauchbar machen · 🟡 stört im Spiel · +🟢 Kosmetik oder Randfall · ❓ konnte ich hier gar nicht prüfen + +--- + +## 1 · Grundfunktion + +- [x] `diving_gear` benutzen → Ausrüstung wird angelegt +- [x] Nochmal benutzen → Ausrüstung wird abgelegt +- [x] Mit mehreren Flaschen im Inventar → Auswahlmenü zeigt alle mit Füllstand +- [ ] 🟡 Menü mit **einer** Flasche → wird übersprungen, direkt angelegt +- [ ] 🟡 Menü per ESC schließen → nichts passiert, Ausrüstung bleibt aus +- [ ] 🔴 Ganz **ohne** Flasche → Meldung „Du hast keine Tauchflasche dabei!", + keine Ausrüstung +- [ ] 🟡 Mit **leerer** Flasche (0 bar) → Meldung „Diese Tauchflasche ist leer!" +- [ ] 🟡 Anlegen im Wasser schwimmend → Meldung „Du musst auf festem Boden stehen" +- [ ] 🟡 Anlegen im Fahrzeug → dieselbe Meldung +- [ ] 🟢 Progressbar beim Anlegen abbrechen → keine Ausrüstung, keine Luft verbraucht + +## 2 · Flasche und Persistenz + +- [ ] 🔴 **Frisch gekaufte Flasche** (nie befüllt) → ist voll nutzbar. + *War der Bug von heute — `newTanksFull`* +- [ ] 🔴 Halb leer tauchen, ablegen, wieder anlegen → Restluft stimmt +- [ ] 🔴 Halb leer tauchen, **ausloggen und wieder rein** → Restluft stimmt +- [ ] 🔴 Halb leer tauchen, `ensure d4rk_divegear` → Restluft stimmt +- [ ] 🟡 Flasche im Inventar ansehen → `durability`-Balken zeigt den Füllstand +- [ ] 🟡 Flasche einem anderen Spieler geben → Restluft geht mit +- [ ] 🟡 Flasche in eine Kiste legen und wieder rausnehmen → Restluft bleibt +- [ ] 🟢 Alle vier Größen einmal durch → Laufzeiten passen ungefähr (5/10/15/20 min) + +## 3 · Auffüllen + +- [ ] 🟡 `diving_fill` benutzen → Auswahlmenü, Flasche wird voll, **eine** + Kartusche weg +- [ ] 🔴 Bei **voller** Flasche → Meldung, Kartusche wird **nicht** verbraucht +- [ ] 🟡 Unter Wasser → Meldung, kein Auffüllen +- [ ] 🟡 Progressbar abbrechen → Kartusche bleibt im Inventar +- [ ] 🟡 Getragene Flasche auffüllen → HUD springt sofort auf voll, + der nächste Sync macht es nicht wieder kaputt + +## 4 · Luft und Tiefe + +- [ ] 🟡 Über Wasser mit Ausrüstung stehen → Luft wird **nicht** verbraucht +- [ ] 🔴 Untertauchen → Luft läuft, Anzeige zählt runter +- [ ] 🟡 Warnungen bei 60 / 30 / 10 Sekunden → je genau **einmal** +- [ ] 🔴 Flasche leer unter Wasser → Meldung, Scuba aus, Ertrinken setzt ein +- [ ] 🟡 Tief tauchen → Verbrauch steigt sichtbar schneller als an der Oberfläche +- [ ] 🟢 20-Minuten-Flasche komplett leer tauchen → Laufzeit stimmt ungefähr, + keine Drift durch Frame-Drops + +## 5 · HUD + +- [x] Erscheint unter Wasser mit Ausrüstung, Tiefe/Luft/Druck stimmen +- [ ] 🟡 Auftauchen → HUD blendet weich aus +- [ ] 🟡 Ausrüstung ablegen während es sichtbar ist → HUD verschwindet +- [ ] 🟢 Farbstufen: bernstein unter 60 s, rot unter 10 s mit Pulsieren +- [ ] 🟢 Tiefe ab 25 m bernstein, Druck unter 50 bar rot +- [ ] 🟡 Eigene HUD-Taste (in den FiveM-Tastenbelegungen setzen) → blendet aus/ein +- [ ] ❓ 🟡 **`hudFollowGameHud`** — Spiel-HUD ausblenden (Screenshot-Script, + HUD-Toggle) → Tauch-HUD geht mit aus. *Ob `IsHudHidden()` darauf anspringt, + konnte ich nicht prüfen* +- [ ] 🟢 Export `exports.d4rk_divegear:setHudVisible(false)` funktioniert + +## 6 · Lampe + +- [x] Lampen-Anzeige im HUD schaltet um +- [ ] ❓ 🔴 **Mit Scuba-Kleidung am Ped** (Component 8) → Lampe leuchtet + tatsächlich. *Der Kernpunkt — bisher ungetestet* +- [ ] 🟡 **Ohne** Scuba-Kleidung → Meldung „Deine Tauchausrüstung hat keine Lampe." + statt stiller Wirkungslosigkeit +- [ ] 🟢 `/divelampcheck` (mit `debug = true`) → sagt richtig ja/nein +- [ ] 🟡 Ausrüstung ablegen mit Lampe an → Lampe geht aus, bleibt aus +- [ ] 🟡 Sterben mit Lampe an → Lampe aus + +## 7 · Ausrüstung bleibt dran + +*Der ursprüngliche Bug. Jeder Punkt hier ist ein eigener Weg, wie die Props +verschwinden konnten.* + +- [ ] 🔴 Emote starten (rpemotes o.ä.) → Maske und Flasche bleiben +- [ ] 🔴 Ragdoll: aus Höhe fallen, angefahren werden → bleiben +- [ ] 🔴 **Kleiderladen / Skin-Change** → Props hängen am neuen Ped, Scuba + funktioniert weiter. *Hier war der `onCache`-Bug* +- [ ] 🟡 In ein Fahrzeug ein- und aussteigen → Props bleiben, Scuba noch aktiv +- [ ] 🟡 Sterben und respawnen → Props weg, Flasche mit Restluft im Inventar +- [ ] 🟡 `ensure d4rk_divegear` während des Tauchens → keine Props als Leiche + in der Welt zurück + +## 8 · Zu zweit + +- [ ] 🔴 Beide mit Ausrüstung → jeder sieht Maske und Flasche des anderen +- [ ] ❓ 🔴 **Beide mit Lampe** → jeder sieht das Licht des anderen +- [ ] 🟡 Einer schaltet die Lampe → der andere sieht die Änderung sofort +- [ ] 🟡 Aus der Distanz zuschwimmen (Streaming) → Lampe des anderen ist an, + wenn er sie an hat. *Dafür ist der Abgleich-Thread da* +- [ ] 🟡 Einer stirbt/respawnt mit Lampe an → beim anderen geht sie aus + +## 9 · Serverseitige Prüfung + +- [ ] 🟢 Normal tauchen → **keine** Warnungen oder Korrekturen im Server-Log +- [ ] 🟡 Tief tauchen mit hohem Verbrauch → Server schreibt keine Luft zurück. + *Wenn doch: `maxDrainPerSecond` in `config/shared.lua` erhöhen* +- [ ] 🟢 Flasche wegwerfen während sie getragen wird → kein Fehler im Log + +## 10 · Performance + +- [ ] 🟢 Längerer Tauchgang → `resmon` bleibt niedrig +- [ ] 🟢 Mehrere Taucher mit Lampe gleichzeitig → keine spürbaren FPS-Einbrüche + +--- + +## Wenn etwas nicht stimmt + +Nützlich zum Melden: + +- `resmon 1` bzw. Server-Konsole für Fehlermeldungen +- Bei der Lampe: Ausgabe von `/divelampcheck` +- Bei Restluft-Problemen: Flasche im Inventar ansehen (`durability`-Balken) +- `debug = true` in `config/client.lua` schaltet `/divelamp` und + `/divelampcheck` frei