Skip to content

Server Settings

The main config.json file controls server-wide settings. This configuration is managed by the HytaleServerConfig class (com.hypixel.hytale.server.core.HytaleServerConfig).

{
"ServerName": "Hytale Server",
"MOTD": "",
"Password": "",
"MaxPlayers": 100,
"MaxViewRadius": 32,
"LocalCompressionEnabled": false,
"DisplayTmpTagsInStrings": false,
"Defaults": {
"World": "default",
"GameMode": "Adventure"
},
"ConnectionTimeouts": {
"InitialTimeout": "PT10S",
"AuthTimeout": "PT30S",
"PlayTimeout": "PT1M",
"JoinTimeouts": {}
},
"RateLimit": {
"Enabled": true,
"PacketsPerSecond": 2000,
"BurstCapacity": 500
},
"Modules": {},
"LogLevels": {},
"Mods": {},
"PlayerStorage": {},
"AuthCredentialStore": null
}
SettingTypeDefaultDescription
ServerNamestring"Hytale Server"Display name for your server
MOTDstring""Message of the day shown to players
Passwordstring""Server password (empty for no password)
SettingTypeDefaultDescription
MaxPlayersinteger100Maximum concurrent players
MaxViewRadiusinteger32Maximum view radius in chunks (constant: DEFAULT_MAX_VIEW_RADIUS)
SettingTypeDefaultDescription
DisplayTmpTagsInStringsbooleanfalseEnable display of temporary tags in strings

The Defaults section is handled by the nested Defaults class within HytaleServerConfig.

SettingTypeDefaultDescription
Defaults.Worldstring"default"Default world players spawn in
Defaults.GameModeGameModeAdventureDefault game mode for new players

The GameMode enum (com.hypixel.hytale.protocol.GameMode) defines the following values:

ValueIDDescription
Adventure0Adventure mode (default)
Creative1Creative mode
SettingTypeDefaultDescription
LocalCompressionEnabledbooleanfalseEnable compression for local network

Connection timeouts are handled by the ConnectionTimeouts nested class and use ISO-8601 duration format:

SettingTypeDefaultDescription
InitialTimeoutDurationPT10SInitial connection timeout (constant: DEFAULT_INITIAL_TIMEOUT)
AuthTimeoutDurationPT30SAuthentication timeout (constant: DEFAULT_AUTH_TIMEOUT)
PlayTimeoutDurationPT1MPlay session timeout (constant: DEFAULT_PLAY_TIMEOUT)
JoinTimeoutsMap<String, Duration>{}Custom per-context join timeouts

Rate limiting is handled by the RateLimitConfig nested class and protects against packet flooding:

SettingTypeDefaultDescription
RateLimit.EnabledBooleantrueEnable rate limiting
RateLimit.PacketsPerSecondInteger2000Max packets per second (constant: DEFAULT_PACKETS_PER_SECOND)
RateLimit.BurstCapacityInteger500Burst capacity allowance (constant: DEFAULT_BURST_CAPACITY)

The Modules section allows configuring server modules. Each module is handled by the Module nested class.

{
"Modules": {
"ModuleName": {
"Enabled": true
}
}
}
SettingTypeDefaultDescription
EnabledBooleannullEnable or disable the module

Modules can contain nested modules and additional configuration stored as a BSON document.

The LogLevels section allows configuring logging levels for specific loggers.

{
"LogLevels": {
"com.hypixel.hytale.server": "INFO",
"com.hypixel.hytale.server.network": "WARNING"
}
}

Log levels use Java’s java.util.logging.Level values: SEVERE, WARNING, INFO, CONFIG, FINE, FINER, FINEST, ALL, OFF.

The Mods section configures mod/plugin settings. This was previously named Plugins in config versions 0-2 and is automatically migrated.

{
"Mods": {
"modname:modid": {
"Enabled": true,
"RequiredVersion": ">=1.0.0"
}
}
}
SettingTypeDefaultDescription
EnabledBooleannullEnable or disable the mod
RequiredVersionSemverRangenullRequired semantic version range

The PlayerStorage section configures how player data is persisted. This is handled by the PlayerStorageProvider interface (com.hypixel.hytale.server.core.universe.playerdata.PlayerStorageProvider).

The default provider (DefaultPlayerStorageProvider) uses disk storage with the default path.

{
"PlayerStorage": {
"Type": "Hytale"
}
}

Custom disk storage provider (DiskPlayerStorageProvider) that allows specifying a custom path.

{
"PlayerStorage": {
"Type": "Disk",
"Path": "universe/players"
}
}
SettingTypeDefaultDescription
Typestring"Hytale"Storage provider type
Pathstring"universe/players"Path to player data directory (Disk provider only)

The AuthCredentialStore section configures how authentication credentials are stored. This is handled by the AuthCredentialStoreProvider interface (com.hypixel.hytale.server.core.auth.AuthCredentialStoreProvider).

The default provider (MemoryAuthCredentialStoreProvider) stores credentials in memory only (not persisted).

{
"AuthCredentialStore": {
"Type": "Memory"
}
}

The encrypted provider (EncryptedAuthCredentialStoreProvider) stores credentials in an encrypted file.

{
"AuthCredentialStore": {
"Type": "Encrypted",
"Path": "auth.enc"
}
}
SettingTypeDefaultDescription
Typestring-Credential store provider type
Pathstring"auth.enc"Path to encrypted credentials file (Encrypted provider only)

Duration values use the ISO-8601 format:

  • PT10S = 10 seconds
  • PT30S = 30 seconds
  • PT1M = 1 minute
  • PT5M = 5 minutes
  • PT1H = 1 hour

The configuration file includes a version number for migration purposes. The current version is 3 (constant: HytaleServerConfig.VERSION).