Configuration Files Overview
Paper uses several configuration files, each serving a different purpose:Paper stores its configuration files in the
config/ directory. The main Paper configurations are paper-global.yml and paper-world-defaults.yml.server.properties
This is the primary configuration file for basic server settings. It’s generated on first run.Essential Settings
server.properties
Key Configuration Options
Network Settings
Network Settings
server-ip- The IP address to bind to (leave empty for all interfaces)server-port- The port players connect to (default: 25565)online-mode- Enable Mojang authentication (true for production servers)
World Settings
World Settings
level-name- The name of the world folderlevel-seed- World generation seed (empty for random)level-type- World type (normal, flat, large_biomes, amplified)allow-nether- Enable the Nether dimensionallow-end- Enable the End dimension (configured in bukkit.yml)
Gameplay Settings
Gameplay Settings
difficulty- Game difficulty (peaceful, easy, normal, hard)gamemode- Default game mode (survival, creative, adventure, spectator)hardcore- Enable hardcore mode (permanent death)pvp- Allow player vs player combatspawn-monsters- Allow hostile mob spawningspawn-animals- Allow passive mob spawning
Performance Settings
Performance Settings
view-distance- How far players can see (2-32 chunks, 10 recommended)simulation-distance- How far chunks are actively simulated (3-32)max-tick-time- Watchdog timeout in millisecondsentity-broadcast-range-percentage- Entity visibility range (100 = default)
bukkit.yml
Bukkit configuration file with spawn limits and basic settings.bukkit.yml
Important bukkit.yml Settings
spawn-limits- Maximum number of each mob type per worldticks-per.autosave- How often to save worlds (6000 = 5 minutes)connection-throttle- Minimum milliseconds between connections from same IPwarn-on-overload- Show warnings when server is running slowly
commands.yml
Configure command aliases and override vanilla permissions.commands.yml
Creating Command Aliases
You can create shortcuts for commonly used commands:commands.yml
Paper Configuration Files
Paper introduces its own configuration system with two main files in theconfig/ directory.
config/paper-global.yml
Global settings that apply to the entire server. This file contains extensive configuration options for performance, gameplay mechanics, and server behavior.The paper-global.yml file is created on first run and contains detailed comments for each setting. The file includes the note:“This is the global configuration file for Paper. As you can see, there’s a lot to configure. Some options may impact gameplay, so use with caution, and make sure you know what each option does before configuring.”
config/paper-world-defaults.yml
Default world settings that can be overridden per-world. Individual worlds can have their ownpaper-world.yml file in the world directory.
Common Paper Settings
Some frequently configured Paper settings include:help.yml
Customize help topics and documentation for your server.help.yml
permissions.yml
Define custom permission nodes for use with commands and plugins.permissions.yml
Configuration Best Practices
1
Backup before changing
Always backup configuration files before making significant changes:
2
Change one thing at a time
Modify one setting at a time and test the impact. This makes it easier to identify issues.
3
Read the comments
Paper configuration files include detailed comments explaining what each option does. Always read them before changing values.
4
Restart when needed
Most configuration changes require a server restart. Some Paper settings support live reloading, but restarting is safest:
5
Monitor performance
After changing performance settings, use
/timings or Spark to monitor the impact.Reloading Configuration
Some configuration files can be reloaded without restarting:Per-World Configuration
Paper allows per-world configuration overrides. Create apaper-world.yml file in any world folder to override the defaults for that specific world:
paper-world-defaults.yml for that specific world.
Command-Line Configuration
Many settings can be overridden via command-line arguments:Available Options
--config <file>- Custom server.properties location--bukkit-settings <file>- Custom bukkit.yml location--spigot-settings <file>- Custom spigot.yml location--paper-dir <directory>- Custom Paper config directory--plugins <directory>- Custom plugins directory--world-dir <directory>- Custom world container directory--port <port>- Override server port--world <name>- Override level-name