Stasis Unlimited
Die Firma Stasis Unlimited bietet zukünftig Teleportation entlang gewisser Routen an. Eine erste Demonstrations-Strecke entsteht derzeit zwischen Kalmar und Jaadoo. Betrieben wird Stasis Unlimited von ZaubererMD.
Technologie
Der Teleport basiert auf der sogenannten Ender Pearl Stasis, die ab Version 1.16.2 mithilfe von Wassersäulen leicht zu realisieren ist. Wirft ein Nutzer eine Enderperle in eine 8 Block tiefe Wassersäule mit aufsteigenden Luftblasen, so bleibt diese Perle für unbegrenzte Zeit oben auf dem Wasser. Schiebt man diese dann mit zum Beispiel einem Piston von der Wassersäule wird der werfende Spieler augenblicklich an den Ort des Bodenkontakts teleportiert.
Benutzung
Um das Teleportnetz benutzen zu können muss dieses zunächst für den jeweiligen Spieler erweitert werden. Dies hat technische Gründe, die Ankunfts-Teleporter sind nur für je einen Spieler nutzbar und müssen auf diesen hartkodiert werden. Eine Erklärung hierfür ist im Abschnitt Geschichte zu finden. Aus diesem Grund erhebt Stasis Unlimited auch eine Gebühr für die Nutzung der Teleport-Infrastruktur. Hat man sich eingekauft erhält man einen persönlichen Teleport-Pass, welcher der Infrastruktur ermöglicht zu erkennen welchen Spieler sie teleportieren soll.
Um sich an einen bestimmten Endpunkt teleportieren zu können muss man zunächst mindestens einmal dort gewesen sein. Nachdem ein persönlicher Ankunfts-Teleporter durch Mitarbeiter von Stasis-Unlimited eingerichtet wurde kann man diesen aufsuchen und dort eine Ender-Perle einwerfen. Ab diesem Zeitpunkt kann man sich über Teleport-Routen die zu diesem Endpunkt führen dort hin teleportieren. Hierfür muss man am Abreise-Teleporter lediglich seinen Teleport-Pass in den korrekten Werfer legen und diesen auslösen. Der Teleport kann einige Sekunden in Anspruch nehmen, von Jaadoo nach Kalmar dauert es zum Beispiel bis zu 17 Sekunden bis der Transport stattfindet. Während dieser Zeit kann man sich ganz normal bewegen. Es wird jedoch davon abgeraten großartig irgendwelche Tasten zu drücken da man jederzeit ohne Vorwarnung teleportiert werden könnte.
Am Zielort angekommen erhält man vollautomatisch seinen Teleport-Pass und eine Enderperle ins Inventar. Die Perle sollte man sofort wieder einlegen, damit der Teleporter für die nächste Benutzung bereit ist. Den Teleport-Pass kann man wieder mitnehmen.
Geschichte
ZaubererMD begann direkt nach dem Update auf Version 1.16.2 mit der neuen Mechanik zu experimentieren. Zunächst dachte er, dass man zum Auslösen des Teleports zwangsläufig immer einen weiteren Spieler benötigen würde der sich vor Ort aufhält und den Teleport vor Ort auslöst. Dies alleine spart, wenn man sich treffen will, wenigstens eine Richtung des Weges, hilft jedoch nicht wenn man sich einfach nur selbst schnell durch die Welt bewegen möchte.
Er begann daher nach Wegen zu suchen, den Teleporter aus der Ferne auszulösen um einen Zwei-Wege-Teleport ohne Hilfe weiterer Spieler zu realisieren. Zunächst grub er dazu einen Tunnel von Jaadoo bis Kalmar, da er nach Online-Recherchen davon ausging dass ein in einen Chunk laufendes Redstone-Signal diesen laden und das Signal so weitertransportieren würde. Dem war jedoch nicht so, man müsste dafür in jeden der auf dem Weg liegenden Chunks einen Chunk-Loader bauen, was ein enormer Aufwand gewesen wäre und bei langen Strecken irgendwann enormen Lagg verursacht hätte.
Der Durchbruch gelang, als er testete ob er das Signal nicht einfach durch den Nether leiten kann. Er rechnete gar nicht damit, dass solange sich niemand im Nether aufhält, diese Chunks überhaupt geladen werden, und wenn dann nur der Chunk mit dem Portal. Die Annahme stellte sich glücklicherweise als falsch heraus: Es waren nicht nur einige Chunks um das Portal herum geladen, die geladene Distanz reichte zudem aus um ein Signal von Jaadoo nach Kalmar zu senden und den Teleporter auf der anderen Seite auszulösen. Er fügte eine etwas aufwendigere Logik hinzu um die Portale jeweils für den Teleport in beide Richtungen nutzen zu können und somit entstand der erste funktionstüchtige Zwei-Wege-Teleporter.
Dieser hatte jedoch einen großen Nachteil: Nur ein einzelner Spieler kann die gebaute Infrastruktur nutzen, da das gesendete Signal nur einen einzelnen Telporter auslösen kann. Sind in diesem mehrere Perlen enthalten würde dies alle Spieler die diese dort hinterlegt haben sofort an den Zielort teleportieren, wenn sie online sind. Wenn sie offline wären wäre die Perle ebenfalls weg und sie könnten den Teleporter beim nächsten Besuch nicht mehr benutzen. Einen Code in einem Redstone-Signal einzubetten erschien ZaubererMD zu aufwendig, also musste eine andere Methode her um die Telepot-Infrastruktur für mehrere Benutzer zugänglich zu machen.
Die Lösung war verhältnismäßig simpel: Statt nur einem Redstone-Signal wird ein Item transportiert, welches kodiert welcher Spieler sich teleportieren möchte. Am Zielort kann dieses mithilfe von Item-Filtern den korrekten Teleporter auslösen und den Teleport erfolgreich durchführen. Für den Item-Transport wurden diverse Methoden probiert, da die offensichtliche Lösung mit Wasserströmen im Nether nicht möglich ist. So wurde zum Beispiel mit Schleimblöcken experimentiert, welche die Items mithilfe von Pistons anstoßen und über eine Eisbahn schleudern. Diese Methode stellte sich leider als unzuverlässig heraus, weshalb auf den Transport mithilfe von Minecarts umgestellt wurde. Sie sind etwas langsamer als erhofft, dafür aber zuverlässig. Der Transport von Kalmar nach Jaadoo dauert etwa 17 Sekunden.
Das nächste Problem ließ natürlich nicht lange auf sich warten: Der Test auf der Strecke zwischen Jaadoo und Kalmar funktionierte nur deshalb, weil sich die gesamte Strecke nah genug am Spawn befand und daher immer geladen war. zaubererMD beschäftigte sich wieder einmal viel mit Chunkloading und kam schließlich zu dem Schluss, dass er das Chunkloading-Verhalten auf dem Server mithilfe eines selbst programmierten Plugins verändern würde. Er schrieb also ein Plugin, welches unter bestimmten Voraussetzungen Truhen-Minecarts erlaubt während ihrer Fahrt Chunks zu laden die auf ihrem Weg liegen.