{"id":24444120,"url":"https://github.com/max-pfeiffer/sotf-dedicated-game-server-docker","last_synced_at":"2026-05-15T22:34:54.474Z","repository":{"id":273428215,"uuid":"919683768","full_name":"max-pfeiffer/sotf-dedicated-game-server-docker","owner":"max-pfeiffer","description":"Docker container providing a Sons of the Forest dedicated game server","archived":false,"fork":false,"pushed_at":"2025-05-01T21:52:37.000Z","size":247,"stargazers_count":0,"open_issues_count":6,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-09-15T20:48:56.895Z","etag":null,"topics":["dedicated-server","docker","sons-of-the-forest"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/max-pfeiffer.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-01-20T20:16:32.000Z","updated_at":"2025-02-02T16:31:45.000Z","dependencies_parsed_at":null,"dependency_job_id":"f5b31388-bae7-46bc-8db3-96f5ee226709","html_url":"https://github.com/max-pfeiffer/sotf-dedicated-game-server-docker","commit_stats":null,"previous_names":["max-pfeiffer/sotf-dedicated-game-server-docker"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/max-pfeiffer/sotf-dedicated-game-server-docker","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/max-pfeiffer%2Fsotf-dedicated-game-server-docker","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/max-pfeiffer%2Fsotf-dedicated-game-server-docker/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/max-pfeiffer%2Fsotf-dedicated-game-server-docker/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/max-pfeiffer%2Fsotf-dedicated-game-server-docker/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/max-pfeiffer","download_url":"https://codeload.github.com/max-pfeiffer/sotf-dedicated-game-server-docker/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/max-pfeiffer%2Fsotf-dedicated-game-server-docker/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33082061,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-15T20:25:35.270Z","status":"ssl_error","status_checked_at":"2026-05-15T20:25:34.732Z","response_time":103,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["dedicated-server","docker","sons-of-the-forest"],"created_at":"2025-01-20T22:42:20.258Z","updated_at":"2026-05-15T22:34:54.456Z","avatar_url":"https://github.com/max-pfeiffer.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![Poetry](https://img.shields.io/endpoint?url=https://python-poetry.org/badge/v0.json)](https://python-poetry.org/)\n[![Ruff](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json)](https://github.com/astral-sh/ruff)\n[![codecov](https://codecov.io/gh/max-pfeiffer/sotf-dedicated-game-server-docker/graph/badge.svg?token=O3Y6wQopoG)](https://codecov.io/gh/max-pfeiffer/sotf-dedicated-game-server-docker)\n![pipeline workflow](https://github.com/max-pfeiffer/sotf-dedicated-game-server-docker/actions/workflows/pipeline.yaml/badge.svg)\n\n# Sons of the Forest Dedicated Game Server - Docker Image\n\n## Docker build\n```shell\ndocker build --tag sotf .\n```\n## Docker Run\n```shell\ndocker run --rm -it --publish 8766:8766/udp --publish 9700:9700/tcp --publish 27016:27016/tcp sotf\n```\n\n## Information Sources\n* [SteamDB](https://steamdb.info/app/2465200/info/)\n* [Dedicated Server Configuration Guide](https://steamcommunity.com/sharedfiles/filedetails/?id=2992700419)\n\n## Environment Variables:\n\n### Server Configuration\n| Key                          | Values                                                                | Default Value  | Description                                                                                                                                                                                                                                                                                                                                                                 |\n|------------------------------|-----------------------------------------------------------------------|----------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| IPADDRESS                    | Any IPv4 address formatted string                                     | 0.0.0.0        | Listening interface for the game server, usually 0.0.0.0 if listening on all interfaces.                                                                                                                                                                                                                                                                                    | \n| GAMEPORT                     | Integer                                                               | 8766           | UDP port used for gameplay netcode (Bolt).                                                                                                                                                                                                                                                                                                                                  |\n| QUERYPORT                    | Integer                                                               | 27016          | UDP port used by Steam to list the server and enable the discovery services.                                                                                                                                                                                                                                                                                                |\n| BLOBSYNCPORT                 | Integer                                                               | 9700           | BlobSyncPort UDP port used by the BlobSync system to initialize game systems and exchange data.                                                                                                                                                                                                                                                                             |\n| SERVERNAME                   | String                                                                | My Sotf Server | Name of the server visible in the server list, and in the Steam contacts.                                                                                                                                                                                                                                                                                                   |\n| MAXPLAYERS                   | Integer                                                               | 8              | The maximum number of players allowed simultaneously on the server. (1 - 8)                                                                                                                                                                                                                                                                                                 |\n| PASSWORD                     | String                                                                |                | Adds a password to make your server “private”. Upon connection, this password will be requested before the client can proceed. (Max. 40 chars)                                                                                                                                                                                                                              |\n| LANONLY                      | Bool                                                                  | false          | Allows or restricts the server visibility to LAN only.                                                                                                                                                                                                                                                                                                                      |\n| SAVESLOT                     | Integer                                                               | 1              | When creating a new save, this number will be the id of the save.                                                                                                                                                                                                                                                                                                           |\n| SAVEMODE                     | New\u003cbr/\u003eContinue                                                      | Continue       | Game save initialization mode.\u003cbr/\u003e“**continue**”: will create a new save on SaveSlot if it doesn’t exist, or load it if it exist.\u003cbr/\u003e“**new**”: will create a new game, with a new game id, and overwrite any game previously saved on the SaveSlot. If the server stops and restarts, the previous save will be overwritten for as long as the mode is set to “**new**”. |\n| GAMEMODE                     | Normal\u003cbr/\u003eHard\u003cbr/\u003eHardsurvival\u003cbr/\u003ePeaceful\u003cbr/\u003eCreative\u003cbr/\u003eCustom | Normal         | Sets the difficulty game mode when creating a new save. This parameter is ignored if loading a save (save mode set to “**continue**” with a save that exists on the slot). If the game mode is set to “**custom**”, then the custom game mode settings will be read from **CustomGameModeSettings** option, described later.                                                |\n| SAVEINTERVAL                 | Integer                                                               | 600            | How often the game server automatically saves the game to SaveSlot, in seconds.                                                                                                                                                                                                                                                                                             |\n| IDLEDAYCYCLESPEED            | Float                                                                 | 0.0            | A multiplier to how quickly the time passes compared to normal gameplay when the server is considered idle (no player connected).                                                                                                                                                                                                                                           |\n| IDLETARGETFRAMERATE          | Integer                                                               | 5              | Target framerate of the server when it’s considered idle (no player connected).                                                                                                                                                                                                                                                                                             |\n| ACTIVETARGETFRAMERATE        | Integer                                                               | 60             | Target framerate of the server when it’s NOT considered idle (one or more player connected).                                                                                                                                                                                                                                                                                |\n| LOGFILESENABLED              | Bool                                                                  | true           | Defines if the logs will be written to files. The logs will be output in **\u003cuser data folder\u003e/logs**.                                                                                                                                                                                                                                                                       |\n| TIMESTAMPLOGFILENAMES        | Bool                                                                  | true           | Enabled log files timestamping.\u003cbr/\u003e“**true**”: every time the server runs will dump log output to a new file, with filename having the following format: **sotf_log_{DateTime:yyyy-MM-dd_HH-mm-ss}.txt** \u003cbr/\u003e“**false**”: the filename will be sotf_log.txt and previous log will be overwritten if it already exists.                                                    |\n| TIMESTAMPLOGENTRIES          | Bool                                                                  | true           | Enables each log entry written to file to be timestamped.                                                                                                                                                                                                                                                                                                                   |\n| SKIPNETWORKACCESSIBILITYTEST | Bool                                                                  | false          | Opt-out of network accessibility self tests: retrieval of the public IP and listing on Steam Master Server, as well as port accessibility check. Please note that only IPv4 is officially supported.                                                                                                                                                                        |\n\n### Game Configuration\n\n| Key             | Value  | Default Value | Description                                              |\n|-----------------|--------|---------------|----------------------------------------------------------|\n| TREEREGROWTH    | Bool   | true          | Enable automatic tree regrowth, triggered when sleeping. |\n| STRUCTUREDAMAGE | Bool   | true          | Allow buildings to be damaged.                           |\n\n\n### Custom game mode settings\nThese settings are only required if the game mode is set to **Custom**\n\n| Key                     | Value                                    | Default Value | Description                                                                                                     |\n|-------------------------|------------------------------------------|---------------|-----------------------------------------------------------------------------------------------------------------|\n| CHEATS                  | Bool                                     | false         | Allows cheats on the server.                                                                                    |\n| ENEMYSPAWN              | Bool                                     | true          | Enable enemies spawning.                                                                                        |\n| ENEMYHEALTH             | Low\u003cbr/\u003eNormal\u003cbr/\u003eHigh                  | Normal        | Adjust enemy starting health.                                                                                   |\n| ENEMYDAMAGE             | Low\u003cbr/\u003eNormal\u003cbr/\u003eHigh                  | Normal        | Adjust damage enemies can do.                                                                                   |\n| ENEMYARMOUR             | Low\u003cbr/\u003eNormal\u003cbr/\u003eHigh                  | Normal        | Adjust enemies armor strength.                                                                                  |\n| ENEMYAGGRESSION         | Low\u003cbr/\u003eNormal\u003cbr/\u003eHigh                  | Normal        | Adjust enemy aggression level.                                                                                  |\n| ANIMALSPAWNRATE         | Low\u003cbr/\u003eNormal\u003cbr/\u003eHigh                  | Normal        | Adjust animal spawn rate.                                                                                       |\n| ENEMYSEARCHPARTIES      | Low\u003cbr/\u003eNormal\u003cbr/\u003eHigh                  | Normal        | Adjust the frequency of enemy search parties.                                                                   |\n| STARTINGSEASON          | Spring\u003cbr/\u003eSummer\u003cbr/\u003eAutumn\u003cbr/\u003eWinter  | Summer        | Set environmental starting season.                                                                              |\n| SEASONLENGTH            | Short\u003cbr/\u003eDefault\u003cbr/\u003eLong\u003cbr/\u003eRealistic | default       | Adjust season length.                                                                                           |\n| DAYLENGTH               | Short\u003cbr/\u003eDefault\u003cbr/\u003eLong\u003cbr/\u003eRealistic | default       | Adjust day length.                                                                                              |\n| PRECIPITATIONFREQUENCY  | Low\u003cbr/\u003eDefault\u003cbr/\u003eHigh                 | default       | Adjust the frequency of rain and snow.                                                                          |\n| CONSUMABLEEFFECTS       | Normal\u003cbr/\u003eHard                          | Normal        | Enable damage taken when low hydration and low fullness.                                                        |\n| PLAYERSTATSDAMAGE       | Off\u003cbr/\u003eNormal\u003cbr/\u003eHard                  | Normal        | Enable damage from each bad or rotten food and drink.                                                           |\n| COLDPENALTIES           | Off\u003cbr/\u003eNormal\u003cbr/\u003eHard                  | Normal        | Adjusts the severity that cold will affect health and stamina regeneration.                                     |\n| STATREGENERATIONPENALTY | Off\u003cbr/\u003eNormal\u003cbr/\u003eHard                  | Normal        | Reduces the rate that health and stamina will regenerate.                                                       |\n| REDUCEDFOODINCONTAINERS | Bool                                     | false         | Reduces the amount of food found in containers.                                                                 |\n| SINGLEUSECONTAINERS     | Bool                                     | true          | Containers can only be opened once.                                                                             |\n| BUILDINGRESISTANCE      | Low\u003cbr/\u003eNormal\u003cbr/\u003eHigh                  | Normal        | Adjust building resistance to attacks.                                                                          |\n| CREATIVEMODE            | Bool                                     | false         | Enable creative mode game.                                                                                      |\n| PLAYERSIMMORTALMODE     | Bool                                     | false         | Enable god mode for all players.                                                                                |\n| FORCEPLACEFULLLOAD      | Bool                                     | false         | If true, everything players have in hands will be placed in a single click (stones, stone floors, wood floors)  |\n| NOCUTTINGSSPAWN         | Bool                                     | false         | If true, disable cuttings spawning.                                                                             |\n| ONEHITTOCUTTREE         | Bool                                     | false         | Enable chopping tree with a single hit.                                                                         |\n\n\n\n\nAll descriptions are from [Dedicated Server Configuration Guide](https://steamcommunity.com/sharedfiles/filedetails/?id=2992700419\u0026snr=1_2108_9__2107)","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmax-pfeiffer%2Fsotf-dedicated-game-server-docker","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmax-pfeiffer%2Fsotf-dedicated-game-server-docker","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmax-pfeiffer%2Fsotf-dedicated-game-server-docker/lists"}