{"meta":{"slug":"games-steamcmd-foundry","name":"Foundry","category":"foundry","source":"pelican","owner":"pelican-eggs","repo":"games-steamcmd","branch":"main","path":"foundry/egg-foundry.json","rawUrl":"https://raw.githubusercontent.com/pelican-eggs/games-steamcmd/main/foundry/egg-foundry.json","indexedAt":1792246788483},"egg":{"_comment":"DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PANEL","meta":{"version":"PTDL_v2","update_url":null},"exported_at":"2026-04-06T02:01:23+00:00","name":"Foundry","author":"eggs@goover.dev","uuid":"91705781-6ef4-49a7-8655-8da3b89aa99f","description":"Build a factory optimized to perfection or an artistic masterpiece in an infinite voxel world. Mine and harvest resources, automate your ever-growing production lines and manage complex systems while researching your way to mechanical mastery in FOUNDRY.","tags":["steamcmd"],"features":["steam_disk_space"],"docker_images":{"ghcr.io/parkervcp/yolks:wine_latest":"ghcr.io/parkervcp/yolks:wine_latest"},"file_denylist":[],"startup":"xvfb :0 -screen 0 1024x768x16; DISPLAY=:0.0 xvfb-run wine /home/container/FoundryDedicatedServer.exe -log","config":{"files":"{\r\n    \"App.cfg\": {\r\n        \"parser\": \"properties\",\r\n        \"find\": {\r\n            \"server_name\": \"{{server.environment.SERVER_NAME}}\",\r\n            \"server_password\": \"{{server.environment.SRV_PW}}\",\r\n            \"server_world_name\": \"{{server.environment.WORLD_NAME}}\",\r\n            \"server_max_players\": \"{{server.environment.MAX_PLAYERS}}\",\r\n            \"server_port\": \"{{server.allocations.default.port}}\",\r\n            \"server_query_port\": \"{{server.environment.QUERY_PORT}}\",\r\n            \"pause_server_when_empty\": \"{{server.environment.PAUSE_SERVER}}\",\r\n            \"autosave_interval\": \"{{server.environment.AUTOSAVE_INTERVAL}}\",\r\n            \"server_is_public\": \"{{server.environment.PUBLIC_SERVER}}\",\r\n            \"server_persistent_data_override_folder\": \"{{server.environment.SAVE_PATH}}\",\r\n            \"map_seed\": \"{{server.environment.MAP_SEED}}\"\r\n        }\r\n    }\r\n}","startup":"{\r\n    \"done\": \"Dedicated server is now running!\"\r\n}","logs":"{}","stop":"^C"},"scripts":{"installation":{"script":"#!/bin/bash\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}Foundry Installscript${NC}\"\r\necho -e \"${YELLOW}Egg by gOOvER | 2024 MIT Licence${NC}\"\r\necho -e \"${BLUE}-------------------------------------------------${NC}\"\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' ) +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 ## 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\n# add below your custom commands if needed\r\nmkdir -p $HOME/Mods\r\nmkdir -p $HOME/serverfiles\r\n\r\n#ccheck for config\r\nFILE=$HOME/App.cfg\r\n\r\nif [ -f \"$FILE\" ]; then\r\n  echo -e \"${BLUE}-------------------------------------------------${NC}\"\r\n  echo -e \"${GREEN}App.cfg found.${NC}\"\r\n  echo -e \"${BLUE}-------------------------------------------------${NC}\"\r\nelse  \r\n  echo -e \"${BLUE}-------------------------------------------------${NC}\"\r\n  echo -e \"${RED}No App.cfg found. downloading default...${NC}\"\r\n  echo -e \"${BLUE}-------------------------------------------------${NC}\"\r\n  cd $HOME\r\n  curl -sSL -o App.cfg https://dedicated.foundry-game.com/App.cfg\r\n  echo -e \"${GREEN}..done..${NC}\"\r\nfi\r\n\r\n## cleanup to prevent errors\r\necho -e \"${BLUE}-------------------------------------------------${NC}\"\r\necho -e \"${RED}deleting old wine dirs... please wait...${NC}\"\r\necho -e \"${BLUE}-------------------------------------------------${NC}\"\r\n\r\nif [ ! -d \"/mnt/server/.wine\" ]; then\r\n    rm -fR /mnt/server/.wine\r\n    rm -fR /mnt/server/.config\r\n    rm -fR /mnt/server/.cache\r\n    rm -fR /mnt/server/.local\r\n    rm -fR /mnt/server/appcache\r\nfi\r\necho -e \"${GREEN}..done..${NC}\"\r\n\r\n## install end\r\necho -e \"${BLUE}-------------------------------------------------${NC}\"\r\necho -e \"${GREEN}Installation completed...${NC}\"\r\necho -e \"${BLUE}-------------------------------------------------${NC}\"","container":"ghcr.io/parkervcp/installers:debian","entrypoint":"bash"}},"variables":[{"sort":null,"name":"[SERVER] Steam Query Port","description":"Sets the network port used by the Steam server browser to query information about the game. This is only used if the server is set to public.","env_variable":"QUERY_PORT","default_value":"27015","user_viewable":true,"user_editable":false,"rules":"required|integer|between:1024,65536","field_type":"text"},{"sort":null,"name":"[SERVER] Server Name","description":"This is the name of the server listed in the Steam server browser.","env_variable":"SERVER_NAME","default_value":"","user_viewable":true,"user_editable":true,"rules":"required|string|max:40","field_type":"text"},{"sort":null,"name":"[SERVER] Server World Name","description":"Sets the server world name. This is the folder where the save files will be stored.","env_variable":"WORLD_NAME","default_value":"MyFoundry","user_viewable":true,"user_editable":true,"rules":"required|string|max:20","field_type":"text"},{"sort":null,"name":"[SERVER] Server Password","description":"Sets the server password.","env_variable":"SRV_PW","default_value":"","user_viewable":true,"user_editable":true,"rules":"nullable|string|max:20","field_type":"text"},{"sort":null,"name":"[SERVER] Pause Server When Empty","description":"Will the server pause when nobody is connected.","env_variable":"PAUSE_SERVER","default_value":"true","user_viewable":true,"user_editable":true,"rules":"required|string|in:true,false","field_type":"text"},{"sort":null,"name":"[SERVER] Autosave Interval","description":"Sets the autosave frequency in seconds.","env_variable":"AUTOSAVE_INTERVAL","default_value":"300","user_viewable":true,"user_editable":true,"rules":"required|numeric","field_type":"text"},{"sort":null,"name":"[SERVER] Server Public","description":"Sets whether the server is listed on the Steam server browser.","env_variable":"PUBLIC_SERVER","default_value":"true","user_viewable":true,"user_editable":true,"rules":"required|string|in:true,false","field_type":"text"},{"sort":null,"name":"[SERVER] Map Seed","description":"Sets the map seed used to generate the world.","env_variable":"MAP_SEED","default_value":"42938743982","user_viewable":true,"user_editable":true,"rules":"required|numeric","field_type":"text"},{"sort":null,"name":"[SERVER] Server Max Players","description":"This sets the max amount of players on a server.","env_variable":"MAX_PLAYERS","default_value":"32","user_viewable":true,"user_editable":true,"rules":"required|numeric","field_type":"text"},{"sort":null,"name":"[SERVER] Savepath","description":"","env_variable":"SAVE_PATH","default_value":"/home/container/serverfiles","user_viewable":true,"user_editable":true,"rules":"required|string","field_type":"text"},{"sort":null,"name":"[SERVER] Auto update the server","description":"","env_variable":"AUTO_UPDATE","default_value":"1","user_viewable":true,"user_editable":true,"rules":"boolean","field_type":"text"},{"sort":null,"name":"WINDOWS_INSTALL","description":"","env_variable":"WINDOWS_INSTALL","default_value":"1","user_viewable":false,"user_editable":false,"rules":"required|in:1","field_type":"text"},{"sort":null,"name":"[STEAM] Steam App ID","description":"Steam App ID","env_variable":"SRCDS_APPID","default_value":"2915550","user_viewable":false,"user_editable":false,"rules":"required|string|in:2915550","field_type":"text"},{"sort":null,"name":"[WINE] WINETRICKS_RUN","description":"","env_variable":"WINETRICKS_RUN","default_value":"mono","user_viewable":false,"user_editable":false,"rules":"required|string","field_type":"text"},{"sort":null,"name":"[WINE] WINEDEBUG","description":"","env_variable":"WINEDEBUG","default_value":"-all","user_viewable":false,"user_editable":false,"rules":"required|string","field_type":"text"},{"sort":null,"name":"[WINE] XVFB","description":"","env_variable":"XVFB","default_value":"1","user_viewable":false,"user_editable":false,"rules":"required|in:1","field_type":"text"}]},"readme":"# Foundry\n\n### Game Description\n\nBuild a factory optimized to perfection or an artistic masterpiece in an infinite voxel world. Mine and harvest resources, automate your ever-growing production lines and manage complex systems while researching your way to mechanical mastery in FOUNDRY.\n\n### Useful links\n\nSteam: https://store.steampowered.com/app/983870/FOUNDRY/\nHomepage: https://www.paradoxinteractive.com/games/foundry/about\nMore server info: https://dedicated.foundry-game.com/\n\n### Author & Contributers\n| Name        | Github Profile  | Buy me a Coffee |\n| ------------- |-------------|-------------|\n|   gOOvER   | https://github.com/gOOvER | [![ko-fi](https://ko-fi.com/img/githubbutton_sm.svg)](https://ko-fi.com/B0B351D0Q) |\n\n\n### Server Ports\n\nFoundry requires up to 2 ports. You can choose every port you want.\n\n| Port    | default       |\n|---------|---------------|\n| Game    |     3724     |\n| Query     |     27015     |\n\n"}