{"meta":{"slug":"pterodactyl-enshrouded","name":"Pterodactyl Enshrouded","category":"enshrouded","source":"pelican","owner":"pelican-eggs","repo":"games-steamcmd","branch":"main","path":"enshrouded/egg-pterodactyl-enshrouded.json","rawUrl":"https://raw.githubusercontent.com/pelican-eggs/games-steamcmd/main/enshrouded/egg-pterodactyl-enshrouded.json","indexedAt":1792246788483},"egg":{"_comment":"DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO","meta":{"update_url":null,"version":"PTDL_v2"},"exported_at":"2024-06-01T00:04:11+00:00","name":"Enshrouded","author":"vapokrocks@gmail.com","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.  Credit to gOOvER for the help with the proton image which seems to be performing better over the wine egg.","features":["steam_disk_space"],"docker_images":{"ghcr.io/parkervcp/steamcmd:proton":"ghcr.io/parkervcp/steamcmd:proton"},"file_denylist":[],"startup":"rm ./logs/enshrouded_server.log; proton run ./enshrouded_server.exe & ENS_PID=$! ; tail -c0 -F ./logs/enshrouded_server.log --pid=$ENS_PID","config":{"files":"{\r\n    \"enshrouded_server.json\": {\r\n        \"parser\": \"json\",\r\n        \"find\": {\r\n            \"name\": \"{{server.build.env.SRV_NAME}}\",\r\n            \"password\": \"{{server.build.env.SRV_PW}}\",\r\n            \"slotCount\": \"{{server.build.env.MAX_PLAYERS}}\",\r\n            \"gamePort\": \"{{server.build.default.port}}\",\r\n            \"queryPort\": \"{{server.build.env.QUERY_PORT}}\"\r\n        }\r\n    }\r\n}","logs":"{}","startup":"{\r\n    \"done\": \"[Session] 'HostOnline' (up)!\"\r\n}","stop":"^C"},"scripts":{"installation":{"container":"ghcr.io/parkervcp/installers:debian","entrypoint":"bash","script":"#!/bin/bash\r\n# steamcmd Base Installation Script\r\n#\r\nclear\r\nRED='\\033[0;31m'\r\nGREEN='\\033[0;32m'\r\nYELLOW='\\033[1;33m'\r\nBLUE='\\033[0;34m'\r\nNC='\\033[0m'\r\n\r\necho -e \"${BLUE}-------------------------------------------------${NC}\"\r\necho -e \"${YELLOW}Enshrouded  Installscript${NC}\"\r\necho -e \"${YELLOW}Egg by gOOvER | https://goover.dev${NC}\"\r\necho -e \"${BLUE}-------------------------------------------------${NC}\"\r\n\r\n#apt -y update\r\n#apt -y --no-install-recommends install curl lib32gcc-s1 ca-certificates jq dos2unix\r\n\r\necho -e \"${BLUE}-------------------------------------------------${NC}\"\r\necho -e \"${YELLOW}download and install steamcmd. please wait...${NC}\"\r\necho -e \"${BLUE}-------------------------------------------------${NC}\"\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\necho -e \"${GREEN}..done..${NC}\"\r\n\r\n## install game using steamcmd\r\necho -e \"${BLUE}-------------------------------------------------${NC}\"\r\necho -e \"${YELLOW}install game using steamcmd. please wait...${NC}\"\r\necho -e \"${BLUE}-------------------------------------------------${NC}\"\r\n\r\n./steamcmd.sh +force_install_dir /mnt/server +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} $( [[ \"${WINDOWS_INSTALL}\" == \"1\" ]] && printf %s '+@sSteamCmdForcePlatformType windows' ) $( [[ \"${STEAM_SDK}\" == \"1\" ]] && printf %s '+app_update 1007' ) +app_update ${SRCDS_APPID} $( [[ -z ${SRCDS_BETAID} ]] || printf %s \"-beta ${SRCDS_BETAID}\" ) $( [[ -z ${SRCDS_BETAPASS} ]] || printf %s \"-betapassword ${SRCDS_BETAPASS}\" ) ${INSTALL_FLAGS} validate +quit\r\necho -e \"${GREEN}..done..${NC}\"\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\n# add below your custom commands if needed\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## install end\r\necho -e \"${BLUE}-------------------------------------------------${NC}\"\r\necho -e \"${GREEN}Installation completed...${NC}\"\r\necho -e \"${BLUE}-------------------------------------------------${NC}\""}},"variables":[{"name":"[SERVER] Steam Query Port","description":"Steam Query Port","env_variable":"QUERY_PORT","default_value":"","user_viewable":true,"user_editable":true,"rules":"required|numeric","field_type":"text"},{"name":"WINDOWS_INSTALL","description":"","env_variable":"WINDOWS_INSTALL","default_value":"1","user_viewable":false,"user_editable":false,"rules":"boolean","field_type":"text"},{"name":"[STEAM] Steam App ID","description":"Steam App ID","env_variable":"SRCDS_APPID","default_value":"2278520","user_viewable":false,"user_editable":false,"rules":"required|string|in:2278520","field_type":"text"},{"name":"[SERVER] Auto Update","description":"Enable automatic updates on boot","env_variable":"AUTO_UPDATE","default_value":"1","user_viewable":true,"user_editable":true,"rules":"boolean","field_type":"text"},{"name":"[SERVER] Server Name","description":"Name of the server","env_variable":"SRV_NAME","default_value":"My Server","user_viewable":true,"user_editable":true,"rules":"required|string","field_type":"text"},{"name":"[SERVER] Server Password","description":"Server password","env_variable":"SRV_PW","default_value":"","user_viewable":true,"user_editable":true,"rules":"nullable|string","field_type":"text"},{"name":"[SERVER] Max Players","description":"Maximum number of players allowed","env_variable":"MAX_PLAYERS","default_value":"16","user_viewable":true,"user_editable":true,"rules":"required|numeric","field_type":"text"},{"name":"[SYSTEM] Validate","description":"Validate the serverfiles through Steam","env_variable":"VALIDATE","default_value":"0","user_viewable":true,"user_editable":true,"rules":"boolean","field_type":"text"}]},"readme":"# Enshrouded\n\n### Game Description\n\nEnshrouded 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.\n\nIgnite the Ancient power of the Flame, and piece together the fragments of a story that unfolds below the surface.\n\n### Usefull links\n\nHomepage: https://enshrouded.com/\nSteam: https://store.steampowered.com/app/1203620/Enshrouded/\nWiki: https://enshrouded.wiki.gg/wiki/Enshrouded_Wiki\nDiscord: https://discord.gg/enshrouded\n\n### Author & Contributers\n| Name        | Github Profile  | Buy me a Coffee |\n| ------------- |-------------|-------------|\n|   Vapok   | https://github.com/Vapok | https://www.buymeacoffee.com/vapok |\n|   QuintenQVD0   | https://github.com/QuintenQVD0 |  |\n|   gOOvER   | https://github.com/gOOvER | ![ko-fi](https://ko-fi.com/img/githubbutton_sm.svg)](https://ko-fi.com/B0B351D0Q)  |\n\n### Server Ports\n\nEnshrouded requires up to 2 ports. Queryport must be GAMEPORT +1 \n\n| Port    | default       |\n|---------|---------------|\n| Game    |     15636     |\n| Query   |     15637     |\n\n### Configuration\n\nWhen 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:\n```json\n{\n\n    \"name\": \"Enshrouded Server\",\n    \"password\": \"\",\n    \"saveDirectory\": \"./savegame\",\n    \"logDirectory\": \"./logs\",\n    \"ip\": \"0.0.0.0\",\n    \"gamePort\": 15636,\n    \"queryPort\": 15637,\n    \"slotCount\": 16\n\n}\n```\n*   Under “name” the name of the dedicated server can be defined as it will appear in the server list for players of Enshrouded.\n    *   Note: as all players can see the names of the servers, please use a non-offensive name for the server.\n*   In the entry “password” a password can be defined that players need to enter before being allowed to join the server.\n    *   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.\n*   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”\n*   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”\n*   If needed for internal network configurations, the IP of the server can be set in the “ip” setting.\n*   “gamePort” and “queryPort” can be changed to match your firewall settings.\n*   “slotCount” allows the definition of the maximum of player slots.\n    *   The slot count must be a number between 1 and 16.\n    *   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.\n\n### Installation/System Requirements\n\n|           | Recommended  | Extra info  |\n|-----------|--------------|-------------|\n| Processor | Recent x86/64 (AMD/Intel) processor. | You need min 4 Cores for the Server. |\n| RAM       |  4-6 GB     |\n| Storage   |  30 GB (or more, depending on save size or frequency) |\n\n### Server not showing in Serverlist?\n\nThe fact that the server is not displayed in the server list is a known problem.\n\nAs a workaround, you can add the server as a favourite via IP:port in the Steam server browser.\nThe server should then be at the top of the ingame server list"}