CoreEngineWIKI
ESC
NavigierenEnter ÖffnenESC Schließen

Teleport-System

Alle Teleports des Servers laufen über eine gemeinsame Engine: Homes, Warps, TPA, Spawn, /back und RTP bekommen automatisch Sicherheitsprüfung der Zielposition, Kampf-Sperre, Warmup, Cooldown und Kosten. Admin-Teleports wirken sofort und überspringen alle diese Prüfungen.

Commands #

CommandSyntaxPermissionDefaultBeschreibung
/back/backback.usetrueTeleportiert zur letzten Position vor Teleport/Tod
/dback/dbackdback.usetrueTeleportiert zur letzten Todesposition
/tp/tp <spieler> [spieler2]teleport.tpfalseAdmin: zu einem Spieler oder Spieler zu Spieler
/tphere/tphere <spieler>teleport.tpherefalseAdmin: Spieler zu dir
/tppos/tppos <x> <y> <z> [welt]teleport.tpposfalseAdmin: zu Koordinaten
/tpall/tpallteleport.tpallfalseAdmin: alle Spieler zu dir

Weitere Permissions #

PermissionDefaultBeschreibung
back.ondeathtrueTodesposition wird als /back-Ziel gespeichert
teleport.bypass.safetyfalseÜberspringt die Sicherheitsprüfung der Zielposition
teleport.bypass.combatfalseTeleportiert trotz Kampf-Sperre
warmup.bypass.<command>falseÜberspringt den Warmup des jeweiligen Befehls
cooldown.bypass.<command>falseÜberspringt den Cooldown des jeweiligen Befehls
cost.bypass.<command>falseDer jeweilige Befehl kostet nichts
💡

Tipp: Nach erfolgreichem /back bzw. /dback ist die jeweilige Position verbraucht, das verhindert Hin- und Herspringen zwischen zwei Punkten. /dback nutzt für Warmup/Cooldown/Kosten denselben Schlüssel back wie /back.

💡

Tipp: Scheitert ein Teleport nach der Abbuchung noch (z. B. keine sichere Zielposition gefunden), werden die Kosten automatisch zurückerstattet.

Konfiguration (modules/teleport.yml) #

YAML
# Schaltet das Teleport-Modul ein oder aus.
enabled: true

teleport:
  safety-check:
    # Prüft vor jedem regulären Teleport, ob die Zielposition sicher ist
    # (fester Boden, freier Platz, kein Gefahren-Block wie Lava oder Kaktus).
    # Ist sie unsicher, wird im Umkreis bis search-radius (Blöcke) nach einer
    # sicheren Stelle gesucht; ohne Fund schlägt der Teleport fehl.
    enabled: true
    search-radius: 5
  combat-tag:
    # Wer im PvP getroffen wird, gilt für duration Sekunden als "im Kampf"
    # (Angreifer und Opfer). Solange sind reguläre Teleports blockiert.
    # Admin-Teleports sind nie betroffen.
    enabled: true
    duration: 10
  back:
    # Eine neue Back-Position wird nur gespeichert, wenn sie mindestens
    # min-distance Blöcke von der aktuellen entfernt ist (ein Weltwechsel
    # speichert immer). Todespositionen für /dback speichern immer.
    min-distance: 5
    # In diesen Welten wird keine Back-Position gespeichert oder genutzt.
    world-blacklist: []

cooldown:
  # Wartezeit in Sekunden zwischen zwei Nutzungen, pro Spieler und Befehl.
  commands:
    back: 5

cost:
  # Economy-Kosten pro Nutzung. 0 = kostenlos. Abgebucht wird erst
  # unmittelbar vor dem Sprung, bei Fehlschlag gibt es den Betrag zurück.
  commands:
    back: 0

warmup:
  # Countdown vor dem Sprung. Bewegung bricht ab (Umschauen zählt nicht),
  # ein zweiter Befehl während des Countdowns wird abgelehnt.
  commands:
    back:
      duration: 3

Warmup, Cooldown und Kosten (global) #

Die Standardwerte für alle Befehle stehen in der config.yml; jedes Modul überschreibt sie pro Befehl in seiner eigenen modules/*.yml (wie oben bei back gezeigt).

YAML
# config.yml
warmup:
  default:
    # Countdown in Sekunden. 0 deaktiviert das Warmup.
    duration: 3
    # true = ein echter Schritt bricht das Warmup ab (Umschauen nicht).
    cancel-on-move: true
    # Anzeige des Countdowns: actionbar, bossbar, both oder none.
    # Die Bossbar wechselt mit dem Fortschritt die Farbe (grün/gelb/rot).
    display: actionbar
    # Partikel-Kreis auf Brusthöhe während des Countdowns.
    particles:
      enabled: true
      type: PORTAL
      count: 10
      radius: 0.5
  commands: {}

cooldown:
  # Fallback in Sekunden für Befehle ohne eigenen Wert. Cooldowns sind
  # zeitstempelbasiert (lag-unabhängig) und gehen beim Relog verloren.
  default: 0
  commands:
    pay: 1

cost:
  # Core-eigene Kosten; Modul-Kosten liegen in modules/*.yml.
  commands: {}
💡

Tipp: Fehlt eine Option in einem warmup.commands.<befehl>-Block, greift automatisch der warmup.default-Wert aus der config.yml.

Komplette Beispiel-Config #

So könnte eine angepasste modules/teleport.yml auf einem Survival-Server aussehen:

YAML
enabled: true

teleport:
  safety-check:
    enabled: true
    search-radius: 8
  combat-tag:
    enabled: true
    duration: 15
  back:
    min-distance: 10
    world-blacklist:
      - event_world
      - build_contest

cooldown:
  commands:
    back: 30

cost:
  commands:
    back: 25.0

warmup:
  commands:
    back:
      duration: 5