> ## Documentation Index
> Fetch the complete documentation index at: https://docs.wasabihosting.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Minecraft Server Configuration Guide

> Detailed explanation of Minecraft server configuration files and settings

# Minecraft Server Configuration Guide

Properly configuring your Minecraft server is crucial for performance, security, and gameplay experience. This guide explains the key configuration files and settings for your Minecraft server running on our Wasabi Hosting Gamepanel.

## server.properties

The main configuration file for any Minecraft server. Here's a breakdown of essential settings:

<Accordion title="Basic Server Settings">
  ```properties theme={null}
  # Server identification
  server-name=My Minecraft Server
  motd=Welcome to My Awesome Server
  server-port=25565
  server-ip=

  # World settings
  level-name=world
  level-seed=
  level-type=default
  generator-settings=
  hardcore=false
  ```
</Accordion>

<Accordion title="Gameplay Settings">
  ```properties theme={null}
  # Game rules
  gamemode=survival
  difficulty=normal
  pvp=true
  force-gamemode=false
  allow-nether=true
  allow-flight=false
  allow-cheats=false

  # Spawning
  spawn-monsters=true
  spawn-animals=true
  spawn-npcs=true
  spawn-protection=16
  ```
</Accordion>

<Accordion title="Performance Settings">
  ```properties theme={null}
  # Resource usage
  view-distance=10
  simulation-distance=10
  max-players=20
  max-world-size=29999984
  entity-broadcast-range-percentage=100
  max-tick-time=60000
  rate-limit=0
  network-compression-threshold=256
  ```
</Accordion>

### Important Properties Explained

<Info>
  Changes to server.properties require a server restart to take effect.
</Info>

| Property                              | Description                     | Recommended                     |
| ------------------------------------- | ------------------------------- | ------------------------------- |
| **view-distance**                     | How many chunks players can see | 8-10 for balance                |
| **simulation-distance**               | How far entities are processed  | Same as view distance           |
| **max-players**                       | Maximum players allowed         | Based on your plan              |
| **difficulty**                        | Game difficulty level           | normal or hard                  |
| **spawn-protection**                  | Protected radius around spawn   | 16 (or 0 to disable)            |
| **pvp**                               | Allow player vs player combat   | true/false based on server type |
| **white-list**                        | Only allow listed players       | true for private servers        |
| **online-mode**                       | Verify player accounts          | true for security               |
| **enforce-secure-profile**            | Enforce secure profiles         | true for security               |
| **entity-broadcast-range-percentage** | Entity render distance %        | 65-100%                         |

## Optimization Through server.properties

For optimal performance, consider these settings:

```properties theme={null}
# Balanced performance
view-distance=8
simulation-distance=6
network-compression-threshold=256
entity-broadcast-range-percentage=75

# World protection
spawn-protection=16
max-world-size=20000
max-tick-time=60000
```

## spigot.yml

If you're running Spigot or Paper (recommended), you'll have access to additional configuration options in `spigot.yml`.

<Accordion title="World Settings">
  ```yaml theme={null}
  world-settings:
    default:
      # Chunk management
      chunks-per-tick: 650
      mob-spawn-range: 6
      
      # Entity settings
      entity-activation-range:
        animals: 16
        monsters: 24
        raiders: 48
        misc: 8
      entity-tracking-range:
        players: 48
        animals: 48
        monsters: 48
        misc: 32
        other: 64
        
      # Growth & merging
      growth:
        cactus-modifier: 100
        cane-modifier: 100
        melon-modifier: 100
        mushroom-modifier: 100
        pumpkin-modifier: 100
        sapling-modifier: 100
        beetroot-modifier: 100
        carrot-modifier: 100
        potato-modifier: 100
        wheat-modifier: 100
        netherwart-modifier: 100
        vine-modifier: 100
        cocoa-modifier: 100
      merge-radius:
        item: 2.5
        exp: 3.0
        
      # Ticking areas
      tick-inactive-villagers: true
      ticks-per: 
        hopper-transfer: 8
        hopper-check: 1
  ```
</Accordion>

### Notable Spigot Settings

| Setting                     | Description                   | Recommendation               |
| --------------------------- | ----------------------------- | ---------------------------- |
| **chunks-per-tick**         | Chunks loaded per tick        | 650 for balance              |
| **mob-spawn-range**         | Spawn distance from players   | 6 blocks                     |
| **merge-radius**            | Item/XP merging distance      | 2.5/3.0 for less entities    |
| **hopper-transfer**         | Ticks between transfers       | 8 for better performance     |
| **entity-activation-range** | Distance to activate entities | Lower for better performance |

## paper.yml

Paper servers have additional optimization options in `paper.yml`.

<Accordion title="Performance Settings">
  ```yaml theme={null}
  # Chunk management
  max-auto-save-chunks-per-tick: 24
  prevent-moving-into-unloaded-chunks: true
  use-faster-eigencraft-redstone: true
  fix-climbing-bypassing-cramming-rule: true

  # Game mechanics
  optimize-explosions: true
  disable-chest-cat-detection: true

  # Entity settings
  per-player-mob-spawns: true
  armor-stands-tick: false
  alt-item-despawn-rate:
    enabled: true
    items:
      COBBLESTONE: 300
      DIRT: 300

  # Hopper optimizations
  hopper:
    disable-move-event: false
    ignore-occluding-blocks: true
  ```
</Accordion>

### Key Paper Optimizations

| Setting                           | Description                           | Recommendation           |
| --------------------------------- | ------------------------------------- | ------------------------ |
| **max-auto-save-chunks-per-tick** | Chunks saved per tick                 | 24 for moderate servers  |
| **optimize-explosions**           | More efficient explosion calculations | true                     |
| **per-player-mob-spawns**         | Mobs spawn based on players           | true for fairer gameplay |
| **alt-item-despawn-rate**         | Custom despawn times                  | Enabled for common items |

## bukkit.yml

The bukkit.yml file controls more general server behavior.

<Accordion title="Bukkit Settings">
  ```yaml theme={null}
  settings:
    allow-end: true
    warn-on-overload: true
    permissions-file: permissions.yml
    update-folder: update
    plugin-profiling: false
    connection-throttle: 4000
    query-plugins: true
    deprecated-verbose: default
    shutdown-message: Server closed
    minimum-api: none
    use-map-color-cache: true
  spawn-limits:
    monsters: 70
    animals: 10
    water-animals: 5
    water-ambient: 20
    water-underground-creature: 5
    ambient: 15
  ticks-per:
    animal-spawns: 400
    monster-spawns: 1
    water-spawns: 1
    water-ambient-spawns: 1
    water-underground-creature-spawns: 1
    ambient-spawns: 1
  ```
</Accordion>

### Important Bukkit Settings

| Setting                 | Description                      | Recommendation               |
| ----------------------- | -------------------------------- | ---------------------------- |
| **spawn-limits**        | Maximum mobs per category        | Lower for better performance |
| **ticks-per**           | Ticks between spawn attempts     | Higher for fewer spawns      |
| **connection-throttle** | Milliseconds between connections | 4000 to prevent spam         |

## Plugin Configuration

Most plugins have their own configuration files in the `plugins/` directory. General tips:

1. **Always back up** before editing plugin configs
2. **Follow documentation** for each plugin
3. **Restart the server** after configuration changes
4. **Use YAML validators** for complex files
5. **Check console** for configuration errors on startup

## Advanced Configuration

### Startup Flags in Gamepanel

In the Wasabi Hosting Gamepanel, you can select "Aikar's Flags" from the ADDITIONAL FLAGS dropdown for optimal performance:

<Info>
  Aikar's Flags are professionally tuned Java arguments that optimize garbage collection and memory management. At Wasabi Hosting, RAM allocation is fixed based on your selected plan and cannot be manually changed.
</Info>

<Tip>
  If you're experiencing memory-related issues, contact support about upgrading to a higher-tier plan with more allocated RAM.
</Tip>

### Datapacks

Datapacks can modify gameplay without plugins. To install:

1. Upload to the `world/datapacks/` directory
2. Run `/reload` or restart the server
3. Verify with `/datapack list`

<Warning>
  Always download datapacks from reputable sources to avoid corruption or security issues.
</Warning>

## Configuration for Server Types

### Survival Server

```properties theme={null}
# server.properties
gamemode=survival
difficulty=hard
pvp=true
spawn-protection=0
allow-flight=false
```

### Creative Server

```properties theme={null}
# server.properties
gamemode=creative
difficulty=peaceful
pvp=false
spawn-protection=64
allow-flight=true
```

### Minigames Server

```properties theme={null}
# server.properties
gamemode=adventure
difficulty=normal
pvp=true
spawn-protection=0
force-gamemode=true
```

## Security Configuration

To protect your server:

1. **Enable whitelist** for private servers
2. **Set up spawn protection** to prevent griefing
3. **Configure backups** in Gamepanel
4. **Use anti-cheat plugins** for public servers
5. **Keep server updated** to patch security vulnerabilities

<Warning>
  Never set "online-mode=false" unless you're running a proxy server like BungeeCord or Velocity.
</Warning>

## Configuration Checklist

Use this checklist when setting up your server:

* [ ] Set appropriate view and simulation distances
* [ ] Configure entity limits and spawn rates
* [ ] Set up proper resource allocation (RAM, Java arguments)
* [ ] Configure world options (seed, type, border)
* [ ] Set security options (whitelist, spawn protection)
* [ ] Optimize spigot/paper settings if applicable
* [ ] Set up proper plugin configurations
* [ ] Create regular backup schedule
* [ ] Test with a few players before fully launching

Following this guide will help you create a well-configured Minecraft server that balances performance, gameplay, and security. If you need further assistance, contact our support team.

## Backups

Regular backups are essential to protect against data loss:

1. **Create regular world backups** using plugins like EssentialsX
2. **Export and save important configurations**
3. **Configure backups** in Gamepanel
