Enshrouded Server Settings: The enshrouded_server.json Reference
Every Enshrouded server setting lives in one file, enshrouded_server.json, in the same folder as enshrouded_server.exe; on a hosted server that is the root of the file manager. There is no .ini, no server.cfg and no documented console command set.
Your gameSettings values are ignored unless gameSettingsPreset is "Custom". With Default, Relaxed, Hard or Survival the preset decides the difficulty and your individual values are not used; Keen's documentation says only Custom lets them be tweaked. If an XP factor, a day length or an enemy value changes nothing in game, check this key first. Config changes not applying shows how to confirm it from the server log.
The complete default enshrouded_server.json
What the current server writes on first start, with every key at its documented default:
{
"name": "Enshrouded Server",
"saveDirectory": "./savegame",
"logDirectory": "./logs",
"ip": "0.0.0.0",
"queryPort": 15637,
"slotCount": 16,
"tags": [],
"voiceChatMode": "Proximity",
"enableVoiceChat": false,
"enableTextChat": false,
"gameSettingsPreset": "Default",
"gameSettings": {
"playerHealthFactor": 1,
"playerManaFactor": 1,
"playerStaminaFactor": 1,
"playerBodyHeatFactor": 1,
"playerDivingTimeFactor": 1,
"enableDurability": true,
"enableStarvingDebuff": false,
"foodBuffDurationFactor": 1,
"fromHungerToStarving": 600000000000,
"shroudTimeFactor": 1,
"tombstoneMode": "AddBackpackMaterials",
"enableGliderTurbulences": true,
"weatherFrequency": "Normal",
"fishingDifficulty": "Normal",
"miningDamageFactor": 1,
"plantGrowthSpeedFactor": 1,
"resourceDropStackAmountFactor": 1,
"factoryProductionSpeedFactor": 1,
"perkUpgradeRecyclingFactor": 0.5,
"perkCostFactor": 1,
"experienceCombatFactor": 1,
"experienceMiningFactor": 1,
"experienceExplorationQuestsFactor": 1,
"randomSpawnerAmount": "Normal",
"aggroPoolAmount": "Normal",
"enemyDamageFactor": 1,
"enemyHealthFactor": 1,
"enemyStaminaFactor": 1,
"enemyPerceptionRangeFactor": 1,
"bossDamageFactor": 1,
"bossHealthFactor": 1,
"threatBonus": 1,
"pacifyAllEnemies": false,
"tamingStartleRepercussion": "LoseSomeProgress",
"dayTimeDuration": 1800000000000,
"nightTimeDuration": 720000000000,
"curseModifier": "Normal"
},
"userGroups": [
{
"name": "Admin",
"password": "AdminXXXXXXXX",
"canKickBan": true,
"canAccessInventories": true,
"canEditWorld": true,
"canEditBase": true,
"canExtendBase": true,
"reservedSlots": 0
},
{
"name": "Friend",
"password": "FriendXXXXXXXX",
"canKickBan": false,
"canAccessInventories": true,
"canEditWorld": true,
"canEditBase": true,
"canExtendBase": false,
"reservedSlots": 0
},
{
"name": "Guest",
"password": "GuestXXXXXXXX",
"canKickBan": false,
"canAccessInventories": false,
"canEditWorld": true,
"canEditBase": false,
"canExtendBase": false,
"reservedSlots": 0
},
{
"name": "Visitor",
"password": "VisitorXXXXXXXX",
"canKickBan": false,
"canAccessInventories": false,
"canEditWorld": false,
"canEditBase": false,
"canExtendBase": false,
"reservedSlots": 0
}
],
"bans": []
}
Copy it whole if your file has been damaged or is missing keys after an update, then put your own name, passwords and settings back in. The four passwords are placeholders: a freshly generated file carries randomised passwords instead, and you should set your own.
Current build, not 1.0. The server manual bundled with the current dedicated server build is stamped version 0.9.0.0, and Keen's help-center configuration article was checked on 4 October 2026. Enshrouded 1.0 is scheduled for 15 October 2026 (see our 1.0 server prep page). Nothing here is a claim about what 1.0 changes in this file; recheck the defaults and ranges against the regenerated file once 1.0 is out.
Editing the file and applying a change
The folder that holds the file also holds savegame, where the world files live, and logs, where the server writes its log, unless you point saveDirectory or logDirectory elsewhere; on Supercraft that folder is the partition labelled Server Config. Keen's documentation describes no reload command, so every change goes through a server start:
- Stop the server. Keen's own instruction for hand-editing the bans list is to do it while the server is not running; treat the whole file that way, so your edit is not overwritten by a server that is still writing.
- Edit
enshrouded_server.jsonin a plain text editor, or in your hosting panel's configuration editor. - Check the JSON is valid before you start (see below).
- Start the server and confirm the change in game, one change at a time if you are testing something new.
To get a fresh file, which is also Keen's fix for an older file that has been updated incorrectly, stop the server, move the old file away and start it again: a missing file is recreated with every key at its default.
JSON validity
The file is strict JSON. Syntax mistakes break it: a trailing comma after the last entry in an object or list, a missing comma between entries, a missing closing bracket. Type mistakes are valid JSON with the wrong kind of value: "slotCount": "16" is a string where the game expects a number, "reservedSlots": true is a boolean where it expects a number, and "enableVoiceChat": "false" is a string where it expects false. If a password needs a double quote or a backslash, it has to be escaped with a backslash in the file, so the simplest rule is to avoid both characters in passwords.
Keen documents what an out-of-range number and an unknown option word do (see the value rules under gameSettings below) but describes no separate behaviour for a file with a syntax error, so do not rely on the server to repair one: paste the file into any JSON validator before starting, keep a copy of the last working version, and if the server will not start after an edit, restore that copy or let the server regenerate the file and reapply your values section by section. The server's own log, in logDirectory, is where the reason appears; startup logs and file locations shows how to read it and the troubleshooting guide covers what to do when a start fails for other reasons.
Top-level keys: identity, network, chat and preset
A fresh file has 14 top-level keys; gameSettings, userGroups and bans hold nested structures and have their own sections below.
| Key | Type | Default | What it does |
|---|---|---|---|
name | String | "Enshrouded Server" | The name shown in the Join menu server list. Freely editable; every player can see it, so Keen asks for non-offensive names. |
saveDirectory | String (path) | "./savegame" | Where the world save is written. Relative paths are relative to the server folder. See save game rollback and backups for what is inside. |
logDirectory | String (path) | "./logs" | Where the current log is written. Previous logs are archived automatically into a backup subfolder of this directory. |
ip | String (IPv4) | "0.0.0.0" | The address the server binds to. The default listens on every interface. Keen says to change it only with caution and for a specific internal-network reason. See the 10049 bind error if you did. |
queryPort | Integer | 15637 | The port the server list queries, and the only port key in the official file. Change it to match your firewall. |
slotCount | Integer | 16 | Maximum players. Must be between 1 and 16; see the slotCount section below. |
tags | Array of strings | [] | Optional server browser filter tags from a fixed list of 19 (below). |
voiceChatMode | String | "Proximity" | Proximity or Global: voice heard near you, or server-wide. |
enableVoiceChat | Boolean | false | Switches in-game voice chat on or off for the whole server. |
enableTextChat | Boolean | false | Switches in-game text chat on or off for the whole server. |
gameSettingsPreset | String | "Default" | Default, Relaxed, Hard, Survival or Custom. Only Custom reads the gameSettings block. |
gameSettings | Object | 37 keys, as in the default file above | The individual difficulty and gameplay values, documented key by key below. |
userGroups | Array of objects | Admin, Friend, Guest, Visitor | Roles. Each has its own password and permission flags, and this is where the server's passwords live. |
bans | Array of objects | [] | Permanently banned players; see bans below. |
password (legacy) | String | not in a fresh file | The pre-June-2024 server password; see the legacy password key below. |
Ports. Keen's FAQ names 15637 as the default and points at Steam's required ports for the rest. You will see 15636 quoted as the game port in setup guides, and some hosting panels write a gamePort key with that value into the file; that key is not part of the official reference. The self-hosting setup guide covers which ports to open and why.
Chat. Both chat switches default to false, so a fresh server has neither voice nor text chat until you turn them on. Which combination suits a private group, a public community or an event server is covered in voice and text chat settings.
Server browser tags
Tags were added in 0.9.0.0 so players can filter the server list for the kind of server they want. The list is fixed; Keen documents no tags beyond these 19:
LookingForPlayers: the server is happy to take new players.- Languages:
English,German,French,Italian,Japanese,Korean,Polish,Portuguese,Russian,Spanish,Thai,Turkish,Ukrainian,Chinese,Taiwanese. - Gameplay focus:
BaseBuilding,Exploration,Roleplay.
{
"tags": [
"LookingForPlayers",
"English",
"BaseBuilding"
]
}
slotCount: the limit of 16
slotCount is the maximum number of players who can be on the server at once. The default is 16, and Keen's documentation is explicit that the number can only be between 1 and 16. Sixteen is a hard ceiling: a larger number does not give you a larger server, and no hosting plan can deliver more than 16 Enshrouded players because the game itself does not. Keen adds that every occupied slot increases the load on the server, so if CPU or RAM is the bottleneck, lowering the slot count is a legitimate way to relieve it; their FAQ puts that load at around 4.4 GB of RAM for an idle server and up to 100 MB more per player. Reserved slots inside userGroups are held back from this same total. On a hosted server the slot count normally follows the plan you bought and is set for you; if you self-host, this is the key to edit.
userGroups: roles, permissions and reserved slots
Since Update 2 (5 June 2024) Enshrouded has no single server password. The file holds a list of user groups instead, each with its own password and its own permission flags, and a player plays with the permissions of whichever group's password they joined with. A fresh file starts with four groups, Admin, Friend, Guest and Visitor, and you can add as many groups as you like: copy a block, give it a new name and password, and set its flags. Keen's own example is a group that may open chests and workstations in the base but may not add or remove blocks there. Designing roles for a real community is covered in server roles and reserved slots; what admins can do in game is in admin commands and roles.
Every group block has the same eight fields:
| Field | Type | What it does |
|---|---|---|
name | String | The group's name. A new group needs its own name. |
password | String | The password that puts a player into this group. A group with an empty password is open: Keen's roles article warns that a group with no password lets any player join at that permission level. |
canKickBan | Boolean | Allows kicking and permanently banning other players. Recommended for admin-level roles only. |
canAccessInventories | Boolean | Allows opening storage chests, workstations, collections and other containers in player bases. It does not affect treasure chests in the open world. |
canEditWorld | Boolean | Allows terraforming or destroying areas of the open world outside bases. Set it to false for visitor-type roles to protect against griefing. |
canEditBase | Boolean | Allows terraforming, building and removing constructions inside player bases, including adding and removing water. |
canExtendBase | Boolean | Allows placing new Flame Altars, upgrading them and removing them. |
reservedSlots | Integer | Slots held back for this group. With 1 or more, the lobby reports itself as full to players joining under a different group once the remaining slots would be used up, so admins or friends can still get in while guests fill the server. |
The four default roles
The matrix below is exactly what the fresh file contains. Every group except Visitor has full access to the open world: combat, looting, digging and quests are allowed for all of them, and only Visitor is blocked from changing the world outside bases.
| Role | canKickBan | canAccessInventories | canEditWorld | canEditBase | canExtendBase |
|---|---|---|---|---|---|
| Admin | true | true | true | true | true |
| Friend | false | true | true | true | false |
| Guest | false | false | true | false | false |
| Visitor | false | false | false | false | false |
A worked example: one reserved slot for Admin and two for Friend, so a Guest cannot take the last slots while Admins and Friends can still join.
{
"userGroups": [
{
"name": "Admin",
"password": "change-me-admin",
"canKickBan": true,
"canAccessInventories": true,
"canEditWorld": true,
"canEditBase": true,
"canExtendBase": true,
"reservedSlots": 1
},
{
"name": "Friend",
"password": "change-me-friend",
"canKickBan": false,
"canAccessInventories": true,
"canEditWorld": true,
"canEditBase": true,
"canExtendBase": false,
"reservedSlots": 2
},
{
"name": "Guest",
"password": "change-me-guest",
"canKickBan": false,
"canAccessInventories": false,
"canEditWorld": true,
"canEditBase": false,
"canExtendBase": false,
"reservedSlots": 0
}
]
}
The legacy password key
Before Update 2 the server password was a single top-level "password" line near the top of the file. That line no longer sets a server password. If the server finds a password there in an old file, it builds a user group called default around it with the same permissions players had before Update 2, which match the Friend preset above, so an untouched old server stays protected by its old password. The presets are only generated when the file is created fresh; a file carried over from before Update 2 gets the default group instead. If you are still running on that, move the password into a proper group and delete the old line.
bans
Permanent bans arrived in 0.9.0.0 alongside the older kick. The list is normally managed in game from the Social tab, where players are added and removed. It can also be edited by hand, but only while the server is not running. Each entry stores four fields: accountIDHash (a hashed identifier for the Steam account, so no personal data is stored), displayName (the Steam account name), characterName and banDate as a Unix timestamp.
gameSettingsPreset: the five presets
The preset decides whether the game uses a built-in difficulty profile or your own values. Keen describes the five options like this:
| Preset | What Keen says it does | Reads gameSettings |
|---|---|---|
Default | Every value at its default. The direct continuation of how Enshrouded was configured up to update 0.7.3.0, and the recommended setting for first-time players. | No |
Relaxed | Fewer enemies, more resources and loot. Aimed at players mainly interested in base building and light-hearted adventuring. | No |
Hard | More enemies and more aggressive enemies, for a tougher combat experience. | No |
Survival | Additional survival mechanics on top of the more aggressive enemies, for players who want some punishment. | No |
Custom | The individual settings below are read and applied. | Yes |
Keen's documentation does not list the exact values behind Relaxed, Hard and Survival, so if you want to know precisely what your players face, use Custom and set the values yourself; the ready-made blocks further down are a starting point.
gameSettings: all 37 keys
Three rules about the values, all from Keen's documentation:
- Factors are multipliers.
1is the game's normal value,0.5is half,2is double. In game they are shown as percentages, so1.5appears as 150%. - Numbers outside the range are clamped. A factor above its maximum is treated as the maximum and one below its minimum as the minimum; the server still starts.
- Invalid text stops the server. An option word the game does not know (a typo, wrong capitalisation, or a value from an outdated guide) makes the server refuse to boot and print the offending value in its console window. Write option words exactly as listed here, capitals included.
Player
| Setting | Type | Allowed values | Default | What it does |
|---|---|---|---|---|
playerHealthFactor | Number | 0.25 to 4 | 1 | Scales maximum player health. |
playerManaFactor | Number | 0.25 to 4 | 1 | Scales maximum player mana. |
playerStaminaFactor | Number | 0.25 to 4 | 1 | Scales maximum player stamina. |
playerBodyHeatFactor | Number | 0.5 to 2 (the help center lists 0.5, 1, 1.5 and 2) | 1 | Scales the body heat available against cold weather. Higher means longer in very cold areas before hypothermia sets in. |
playerDivingTimeFactor | Number | 0.5 to 2 | 1 | Scales the initial oxygen supply, and so the time available underwater. |
shroudTimeFactor | Number | 0.5 to 2 | 1 | Scales how long a character can stay inside the Shroud. |
Survival and death
| Setting | Type | Allowed values | Default | What it does |
|---|---|---|---|---|
enableDurability | Boolean | true, false | true | Weapon durability. With false, weapons no longer break. |
enableStarvingDebuff | Boolean | true, false | false | Hunger and starvation. While starving, a player loses health periodically until death unless they eat or drink. |
foodBuffDurationFactor | Number | 0.5 to 2 | 1 | Scales how long food buffs last. |
fromHungerToStarving | Integer (nanoseconds) | 300000000000 (5 min) to 1200000000000 (20 min) | 600000000000 (10 min) | How long the hungry state lasts before starving begins. Shown in minutes in game; see units below. |
tombstoneMode | String | AddBackpackMaterials, Everything, NoTombstone | AddBackpackMaterials | What a dying player drops. By default only materials from the backpack go into the tombstone; Everything drops all backpack items. Dropped items are recovered from the tombstone. Keen does not spell out the NoTombstone behaviour beyond the name. |
curseModifier | String | Easy, Normal, Hard | Normal | The chance of catching the Shroud curse from the enemies that carry it. Easy turns the curse off; Hard doubles the chance relative to Normal. |
World, weather and time
| Setting | Type | Allowed values | Default | What it does |
|---|---|---|---|---|
enableGliderTurbulences | Boolean | true, false | true | Air turbulence while gliding. With false the glider flies as it did in earlier versions of the game. |
weatherFrequency | String | Disabled, Rare, Normal, Often | Normal | How often new weather phenomena appear. |
fishingDifficulty | String | VeryEasy, Easy, Normal, Hard, VeryHard | Normal | The strength of fish in the fishing minigame. Stronger fish make the minigame last longer. |
dayTimeDuration | Integer (nanoseconds) | 120000000000 (2 min) to 3600000000000 (60 min) | 1800000000000 (30 min) | Length of daytime. Smaller is a shorter day. |
nightTimeDuration | Integer (nanoseconds) | 120000000000 (2 min) to 3600000000000 (60 min) | 720000000000 (12 min) | Length of night. Smaller is a shorter night. |
tamingStartleRepercussion | String | KeepProgress, LoseSomeProgress, LoseAllProgress | LoseSomeProgress | What happens to taming progress (the hearts) when a player startles the animal. |
Resources, crafting and runes
| Setting | Type | Allowed values | Default | What it does |
|---|---|---|---|---|
miningDamageFactor | Number | 0.5 to 2 | 1 | Scales mining damage. Higher means more terraforming and more resources per hit. |
plantGrowthSpeedFactor | Number | 0.25 to 2 | 1 | Scales how fast plants grow. |
resourceDropStackAmountFactor | Number | 0.25 to 2 | 1 | Scales the amount of material per loot stack in chests, from defeated enemies and similar sources. |
factoryProductionSpeedFactor | Number | 0.25 to 2 | 1 | Scales production times at workstations. Keen labels it Workstation Effectiveness. |
perkUpgradeRecyclingFactor | Number | 0 to 1 | 0.5 | Scales the Runes returned when salvaging an upgraded weapon; 0 returns none. |
perkCostFactor | Number | 0.25 to 2 | 1 | Scales the Runes required to upgrade weapons. |
Experience
| Setting | Type | Allowed values | Default | What it does |
|---|---|---|---|---|
experienceCombatFactor | Number | 0.25 to 2 | 1 | Scales XP from combat. |
experienceMiningFactor | Number | 0 to 2 | 1 | Scales XP from mining resources. 0 switches mining XP off entirely. |
experienceExplorationQuestsFactor | Number | 0.25 to 2 | 1 | Scales XP from exploring and completing quests. |
Enemies and bosses
Bosses are deliberately separate. enemyDamageFactor, enemyHealthFactor, enemyStaminaFactor, enemyPerceptionRangeFactor, threatBonus and pacifyAllEnemies all exclude bosses; boss health and boss damage have their own two keys.
| Setting | Type | Allowed values | Default | What it does |
|---|---|---|---|---|
randomSpawnerAmount | String | Few, Normal, Many, Extreme | Normal | How many enemies exist in the world. |
aggroPoolAmount | String | Few, Normal, Many, Extreme | Normal | How many enemies may attack at the same time. |
enemyDamageFactor | Number | 0.25 to 5 | 1 | Scales all non-boss enemy damage. |
enemyHealthFactor | Number | 0.25 to 4 | 1 | Scales all non-boss enemy health. |
enemyStaminaFactor | Number | 0.5 to 2 | 1 | Scales non-boss enemy stamina. Higher stamina means enemies take longer to stun. |
enemyPerceptionRangeFactor | Number | 0.5 to 2 | 1 | Scales how far non-boss enemies can see and hear players. |
bossDamageFactor | Number | 0.2 to 5 | 1 | Scales the damage of boss attacks. |
bossHealthFactor | Number | 0.2 to 5 | 1 | Scales boss health. |
threatBonus | Number | 0.25 to 4 | 1 | Scales how often non-boss enemies attack. |
pacifyAllEnemies | Boolean | true, false | false | With true, non-boss enemies do not attack until a player attacks them. |
Day, night and hunger durations are in nanoseconds
Three keys are durations rather than factors: fromHungerToStarving, dayTimeDuration and nightTimeDuration. Their unit is nanoseconds. The game displays them in minutes, but the file wants the raw number. One minute is 60,000,000,000 nanoseconds (60 followed by nine zeros), so multiply the minutes you want by 60000000000 and write the result without separators.
| Minutes | Value to write | Valid for |
|---|---|---|
| 2 | 120000000000 | day and night minimum |
| 5 | 300000000000 | hunger minimum; day and night |
| 8 | 480000000000 | day and night |
| 10 | 600000000000 | hunger default; day and night |
| 12 | 720000000000 | night default; day and hunger |
| 15 | 900000000000 | all three |
| 20 | 1200000000000 | hunger maximum; day and night |
| 30 | 1800000000000 | day default; night |
| 45 | 2700000000000 | day and night |
| 60 | 3600000000000 | day and night maximum |
Worked example: a 30-minute day with a 10-minute night is "dayTimeDuration": 1800000000000 and "nightTimeDuration": 600000000000. Because out-of-range numbers are clamped, a night of 60000000000 (one minute) runs as the two-minute minimum, and a hunger timer of 1800000000000 (30 minutes) runs as the 20-minute maximum. Write these as bare integers, not as strings in quotes.
Ready-made gameSettings blocks
Each block below is valid JSON, sets gameSettingsPreset to Custom and keeps every value inside its documented range. Copy the preset line and the values you want into your own file, replacing the existing lines for those keys. Keys a block does not mention keep whatever value your file already holds, so start from the default file above if you want a clean baseline.
Relaxed building server
For groups that are here to build: no weapon wear, no hunger, generous resources, fast plants, cheap upgrades, few and gentle enemies, long days, calm weather and no Shroud curse. Enemies still exist and still fight back; set pacifyAllEnemies to true as well if you want them to ignore players until attacked.
{
"gameSettingsPreset": "Custom",
"gameSettings": {
"playerHealthFactor": 1.5,
"playerStaminaFactor": 1.5,
"shroudTimeFactor": 2,
"enableDurability": false,
"enableStarvingDebuff": false,
"curseModifier": "Easy",
"weatherFrequency": "Rare",
"dayTimeDuration": 3600000000000,
"nightTimeDuration": 600000000000,
"miningDamageFactor": 2,
"plantGrowthSpeedFactor": 2,
"resourceDropStackAmountFactor": 2,
"perkUpgradeRecyclingFactor": 1,
"perkCostFactor": 0.5,
"randomSpawnerAmount": "Few",
"aggroPoolAmount": "Few",
"enemyDamageFactor": 0.5,
"enemyHealthFactor": 0.75,
"threatBonus": 0.5,
"pacifyAllEnemies": false
}
}
Hard survival server
For groups that want the Shroud to feel hostile again: less health, hunger on with a short hungry window, shorter food buffs, less time in the Shroud and the cold, everything dropped on death, more and sharper enemies that spot you sooner and stun slower, tougher bosses, leaner loot, frequent weather and long nights.
{
"gameSettingsPreset": "Custom",
"gameSettings": {
"playerHealthFactor": 0.75,
"playerBodyHeatFactor": 0.5,
"shroudTimeFactor": 0.75,
"enableDurability": true,
"enableStarvingDebuff": true,
"foodBuffDurationFactor": 0.75,
"fromHungerToStarving": 300000000000,
"tombstoneMode": "Everything",
"curseModifier": "Hard",
"weatherFrequency": "Often",
"dayTimeDuration": 1500000000000,
"nightTimeDuration": 1200000000000,
"resourceDropStackAmountFactor": 0.75,
"randomSpawnerAmount": "Many",
"aggroPoolAmount": "Many",
"enemyDamageFactor": 1.5,
"enemyHealthFactor": 1.5,
"enemyStaminaFactor": 1.25,
"enemyPerceptionRangeFactor": 1.5,
"bossDamageFactor": 1.5,
"bossHealthFactor": 1.5,
"threatBonus": 1.5
}
}
Large-group server
For a server that regularly runs at or near 16 players, where a coordinated group deletes default enemies and bosses too quickly. This is the block from the 16-player scaling guide, which explains each choice and how to watch the server's own statistics while you raise the enemy count; read it before pushing randomSpawnerAmount to Extreme.
{
"gameSettingsPreset": "Custom",
"gameSettings": {
"enemyHealthFactor": 2.5,
"enemyDamageFactor": 1.5,
"bossHealthFactor": 2.5,
"bossDamageFactor": 1.5,
"enemyStaminaFactor": 1.5,
"threatBonus": 2,
"randomSpawnerAmount": "Many",
"aggroPoolAmount": "Many"
}
}
A small step up from Default
For an organised co-op group that finds Default a little soft but does not want a survival conversion: slightly stronger enemies and bosses, more of them in the world, and a short eight-minute night.
{
"gameSettingsPreset": "Custom",
"gameSettings": {
"enemyDamageFactor": 1.15,
"enemyHealthFactor": 1.2,
"bossDamageFactor": 1.15,
"bossHealthFactor": 1.25,
"randomSpawnerAmount": "Many",
"aggroPoolAmount": "Normal",
"dayTimeDuration": 1800000000000,
"nightTimeDuration": 480000000000
}
}
Related pages
- Config changes not applying: the preset gate, bad values and old file structures, diagnosed from the log.
- Difficulty scaling for a 16-player server: the enemy and boss keys applied to a full world.
- Server roles and reserved slots: designing user groups for a community.
- Admin commands and roles: what an Admin can do in game.
- Voice and text chat settings: which chat defaults suit which server.
- Self-hosting an Enshrouded server: installation, ports and first start.
- Save game rollback and backups: what lives in saveDirectory and how to roll a world back.
- Server troubleshooting: connection, visibility and startup problems.
- Enshrouded 1.0 server prep: the 15 October 2026 release and what to check afterwards.
- Keen Games: Dedicated Server Configuration: the official reference this page is built on, which links onward to Keen's gameplay settings and server roles articles.
Frequently asked questions
Where is the Enshrouded server config file?
It is enshrouded_server.json, in the same folder as enshrouded_server.exe; on a hosted server that is the root folder of the file manager (the Server Config partition on Supercraft). If it is missing, start the server once and it writes the file with every default.
How do I change Enshrouded server settings?
Stop the server, edit enshrouded_server.json in a text editor or your panel's configuration editor, check that it is still valid JSON, and start the server again; Keen documents no reload command. Identity, chat and slot keys sit at the top level; difficulty and gameplay values sit under gameSettings and only apply when gameSettingsPreset is Custom.
Why are my Enshrouded server settings not applying?
Usually because gameSettingsPreset is still Default, Relaxed, Hard or Survival, and with any of those the gameSettings block is not used; set it to Custom and restart. If top-level changes such as the name or chat are ignored too, the file may be an older structure that updated badly: back it up, let the server generate a fresh one and copy your values back in. If the server does not start at all, look for a syntax error or an invalid option word; config changes not applying walks through all three using the server log.
What is the max player count on an Enshrouded server?
Sixteen: slotCount accepts a number between 1 and 16, and the limit is the game's, not any host's. Reserved slots for user groups come out of that same total.
How do I set a password on an Enshrouded server?
In enshrouded_server.json, give each group in userGroups its own password; a player joins with whichever one they were given and gets that group's permissions. The old top-level "password" line no longer sets a server password, and a group with an empty password lets anyone join at that permission level.