Configuring Your Hytale Server (config.json)
A complete reference for the Hytale server config.json file and its most important settings.
Configuring Your Hytale Server (config.json)
Hytale server configuration lives in two places: the root config.json for global server settings, and per-world config.json files under universe/worlds/<world-name>/config.json for world-specific options.
Root config.json
The root config.json is located in your server's root directory, alongside HytaleServer.jar. This file controls server identity, networking, and default gameplay rules.
Full Example
{
"serverName": "My Hytale Server",
"maxPlayers": 20,
"gameMode": "survival",
"difficulty": "normal",
"pvp": false,
"whitelist": false,
"port": 5520,
"motd": "Welcome to My Hytale Server!",
"viewDistance": 10,
"tickRate": 20
}
Field Reference
| Field | Type | Default | Description |
|---|---|---|---|
serverName |
string | "Hytale Server" |
Display name shown in the server browser |
maxPlayers |
integer | 20 |
Maximum concurrent players (subject to session limits) |
gameMode |
string | "survival" |
"survival" or "creative" |
difficulty |
string | "normal" |
"peaceful", "easy", "normal", or "hard" |
pvp |
boolean | false |
Enables player-vs-player combat |
whitelist |
boolean | false |
When true, only players in whitelist.json can join |
port |
integer | 5520 |
UDP port for the server (QUIC) |
motd |
string | "" |
Message of the day shown on the server listing |
viewDistance |
integer | 10 |
Chunk render distance; lower values reduce CPU/RAM load |
tickRate |
integer | 20 |
Server tick rate; 20 is standard |
Per-World config.json
Each world in universe/worlds/ can have its own config.json to override global settings for that specific world:
universe/worlds/overworld/config.json
universe/worlds/dungeon-realm/config.json
A per-world config supports a subset of the global options plus world-specific keys:
{
"gameMode": "survival",
"difficulty": "hard",
"pvp": true,
"seed": 8675309,
"generateStructures": true
}
Per-world settings take precedence over the root config.json for players in that world.
Applying Configuration Changes
Most settings require a server restart to take effect. Stop the server, edit config.json, then start again:
sudo systemctl stop hytale
nano /opt/hytale-server/config.json
sudo systemctl start hytale
Common Configuration Tasks
Enabling the Whitelist
{
"whitelist": true
}
After enabling, add players in whitelist.json. See Using the Hytale Server Whitelist.
Switching to Creative Mode
{
"gameMode": "creative"
}
Reducing Lag on Low-RAM Servers
Reduce view distance and tick rate:
{
"viewDistance": 6,
"tickRate": 20
}
See Hytale Server Performance Optimization for more tuning tips.
Changing the Port
If you need to run on a non-default port, update the port field and make sure UDP is opened on the new port in your firewall:
{
"port": 5521
}