Adding the Official Enshrouded Egg (#2686)

* Adding the Enshrouded Dedicated Server

New Egg running on Wine-Latest

* Enshrouded Dedicated Server Egg

* Adding to Readme's

* Readme

* Updating Server Name

* Cleanup

* This is cleaner

* make github happy

---------

Co-authored-by: Quinten <67589015+QuintenQVD0@users.noreply.github.com>
This commit is contained in:
Pete Navarra 2024-01-24 10:56:45 -05:00 committed by GitHub
parent c9f6ae52e2
commit ffc5fb7fb0
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
5 changed files with 199 additions and 0 deletions

View File

@ -260,6 +260,7 @@ If you are reading this it looks like you are looking to add an egg to your serv
* [Don't Starve Together](game_eggs/steamcmd_servers/dont_starve)
* [ECO](game_eggs/steamcmd_servers/eco)
* [Empyrion - Galactic Survival](game_eggs/steamcmd_servers/empyrion)
* [Enshrouded](game_eggs/steamcmd_servers/enshrouded)
* [Fistful of Frags](game_eggs/steamcmd_servers/fof)
* [Frozen Flame](game_eggs/steamcmd_servers/frozen_flame)
* [Ground Branch](game_eggs/steamcmd_servers/ground_branch)

View File

@ -156,6 +156,7 @@
* [Don't Starve Together](steamcmd_servers/dont_starve)
* [ECO](steamcmd_servers/eco)
* [Empyrion - Galactic Survival](steamcmd_servers/empyrion)
* [Enshrouded](steamcmd_servers/enshrouded)
* [Fistful of Frags](steamcmd_servers/fof)
* [Frozen Flame](steamcmd_servers/frozen_flame)
* [Ground Branch](steamcmd_servers/ground_branch)

View File

@ -84,6 +84,10 @@ This is a collection of servers that use SteamCMD to install.
[Empyrion - Galactic Survival](empyrion)
## Enshrouded
[Enshrouded](enshrouded)
## Fistful of Frags
[Fistful of Frags](fof)

View File

@ -0,0 +1,59 @@
# Enshrouded
### Game Description
Enshrouded is a game of survival, crafting, and Action RPG combat, set within a sprawling voxel-based continent. As you journey across the mountains and deserts of an open world, you are free to choose your path and shape your destiny.
Ignite the Ancient power of the Flame, and piece together the fragments of a story that unfolds below the surface.
### Usefull links
Homepage: https://enshrouded.com/
Steam: https://store.steampowered.com/app/1203620/Enshrouded/
Wiki: https://enshrouded.wiki.gg/wiki/Enshrouded_Wiki
Discord: https://discord.gg/enshrouded
### Author & Contributers
| Name | Github Profile | Buy me a Coffee |
| ------------- |-------------|-------------|
| Vapok | https://github.com/Vapok | https://www.buymeacoffee.com/vapok |
| QuintenQVD0 | https://github.com/QuintenQVD0 | |
### Configuration
When browsing to the installation path of the dedicated server in Windows as described in the article [Multiplayer and Server Hosting](https://enshrouded.zendesk.com/hc/en-us/sections/16050842957085-Multiplayer-and-Server-Hosting) and after starting the enshrouded\_server.exe once, a new file is created called “enshrouded\_server.json”. It contains the following entries:
```json
{
"name": "Enshrouded Server",
"password": "",
"saveDirectory": "./savegame",
"logDirectory": "./logs",
"ip": "0.0.0.0",
"gamePort": 15636,
"queryPort": 15637,
"slotCount": 16
}
```
* Under “name” the name of the dedicated server can be defined as it will appear in the server list for players of Enshrouded.
* Note: as all players can see the names of the servers, please use a non-offensive name for the server.
* In the entry “password” a password can be defined that players need to enter before being allowed to join the server.
* It is highly recommended to set a password. Every player can see the server and can access it, if no password is set. At this point there is no rights management for the server other than the password. We will work on better admin tools and rights management in the near future.
* The directory for the world saved on the dedicated server can be set in the “saveDirectory” setting. By default, the server will save in a subfolder “…/savegame”
* If needed, a specific folder for storing log-files can be set in the “logDirectory” setting. If nothing is changed, the server will save the latest log into the directory “…/logs” and archive previous log-files automatically in the folder “…/logs/backup”
* If needed for internal network configurations, the IP of the server can be set in the “ip” setting.
* “gamePort” and “queryPort” can be changed to match your firewall settings.
* “slotCount” allows the definition of the maximum of player slots.
* The slot count must be a number between 1 and 16.
* Note: each slot (player) will increase the impact on the performance of the server. If CPU or the RAM are a bottleneck, lowering the max of available player slots can help mitigating the stress for the server.
### Installation/System Requirements
| | Recommended | Extra info |
|-----------|--------------|-------------|
| Processor | Recent x86/64 (AMD/Intel) processor. | You need min 4 Cores for the Server. |
| RAM | 4-6 GB |
| Storage | 30 GB (or more, depending on save size or frequency) |

View File

@ -0,0 +1,134 @@
{
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
"meta": {
"version": "PTDL_v2",
"update_url": null
},
"exported_at": "2024-01-24T16:49:35+01:00",
"name": "Enshrouded",
"author": "vapokrocks@gmail.com",
"description": "Enshrouded is a survival game currently in beta",
"features": [
"steam_disk_space"
],
"docker_images": {
"Wine Latest": "ghcr.io\/parkervcp\/yolks:wine_latest"
},
"file_denylist": [],
"startup": "wine .\/enshrouded_server.exe",
"config": {
"files": "{\r\n \"enshrouded_server.json\": {\r\n \"parser\": \"json\",\r\n \"find\": {\r\n \"name\": \"{{server.build.env.SERVER_NAME}}\",\r\n \"slotCount\": \"{{server.build.env.SLOT_COUNT}}\",\r\n \"gamePort\": \"{{server.build.default.port}}\",\r\n \"password\": \"{{server.build.env.SERVER_PASSWORD}}\",\r\n \"queryPort\": \"{{server.build.env.QUERY_PORT}}\",\r\n \"ip\": \"0.0.0.0\"\r\n }\r\n }\r\n}",
"startup": "{\r\n \"done\": \"HostOnline\"\r\n}",
"logs": "{}",
"stop": "^C"
},
"scripts": {
"installation": {
"script": "#!\/bin\/bash\r\n\r\n## License: MIT License\r\n## Image to install with is 'ghcr.io\/parkervcp\/installers:debian'\r\n\r\n## just in case someone removed the defaults.\r\nif [[ \"${STEAM_USER}\" == \"\" ]] || [[ \"${STEAM_PASS}\" == \"\" ]]; then\r\n echo -e \"steam user is not set.\\n\"\r\n echo -e \"Using anonymous user.\\n\"\r\n STEAM_USER=anonymous\r\n STEAM_PASS=\"\"\r\n STEAM_AUTH=\"\"\r\nelse\r\n echo -e \"user set to ${STEAM_USER}\"\r\nfi\r\n\r\n## download and install steamcmd\r\ncd \/tmp\r\nmkdir -p \/mnt\/server\/steamcmd\r\ncurl -sSL -o steamcmd.tar.gz https:\/\/steamcdn-a.akamaihd.net\/client\/installer\/steamcmd_linux.tar.gz\r\ntar -xzvf steamcmd.tar.gz -C \/mnt\/server\/steamcmd\r\nmkdir -p \/mnt\/server\/steamapps # Fix steamcmd disk write error when this folder is missing\r\ncd \/mnt\/server\/steamcmd\r\n\r\n# SteamCMD fails otherwise for some reason, even running as root.\r\n# This is changed at the end of the install process anyways.\r\nchown -R root:root \/mnt\r\nexport HOME=\/mnt\/server\r\n\r\n## install game using steamcmd\r\n.\/steamcmd.sh +force_install_dir \/mnt\/server +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} $( [[ \"${WINDOWS_INSTALL}\" == \"1\" ]] && printf %s '+@sSteamCmdForcePlatformType windows' ) +app_update ${SRCDS_APPID} $( [[ -z ${SRCDS_BETAID} ]] || printf %s \"-beta ${SRCDS_BETAID}\" ) $( [[ -z ${SRCDS_BETAPASS} ]] || printf %s \"-betapassword ${SRCDS_BETAPASS}\" ) ${INSTALL_FLAGS} validate +quit ## other flags may be needed depending on install. looking at you cs 1.6\r\n\r\n## set up 32 bit libraries\r\nmkdir -p \/mnt\/server\/.steam\/sdk32\r\ncp -v linux32\/steamclient.so ..\/.steam\/sdk32\/steamclient.so\r\n\r\n## set up 64 bit libraries\r\nmkdir -p \/mnt\/server\/.steam\/sdk64\r\ncp -v linux64\/steamclient.so ..\/.steam\/sdk64\/steamclient.so\r\n\r\nFILE=\/mnt\/server\/enshrouded_server.json\r\nif [ -f \"$FILE\" ]; then\r\n echo \"Config already exist skipping\"\r\nelse \r\n echo \"Config does not yet exist, making one\"\r\n cd \/mnt\/server\r\n touch enshrouded_server.json\r\n echo \"{\" >> enshrouded_server.json\r\n echo '\t\"name\": \"Enshrouded Server\",' >> enshrouded_server.json\r\n echo '\t\"password\": \"\",' >> enshrouded_server.json\r\n echo '\t\"saveDirectory\": \".\/savegame\",' >> enshrouded_server.json\r\n echo '\t\"logDirectory\": \".\/logs\",' >> enshrouded_server.json\r\n echo '\t\"ip\": \"0.0.0.0\",' >> enshrouded_server.json\r\n echo '\t\"gamePort\": 15636,' >> enshrouded_server.json\r\n echo '\t\"queryPort\": 15637,' >> enshrouded_server.json\r\n echo '\t\"slotCount\": 16' >> enshrouded_server.json\r\n echo '}' >> enshrouded_server.json\r\nfi\r\n\r\n\r\n## install end\r\necho \"-----------------------------------------\"\r\necho \"Installation completed...\"\r\necho \"-----------------------------------------\"",
"container": "ghcr.io\/parkervcp\/installers:debian",
"entrypoint": "\/bin\/bash"
}
},
"variables": [
{
"name": "[REQUIRED] Server Query Port",
"description": "UDP port for Steam server list features.",
"env_variable": "QUERY_PORT",
"default_value": "15637",
"user_viewable": true,
"user_editable": true,
"rules": "required|numeric|between:1024,65536",
"field_type": "text"
},
{
"name": "[REQUIRED] Slot Count",
"description": "Number of Slots for Players.",
"env_variable": "SLOT_COUNT",
"default_value": "16",
"user_viewable": true,
"user_editable": true,
"rules": "required|numeric|between:1,16",
"field_type": "text"
},
{
"name": "Server Name",
"description": "",
"env_variable": "SERVER_NAME",
"default_value": "Enshrouded Server",
"user_viewable": true,
"user_editable": true,
"rules": "required|string|max:32",
"field_type": "text"
},
{
"name": "Windows Install Flag",
"description": "Required for windows game server installs",
"env_variable": "WINDOWS_INSTALL",
"default_value": "1",
"user_viewable": false,
"user_editable": false,
"rules": "required|boolean",
"field_type": "text"
},
{
"name": "WINETRICKS_RUN",
"description": "Run installs on software that is required by the server",
"env_variable": "WINETRICKS_RUN",
"default_value": "vcrun2022",
"user_viewable": false,
"user_editable": false,
"rules": "required|string|in:vcrun2022",
"field_type": "text"
},
{
"name": "SRCDS_APPID",
"description": "steam app id found here - https:\/\/developer.valvesoftware.com\/wiki\/Dedicated_Servers_List",
"env_variable": "SRCDS_APPID",
"default_value": "2278520",
"user_viewable": false,
"user_editable": false,
"rules": "required|string|in:2278520",
"field_type": "text"
},
{
"name": "WINEDEBUG",
"description": "",
"env_variable": "WINEDEBUG",
"default_value": "-all",
"user_viewable": false,
"user_editable": false,
"rules": "required|string|max:20",
"field_type": "text"
},
{
"name": "WINEPATH",
"description": "",
"env_variable": "WINEPATH",
"default_value": "\/home\/container",
"user_viewable": false,
"user_editable": false,
"rules": "required|string|max:20",
"field_type": "text"
},
{
"name": "WINEARCH",
"description": "",
"env_variable": "WINEARCH",
"default_value": "win64",
"user_viewable": false,
"user_editable": false,
"rules": "required|string|in:win64",
"field_type": "text"
},
{
"name": "Server Password",
"description": "Password for Server Access",
"env_variable": "SERVER_PASSWORD",
"default_value": "",
"user_viewable": true,
"user_editable": true,
"rules": "nullable|string|max:64",
"field_type": "text"
}
]
}