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.
4.7 KiB
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:
- Konsole:
clientless portal import 702, danachclientless portal import 704. sql/custom/world/2026_10_26_01_clientless_stormwind_mage_tower.sqlauf die lokale Test-Weltdatenbank anwenden.- Ingame
.clientless travelreloadoder 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:
.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.