Files
Viano-Core/doc/clientless/stormwind-mage-tower.md
T
Nico 4474714c00
GCC PCH / build (push) Canceled after 0s
clang PCH / build (push) Canceled after 0s
Support interactive object portals and document travel route recording
Bind directed portal_use edges to native GameObject spawns and spell destinations. Execute normal clicks and verify completed clientless teleports, with regression coverage. Document live portal tests, mage tower calibration, Badlands portals and transport recording workflows.
2026-10-26 14:01:42 +01:00

93 lines
4.7 KiB
Markdown

# Sturmwind: Magierturm-Übergänge 702/704
Stand 26.10.2026. Auf dem lokalen Testserver gezielt importiert: vier aktive
Portalnodes und zwei gerichtete Portalkanten. Keine Änderungen an nativen
AreaTriggern, Teleportzielen oder interaktiven Rückreiseportalen.
| Node | Karte | X | Y | Z | Funktion |
| --- | --- | --- | --- | --- | --- |
| portal_at_702_source | 0 | -9020.670 | 890.104 | 29.6207 | unterer Eingang, Anlaufpunkt |
| portal_at_702_target | 0 | -9014.940 | 873.326 | 148.616 | obere Ankunft |
| portal_at_704_source | 0 | -9017.370 | 877.299 | 148.616 | oberer Ausgang, Anlaufpunkt |
| portal_at_704_target | 0 | -9016.970 | 885.436 | 29.6207 | untere Ankunft |
Kanten: 1748 (702_source → 702_target) und 1749
(704_source → 704_target), jeweils Kosten 1, unidirektional.
## Warum der reine Import nicht reicht
Die nativen Trigger sind gedrehte Boxen. Ihr Mittelpunkt liegt über dem Boden:
702 bei Z=34 mit Höhe 11, 704 bei Z=152 mit Höhe 8. Der Importer übernimmt
diesen Mittelpunkt als Source-Node. MMAP konnte insbesondere den Mittelpunkt
von 704 nicht erreichen; der Planer wich auf einen unvollständigen langen
Laufweg aus. Der erste Test wurde deshalb gestoppt.
Nur die Graph-Anlaufhöhen wurden innerhalb der Boxen auf die jeweilige Höhe
der gegenüberliegenden nativen Ankunft gesetzt. X/Y und die Zielnodes bleiben
unverändert. Die tatsächliche Zugehörigkeit zum Trigger wird weiterhin mit
`IsInAreaTriggerRadius` geprüft; anschließend laufen normaler AreaTrigger-
Handler, Clientless-ACK und Zielprüfung. Keine künstliche Portalabkürzung.
Reproduktion im lokalen Testsystem:
1. Konsole: `clientless portal import 702`, danach `clientless portal import 704`.
2. `sql/custom/world/2026_10_26_01_clientless_stormwind_mage_tower.sql` auf die
lokale Test-Weltdatenbank anwenden.
3. Ingame `.clientless travelreload` oder sauberer Testserver-Neustart.
**Ein erneuter Portalimport überschreibt die kalibrierten Anlaufhöhen.**
Danach die SQL-Kalibrierung erneut anwenden und den Graph neu laden. Der
Bulk-Import überspringt gleichkartige Übergänge weiterhin.
## Live-Verifikation
Arthoran wurde ausgeloggt und nach Sicherung seiner Ausgangsdaten am nativen
oberen Ziel von 702 positioniert. Diese Ausgangsposition simuliert eine
Ankunft im oberen Bereich; ein interaktives Rückreiseportal selbst wurde
nicht benutzt. Während der folgenden Reisen keine Positionsmanipulation:
- 11:51:06: oberer Ankunftspunkt → normaler MMAP-Anlauf → Trigger 704 → unten.
- 11:51:07: untere Ankunft → normaler MMAP-Anlauf → Trigger 702 → oben.
- 11:51:08: erneuter MMAP-Anlauf → Trigger 704 → unten.
Alle drei Übergänge: `EDGE_COMPLETE`, `arrivalError=0.00`, `recovery=0`.
Die Kalibrierungs-SQL wurde anschließend zweimal erfolgreich angewendet;
vier aktive Nodes und beide aktiven gerichteten Kanten wurden ausgelesen.
## Noch fehlender Groundanschluss
Der anschließende Versuch von unten nach `stormwind_gate_inner` fand keinen
durchgängig validierten MMAP-Weg. Nach mehreren Teilanläufen endete er
`TRAVEL_PARTIAL`, zuletzt nach einem erneuten Übergang 702. Damit ist die
Weiterreise in den bestehenden Stadtgraph **noch nicht erfolgreich getestet**.
Es wurden keine erfundenen Groundkanten oder geraden Wege durch Geometrie
angelegt. Auch eine einzelne durchgehende Reise von einer beliebigen oberen
Rückportal-Ankunft zu einem Stadtziel ist noch nicht abgenommen.
Nächster Schritt: mit dem GM eine echte Laufroute ab der unteren Ankunft
`portal_at_704_target` zu einem bestehenden erreichbaren Stadtnode aufnehmen,
zum Beispiel `stormwind_gate_inner`:
```text
.clientless route start portal_at_704_target stormwind_gate_inner
```
Am unteren Zielnode beginnen, den normalen begehbaren Weg bis zum Zielnode
laufen und dort `.clientless route stop` ausführen. Der Recorder speichert
bidirektional und lädt den Graph neu. Danach Arthoran in einem einzigen
Reiseauftrag vom oberen Ankunftsbereich zum Stadtnode und zurück testen.
Für den Weg hinein ist zusätzlich der Anschluss an `portal_at_702_source`
zu prüfen; eine Aufnahme, die versehentlich durch einen Portaltrigger führt,
ist kein durchgehender Groundweg.
## Abschlusszustand
Keine Coreänderung, daher kein neuer Build oder Binärinstall erforderlich.
Testserver einmal sauber neu gestartet; aktuelle Ready-Meldung, Prozess 44833
und Listener 8085 geprüft. Arthoran nach dem Test ausgeloggt, seine vorherige
Position und das vorherige Lua-Skript wiederhergestellt.
Sicherungen und Testlogs: `/tmp/vcore-mage-test.ntl3z51g`.
Die Bestandsaufnahme `same-map-portals.md/json` bleibt als historischer
Vorherstand erhalten; mit 702/704 sind nun vier gleichkartige Übergänge aktiv,
56 der ursprünglich 58 zusätzlich fehlenden Übergänge bleiben offen.