Documentation Index
Fetch the complete documentation index at: https://new-docs.simplecloud.app/llms.txt
Use this file to discover all available pages before exploring further.
Was sind Configurators?
Configurators passen Server-Konfigurationsdateien automatisch basierend auf der verwendeten Server-Software an. Sie handhaben Einstellungen wie Port-Bindung, Player-Forwarding und andere softwarespezifische Konfigurationen mittels Platzhalter-Ersetzung.
Wie Configurators funktionieren
Während der Server-Vorbereitung:
- Lädt der Serverhost das Configurator-Template aus
options/configurators/
- Identifiziert die Ziel-Konfigurationsdateien
- Ersetzt Platzhalter mit tatsächlichen Server-Werten
- Schreibt die konfigurierten Dateien ins Server-Verzeichnis
Configurator Templates
Configurators werden in YAML-Dateien unter options/configurators/{name}.yml definiert. Jeder Configurator gibt an, welche Dateien modifiziert werden und welche Platzhalter ersetzt werden.
Beispiel: Paper + Velocity
# options/configurators/paper_velocity.yml
files:
- path: server.properties
format: properties
values:
server-port: "{{port}}"
max-players: "{{max-players}}"
online-mode: "false"
- path: config/paper-global.yml
format: yaml
values:
proxies.velocity.enabled: true
proxies.velocity.secret: "{{forwarding-secret}}"
proxies.velocity.online-mode: true
- path: spigot.yml
format: yaml
values:
settings.bungeecord: false
Beispiel: Velocity
# options/configurators/velocity.yml
files:
- path: velocity.toml
format: toml
values:
bind: "0.0.0.0:{{port}}"
show-max-players: "{{max-players}}"
player-info-forwarding-mode: "modern"
forwarding-secret-file: "forwarding.secret"
- path: forwarding.secret
format: text
content: "{{forwarding-secret}}"
| Format | Erweiterung | Beschreibung |
|---|
yaml | .yml, .yaml | YAML-Konfigurationsdateien |
json | .json | JSON-Konfigurationsdateien |
properties | .properties | Java-Properties-Dateien |
toml | .toml | TOML-Konfigurationsdateien |
text | beliebig | Plaintext-Datei-Ersetzung |
Platzhalter
Configurators unterstützen dynamische Platzhalter, die durch serverspezifische Werte ersetzt werden:
Server-Eigenschaften
| Platzhalter | Beschreibung |
|---|
{{port}} | Zugewiesener Server-Port |
{{server-name}} | Server-Name (z.B. lobby-1) |
{{group}} | Gruppenname |
{{max-players}} | Maximale Spieleranzahl |
{{memory}} | Zugewiesener Speicher (MB) |
Netzwerk-Eigenschaften
| Platzhalter | Beschreibung |
|---|
{{forwarding-secret}} | Velocity Forwarding Secret |
{{server-ip}} | Server-IP-Adresse |
{{network-id}} | Netzwerk-Identifier |
Typ-Eigenschaften
| Platzhalter | Beschreibung |
|---|
{{type}} | Server-Typ (proxy, server, lobby) |
{{software}} | Server-Software (paper, velocity, etc.) |
Benutzerdefinierte Eigenschaften
Zugriff auf benutzerdefinierte Eigenschaften aus der Gruppe:
values:
custom-setting: "{{$.my-custom-property}}"
Das $. Präfix greift auf die Properties-Map des Servers zu.
Benutzerdefinierte Configurators erstellen
1. Template erstellen
Erstelle eine YAML-Datei in options/configurators/:
# options/configurators/my-configurator.yml
files:
- path: config.yml
format: yaml
values:
server.port: "{{port}}"
server.name: "{{server-name}}"
- path: settings.properties
format: properties
values:
max.players: "{{max-players}}"
2. Im Blueprint referenzieren
Gib den Configurator in deinem Blueprint an:
# blueprints/my-blueprint.yml
name: My Blueprint
configurator: my-configurator
minecraft_version: "1.21"
server_software: paper
3. Der Serverhost wendet ihn an
Während des Server-Starts ruft der Workflow die ConfiguratorAction auf:
# workflows/internal/setup.yml
steps:
- action: configurator
configurator: "{{configurator}}"
dir: "{{server-dir}}"
Eingebaute Configurators
paper_velocity
Für Paper-Server hinter Velocity-Proxy:
- Setzt Server-Port in
server.properties
- Aktiviert Velocity Modern Forwarding in
paper-global.yml
- Konfiguriert Forwarding Secret
- Deaktiviert BungeeCord-Modus in
spigot.yml
paper_bungeecord
Für Paper-Server hinter BungeeCord:
- Setzt Server-Port in
server.properties
- Aktiviert BungeeCord-Modus in
spigot.yml
- Deaktiviert Online-Mode
velocity
Für Velocity-Proxy-Server:
- Konfiguriert Bind-Port in
velocity.toml
- Richtet Modern Forwarding ein
- Erstellt Forwarding-Secret-Datei
bungeecord
Für BungeeCord-Proxy-Server:
- Konfiguriert Listener-Port in
config.yml
- Aktiviert IP-Forwarding
- Setzt Max-Players
Verschachtelte Wertpfade
Für verschachtelte Konfigurationsstrukturen nutze Punkt-Notation:
files:
- path: config.yml
format: yaml
values:
server.network.port: "{{port}}"
server.network.host: "0.0.0.0"
features.enabled.chat: true
Dies erstellt:
server:
network:
port: 25565
host: "0.0.0.0"
features:
enabled:
chat: true
Fehlerbehebung
Konfiguration wird nicht angewendet
- Prüfe ob Configurator-Name mit Blueprint übereinstimmt
- Verifiziere den Dateipfad
- Prüfe Serverhost-Logs auf Fehler
Platzhalter wird nicht ersetzt
- Stelle sicher, dass Platzhalter-Syntax korrekt ist:
{{name}}
- Prüfe ob die Property auf dem Server existiert
- Für benutzerdefinierte Properties, nutze
{{$.property-name}}
- Verifiziere das
format Feld entspricht dem tatsächlichen Dateityp
- Prüfe auf Syntaxfehler im Template
- Stelle sicher, dass die Datei im Server-Verzeichnis existiert