Dieser Artikel ist ein Nachschlagewerk: Er erklärt neutral, welche Konfigurationsdateien Paper besitzt und was die einzelnen Abschnitte bewirken. Konkrete Empfehlungen („was soll ich einstellen?") findest du im Schwester-Artikel Paper-Server optimieren: TPS & Lag beheben.

Info
Stand: Paper 1.21.x. Config-Schlüssel können sich zwischen Versionen verschieben oder umbenennen. Bei Abweichungen gilt immer die offizielle Paper-Referenz.

Die Konfigurationsdateien im Überblick

Seit Paper 1.19 ist die frühere einzelne paper.yml in mehrere Dateien im Ordner config/ aufgeteilt:

DateiGeltungsbereich
config/paper-global.ymlServerweit – gilt für den gesamten Server
config/paper-world-defaults.ymlStandardwerte für alle Welten
<welt>/paper-world.ymlPro Welt – überschreibt die Defaults nur für diese eine Welt

Wer gewinnt bei Konflikten?

Neben Papers Dateien gibt es weitere Konfigurationen. Bei überlappenden Einstellungen greift grob diese Reihenfolge – die spätere/spezifischere Ebene gewinnt:

server.properties  →  bukkit.yml  →  spigot.yml  →  paper-world-defaults.yml  →  paper-world.yml
   (Vanilla-Basis)     (Bukkit)      (Spigot)        (Paper-Standard)            (pro Welt)
  • server.properties = Vanilla-Grundwerte (z. B. view-distance, difficulty)
  • spigot.yml = Spigot-Einstellungen (z. B. entity-activation-range, merge-radius)
  • Paper = die feingranularste Ebene; paper-world.yml schlägt die Defaults
Wichtig
Das Feld _version am Dateianfang steuert Papers automatische Migration – niemals von Hand ändern. Paper verwaltet es selbst und aktualisiert die Dateien bei Versionssprüngen.

Grundregeln vor jeder Änderung

  • Den Server stoppen – Config-Dateien nicht im laufenden Betrieb editieren
  • YAML-Syntax: Einrückung ausschließlich mit Leerzeichen, niemals Tabs
  • Vor Änderungen ein Backup der config/-Dateien und der Welt anlegen
  • Nach dem Start das Logfile auf Warnungen prüfen

Das Vererbungsprinzip (wird oft falsch gemacht)

Paper legt von Haus aus keine Per-World-Overrides an – es gibt zunächst nur die Defaults. Willst du eine einzelne Welt abweichend konfigurieren, legst du dort eine paper-world.yml an und kopierst nur den zu ändernden Wert hinein – nicht die ganze Datei.

  • Standard-Welten: <weltordner>/paper-world.yml
  • Eigene Dimensionen (Datapacks): world/dimensions/<namespace>/<key>/paper-world.yml

Beispiellootables.auto-replenish nur für eine Welt aktivieren:

# nur in world_the_end/paper-world.yml
lootables:
  auto-replenish: true

Praxisbeispiel mit zwei Welten und unterschiedlichen Mob-Limits:

# world/paper-world.yml  (Hauptwelt: weniger Monster)
entities:
  spawning:
    spawn-limits:
      monster: 50

# world_nether/paper-world.yml  (Nether: mehr Monster erlaubt)
entities:
  spawning:
    spawn-limits:
      monster: 100

Alle nicht überschriebenen Werte kommen weiterhin aus paper-world-defaults.yml.

paper-global.yml – die Abschnitte

Serverweite Einstellungen. Diese Tabelle beschreibt neutral, wofür jeder Abschnitt zuständig ist:

AbschnittZuständig für
block-updatesBestimmte Block-Ticks abschalten: disable-noteblock-updates, disable-tripwire-updates, disable-chorus-plant-updates, disable-mushroom-block-updates
chunk-loading-basicGrundraten fürs Chunk-Laden pro Spieler: player-max-chunk-load-rate, -send-rate, -generate-rate
chunk-loading-advancedFeineres Chunk-Verhalten: auto-config-send-distance, player-max-concurrent-chunk-loads/-generates
chunk-systemThreading des Chunk-Systems: io-threads, worker-threads, gen-parallelism
collisionsenable-player-collisions – ob Spieler sich gegenseitig schieben
packet-limiterSchutz vor Paket-Fluten (Anti-Crash)
player-auto-saveIntervall/Rate des Spielerdaten-Speicherns
proxiesBungeeCord / Velocity-Anbindung; im Proxy-Betrieb steht der online-mode am Proxy, nicht am Backend
spam-limiterChat-/Aktions-Spam begrenzen
timings / consoleDiagnose-Timings und Konsolenverhalten
unsupported-settingsExperimentelle/riskante Schalter (mit Bedacht nutzen)
miscDiverses: max-joins-per-tick, compression-level, region-file-cache-size
anticheat / obfuscationItem-Komponenten vor anderen Spielern verstecken (Anti-Cheat-Schutz)

Über unsupported-settings bzw. die Welt-Einstellungen lassen sich außerdem u. a. die Netherwelt deaktivieren und bestimmte Vanilla-Bugfixes (z. B. MC-159283, MC-163962) steuern.

paper-world-defaults.yml – die Abschnitte

Standardwerte für Welten (pro Welt via paper-world.yml überschreibbar):

AbschnittZuständig für
anticheat.anti-xrayX-Ray-Schutz: engine-mode (1 = Blöcke ersetzen, 2/3 = echte Blöcke verstecken), hidden-blocks, replacement-blocks
chunksmax-auto-save-chunks-per-tick, delay-chunk-unloads-by, entity-per-chunk-save-limit
entities.spawningspawn-limits, ticks-per-spawn, per-player-mob-spawns, despawn-ranges (soft/hard)
entities.behaviormobs-can-always-pick-up-loot, disable-chest-cat-detection, zombie-villager-infection-chance
entities.armor-stands / markersVerhalten von Rüstungsständern und Marker-Entities
collisionsmax-entity-collisions, fix-climbing-bypassing-cramming-rule
hoppercooldown-when-full, disable-move-event
lootablesauto-replenish und Refresh-Intervalle für Beute-Truhen
redstone-implementationVANILLA, ALTERNATE_CURRENT oder EIGENCRAFT
tick-ratesTick-Intervalle: mob-spawner, sensor, behavior (u. a. Villager!), container-update
environmentoptimize-explosions, disable-thunder, disable-ice-and-snow, treasure-maps
unsupported-settingsz. B. fix-invulnerable-end-crystal-exploit
spawnkeep-spawn-loaded, keep-spawn-loaded-range
scoreboards, maps, fishing-time-rangeScoreboard-, Karten- und Angel-Verhalten
Tipp
Was diese Werte im Sinne von Performance bewirken und welche du wie setzen solltest, steht kompakt im Artikel Paper-Server optimieren. Dieser Referenzartikel bleibt bewusst wertungsfrei.

Änderungen prüfen & absichern

  • Manche Werte lassen sich mit /paper reload neu einlesen – im Zweifel aber Server neu starten
  • Nach dem Start das Logfile auf YAML-Fehler und Warnungen kontrollieren
  • Immer ein Backup vor Config-Änderungen – ein Tippfehler in der Einrückung kann den Weltstart verhindern
  • Vollständige, versionsaktuelle Referenz: docs.papermc.io – Global und World

Weiter geht's