scopedvr-map-editor/docs/tasten.md

14 KiB
Raw Permalink Blame History

Tastatur & Maus — Map-Editor

Deutsche Tastenbelegung des ScopedVR Map-Editors. Diese Datei ist die Source of truth für alle Shortcut-Karten — FINALE Version nach allen drei Karten: Karte 1/3 (t_c46d31c2): Navigation, Auswahl, Löschen · Karte 2/3 (t_55257792): Objektmanipulation + Terrain · Karte 3/3 (t_11b5c25b): Datei & Undo, Werkzeugwechsel, Hilfe, Test. Das Kurzhilfe-Overlay im Editor (Taste H) zeigt dieselbe Tabelle (Quelle: src/ui/help_text.gd).

Konventionen (alle Karten):

  • Tastaturcode-basiert: InputMap-Actions mit physischen KEY_*-Konstanten (src/editor/shortcut_keys.gd). Die physische Taste liegt unabhängig vom Tastaturlayout gleich — deutsches (QWERTZ) und Windows-Layout verhalten sich identisch, keine OS-Hardcodes (PLAN.md Plattform-Regel).
  • Jede Objekt-Operation = EIN ActionHistory-Eintrag (Strg+Z nimmt die ganze Operation zurück). Ausnahme: reine Kamera-Aktionen (Orbit/Flug/Zoom) betreffen die Map nicht und sind nicht in der Historie.
  • Strg halten = temporärer Snap-Zwang (Karte 2/3): egal was der Raster-Snap-Schalter sagt — solange Strg unten ist, rastet Bewegen (Ziehen/Greifen) und Platzieren auf ganze Meter.

Navigation (Kamera)

Eingabe Wirkung
Mittlere Maustaste ziehen Orbit: Um die Karte drehen
Mittlere Maustaste + Umschalt ziehen Pan: Karte verschieben
Mausrad Zoom (aus, wenn Mausrad gerade ein Objekt dreht)
Rechte Maustaste GEDACHT halten Freelook-Flug: Umsehen + W vor / S zurück / A links / D rechts; Leertaste hoch / Umschalt runter (Shooter-Konvention wie Half-Life/Counter-Strike — Sly-Wunsch 17.10.). Funktioniert in JEDEM Werkzeug (Terrain, Bauen, Spawn-Zonen, Platzieren) — die rechte Maustaste hat ABSOLUTEN Vorrang, kein Werkzeug belegt sie (Karte t_2470de89)
Strg halten (im Flug) schneller fliegen (×3) — temporär, Godot-üblich
Alt halten (im Flug) langsamer fliegen (×0,3)
Mausrad (im Flug) Grundgeschwindigkeit dauerhaft ändern (2–300 m/s)
Umschalt+F Freelook-Flug dauerhaft an/aus (Flug bleibt ohne gedrückte rechte Maustaste aktiv)
F Auswahl ins Bild zentrieren (Focus Selection)

Der Orbit-Modus ist der Default: Beim Verlassen des Flugs springt die Kamera nicht — Ziel/Winkel/Abstand werden aus der Flugposition zurückgerechnet.

Auswahl

Eingabe Wirkung
Linksklick Objekt auswählen (ersetzt die Auswahl)
Strg+Klick (Viewport und Objektbaum) Objekt zur Auswahl hinzufügen/entfernen (Mehrfachauswahl)
Umschalt+Klick wie Strg+Klick (Mehrfachauswahl umschalten)
Ziehen über leeren Boden Rahmen-Aufziehen: alle Objekte im Rahmen wählen
Umschalt + Rahmen Rahmen-Auswahl zur bestehenden Auswahl hinzufügen
Esc Werkzeug abbrechen → Greifen zurückrollen → Ghost-Preview abbrechen → Auswahl aufheben (Prioritätskette)

Alle Bestandsaktionen wirken auf die GANZE Mehrfachauswahl: Entf löscht alle, Strg+D dupliziert alle, Ziehen verschiebt gemeinsam, Anheben/Absenken hebt alle, Strg+G gruppieren / Strg+Umschalt+G lösen.

Objekt-Manipulation (Karte 2/3)

Eingabe Wirkung
R Auswahl 90° drehen (Vierteldrehung; Umschalt+R = −90°). Szene-Objekte drehen um den Auswahl-Mittelpunkt, Bauen-Bauteile um ihren Fußpunkt. Ein Objekt aus einer Gruppe dreht die GANZE Gruppe. Dauerhaft (kein Vorschau-Zustand)
Strg+R / Strg+Umschalt+R Auswahl um X kippen (+15° / −15°) — auch im Platzier-Modus (Ghost kippt mit). Karte t_e166e656
Alt+R / Alt+Umschalt+R Auswahl um Z kippen (+15° / −15°) — auch im Platzier-Modus. Karte t_e166e656
Mausrad (mit Auswahl) Feindrehen im 15°-Raster (bleibt wie bisher)
Pfeiltasten Auswahl im 2-m-Raster verschieben — EINE Zelle pro Tastendruck, Richtung = Kamera-Ausrichtung nächste Weltachse (Godot-Editor-Konvention: ↑ = von der Kamera weg). Fußpunkt bleibt am Raster, Höhe wandert mit
Bild↑ / Bild↓ Auswahl +0,25 m / −0,25 m anheben/absenken (Mehrfachdruck = EIN Undo-Schritt). Absenken UNTER die Terrain-Höhe ist erlaubt (Versenken — z. B. Steine im Boden); Untergrenze ist die Match-Grenze
Strg+Bild↑ Auswahl direkt auf das Terrain/Boden absetzen (Godot „Snap Object to Floor“-Äquivalent fürs Fußpunkt-Modell)
G Auswahl greifen (Blender-Semantik): sie hängt an der Maus, Linksklick setzt die neue Position (mit Raster-Snap bzw. Strg-Zwang), Esc bricht ab und setzt die exakten alten Positionen zurück. Greifen der ganzen Gruppe/mehreren Objekte wandert gemeinsam
Entf (DELETE) Auswahl SOFORT löschen, ohne Rückfrage — Strg+Z holt alles zurück. Wirkt auf Szene-Auswahl UND Objektbaum-Markierung
Strg+D Auswahl duplizieren: Kopie +2 m in X versetzt (Rasterversatz), Füßpunkt unverändert; bei Mehrfachauswahl ALLE Objekte mit EINEM Undo-Schritt
Strg+G / Strg+Umschalt+G Auswahl gruppieren / Gruppe lösen

Datei & Undo (Karte 3/3)

Vor „Neue Map“ und „Öffnen“ fragt der Editor NACH, wenn die Map noch ungespeicherte Änderungen hat (deutscher Dialog „Verwerfen / Abbrechen“) — nichts geht versehentlich verloren.

Eingabe Wirkung
Strg+Z Rückgängig (EIN Eintrag pro Operation)
Strg+Y UND Strg+Umschalt+Z Wiederherstellen (Redo) — beide Wege sind belegt
Strg+S Map speichern (.svmap, bekannter Pfad; noch nie gespeichert → „Speichern unter“)
Strg+Umschalt+S Map speichern unter …
Strg+O Map öffnen
Strg+N Neue Map

Updates (Datei-Menü)

Der Editor aktualisiert sich selbst aus seinem Git-Klon (Karte t_d95f087a) — kein Programmdownload, nur „Versionsstände holen“:

Weg Wirkung
Beim Start Still prüfen. Gibt es eine neuere Version, erscheint eine Bernstei-Leiste unter der Menüleiste: „🔄 Update verfügbar: <alt> → <neu>“
Banner → „🔄 Jetzt updaten“ Installiert das Update: neue Version laden (git pull), Import-Lauf, dann startet der Editor von selbst neu. Ungespeicherte Änderungen werden vorher abgefragt (derselbe Dialog wie bei „Neue Map“/„Öffnen“ — Abbrechen bricht das Update ab)
Datei → „🔄 Updates prüfen“ Gleicher Check auf Wunsch, mit Ergebnis-Meldung in der Statuszeile: „Update verfügbar“ / „Du bist auf dem neusten Stand (<sha>)“ / „Nicht erreichbar“
  • Offline / Tunnel weg: kein Banner, keine Meldung — der Editor bleibt einfach so, wie er ist. Prüfen kann man trotzdem: die Meldung sagt es dann in der Statuszeile.
  • Zugangsdaten fehlen (Karte t_1457e935): die Update-Prüfung läuft bewusst NIE interaktiv — es öffnet sich niemals ein Login-Fenster im Editor. Stattdessen kommt in der Statuszeile „Updates nicht prüfbar — Zugangsdaten fehlen“. Die Zugangsdaten liegen im Git-Credential-Store (~/.git-credentials, Host 127.0.0.1:13020); wenn sie fehlen, füllt sie ein Eintrag der Form http://<user>:<token>@127.0.0.1:13020 nach.
  • Fehlgeschlagener Import: bricht das Update mit Klartext-Meldung ab — der Editor läuft UNVERÄNDERT weiter (kein Neustart in einen kaputten Stand, Lektion 17.10. class_name-Cache).
  • Neustart: Der Editor startet sich selbst neu (dasselbe Godot-Programm, derselbe Projektordner, wieder im Editor-Modus). Wer den Editor als systemd-User-Unit betreibt, setzt in scopedvr_editor.cfg (Godot-App-Daten) Abschnitt [update] einen restart_command — z. B. restart_command="systemd-run --user --on-active=3s systemctl --user restart map-editor". Ohne Eintrag wird unter Linux automatisch erkannt, ob die Unit map-editor.service existiert; sonst Selbst-Restart.
  • Konfiguration (alle optional, user://scopedvr_editor.cfg, Abschnitt [update]): restart_command (eigener Neustart-Befehl), git_command (eigener git-Pfad). Der Import-Lauf nutzt dieselbe Godot-Binary wie der Editor selbst (bzw. [test] godot_path).

Kartengröße ändern (Datei-Menü)

„Kartengröße ändern…“ (Datei-Menü) öffnet einen Dialog mit Live-Vorschau:

  • Aktuelle Größe steht oben, darunter die neue Breite (X) und Tiefe (Z) in Metern — Freifelder plus Preset-Buttons 256 / 512 / 1024 / 2048 m (beide Achsen gleichzeitig). Erlaubt sind 256–4096 m (Werte außerhalb werden beim Anwenden an die Grenzen geklemmt).
  • Anker Mitte: Die Karte bleibt am Ursprung zentriert. Das bestehende Terrain behält seine WELTPOSITION (bilinear neu abgetastet — kein Stretch), die neue Randzone wird flach auf Grundhöhe + Gras. Beim Vergrößern steigt die Terrain-Auflösung automatisch mit (bis zum Format-Deckel 513 Punkte).
  • Verkleinern — Vorschau: Der Dialog listet VORHER, was draußen liegen würde („Beim Verkleinern liegen draußen: 5 Objekte, 2 Bauteile, 1 Spawn-Punkt“). Per Schalter entscheidest du, ob diese beim Anwenden entfernt werden (Standard: ja — Strg+Z holt sie zurück) oder über den Rand hinaus in der Map bleiben — dann ist die Map nicht speicherbar (Regel: nichts außerhalb der Match-Grenzen), bis du die Einträge verschiebst oder löschst. Warnung, falls ein Team dadurch unter 4 Spawn-Punkte fällt (Maps brauchen mindestens 4 pro Team zum Speichern).
  • Vergrößern über ~1024 m — Warnband: Ab dieser Größe wird das Terrain grober aufgelöst (mehr Meter pro Höhenpunkt) — der Dialog weist auf die geringere Detail-Dichte und das Quest-Perf-Budget (Objektzahl/Draw-Calls) hin.
  • Wann erlaubt? Jederzeit — es muss nur eine Map existieren.
  • Undo: Der Resize ist EINE Undo-Einheit: Terrain, Objekte, Bauteile und Spawn-Zonen zusammen. Strg+Z stellt den kompletten Vorher-Zustand her (inkl. gelöschter Objekte), Strg+Y stellt den Resize wieder her. Nach dem Resize sind ungespeicherte Änderungen vorhanden (Speichern mit Strg+S signiert die Prüfsumme neu).

Terrain-Werkzeug (Karte 2/3) — nur aktiv, wenn das Terrain-Werkzeug an ist

Eingabe Wirkung
[ Pinselgröße verkleinern — durch die 3 Presets Klein (4 m) / Mittel (12 m) / Groß (32 m) zyklisch; Preset-Buttons, Slider und Label wandern mit
] Pinselgröße vergrößern (gleicher Zyklus, andere Richtung)
1 Pinselmodus Heben
2 Pinselmodus Senken
3 Pinselmodus Glätten
4 Pinselmodus Malen (mit der zuletzt gewählten Materialfarbe)
Linksklick-Ziehen Boden formen bzw. malen (je nach Pinselmodus)
Strg + Linksklick-Ziehen Gegenteil: bei Heben senkt er, bei Senken hebt er (Invert-Konvention wie Blender/Photoshop); im Malen-Modus malt Strg+Klick Gras zurück
Rechte Maustaste Kein Terrain-Strich mehr — gehört dem Freelook-Flug (absoluter Vorrang, siehe Navigation)
Strg halten temporärer Snap-Zwang beim Objekt-Bewegen/Platzieren (gilt editorweit, nicht nur hier)

Konfliktfreiheit: Die Ziffern 1–4 sind NUR im Terrain-Werkzeug belegt — im Objekt-/Bauen-Modus sind sie unbenutzt, im Flugmodus (rechte Maustaste gehalten) bleiben Leertaste/Shift/Strg die Kamera. Leertaste, Umschalt und Strg triggern im Flug KEINE Werkzeug-Aktion: Terrain senkt nur bei Strg+gedrücktem Linksklick (nicht bei Strg allein), Entf/Strg+Z & Co. bleiben unangetastet, und der Flug-Einstieg gibt den GUI-Fokus frei, damit Leertaste keinen fokussierten Button auslöst.

Werkzeuge (Karte 3/3: F-Tasten wechseln das Werkzeug)

Eingabe Wirkung
F1 Werkzeug: Terrain formen
F2 Werkzeug: Objekte platzieren/auswählen (Standard)
F3 Werkzeug: Bauen (Häuser)
F4 Werkzeug: Spawn-Zonen malen
Esc (im Terrain-/Spawn-/Bauen-Werkzeug) Werkzeug beenden — zurück zum Objekt-Werkzeug
Esc (beim Greifen) Greifen abbrechen, alte Positionen zurück
Esc (beim Platzieren) Ghost-Preview abbrechen
Esc (Kurzhilfe offen) Kurzhilfe schließen
L Höhenlinien fixieren (Karte t_89c0ec95): Linien immer sichtbar/unsichtbar — unabhängig vom Werkzeug. Ohne Fix erscheinen sie NUR im Terrain-Werkzeug (F1)

F1–F4 und F5/H/L wirken NUR, wenn kein Textfeld/SpinBox fokussiert ist und kein Dialog offen ist (ShortcutPolicy) — Tippen geht immer vor.

Die Terrain-Ziffern 1–4 und [ / ] bleiben (Karte 2/3) NUR im Terrain-Werkzeug belegt — der Werkzeugwechsel läuft jetzt über die F-Tasten, nicht über Ziffern.

Höhenlinien-Kopplung (Karte t_89c0ec95): Die Konturen (1 m, alle 5 m kräftiger) sind Werkzeug-gekoppelt — F1 (Terrain) blendet sie ein, jeder andere Werkzeugwechsel blendet sie aus (hart, ohne Fade). Wer sie dauerhaft will, fixiert sie mit L oder dem Button „≈ Höhenlinien“ oben. Das Relief-Shading (Hillshade + Höhen-Kurve) bleibt davon unberührt und immer an. Auf flachen Maps (< 2 m Gesamtrelief) sind die Linien automatisch aus. L ist sonst unbesetzt (Kollisions-Prüfung t_89c0ec95).

Hilfe & Test (Karte 3/3)

Eingabe Wirkung
H Kurzhilfe-Overlay an/aus — alle Tasten dieser Datei als Panel über der Karte; Esc schließt ebenfalls. Nicht-blockierend: der Editor bleibt bedienbar
T Werkzeug: Test-Startpunkt setzen (Karte t_96e3c4ee): Klick in die Karte = dort startet F5. Höhe kommt automatisch vom Terrain; Klick auf Objekt/Bauteil = Boden darunter; Entf im Werkzeug löscht den Punkt. KEIN Spiel-Spawnpunkt — er landet in einer Editor-Sidecar-Datei, nicht in der .svmap (Spawn-Checks/Analysen unberührt). Im Testlauf versetzt T dich sofort zum Blickpunkt und setzt dort den Test-Start
F5 ▶ Karte testen (aktuelle Map sofort als Spiel durchlaufen; der Editor bleibt offen). Start-Reihenfolge: gesetzter Test-Start → erster Team-Spawnpunkt → Kartenmitte (je mit Klartext-Hinweis)

Die Statuszeile unten zeigt PERMANENT das aktive Werkzeug („Werkzeug: …“) plus den Hinweis „Umschalt+F = Flugmodus“ — man sieht immer, wo man ist.