diff --git a/README.md b/README.md index fe144bb1..f40261f0 100644 --- a/README.md +++ b/README.md @@ -213,6 +213,7 @@ If you are reading this it looks like you are looking to add an egg to your serv * [Arma 3](game_eggs/steamcmd_servers/arma/arma3) * [Arma Reforger](game_eggs/steamcmd_servers/arma/arma_reforger) * [Assetto Corsa](game_eggs/steamcmd_servers/assetto_corsa) +* [Astroneer](game_eggs/steamcmd_servers/astroneer) * [Avorion](game_eggs/steamcmd_servers/avorion) * [Barotrauma](game_eggs/steamcmd_servers/barotrauma) * [Black Mesa](game_eggs/steamcmd_servers/black_mesa) diff --git a/game_eggs/README.md b/game_eggs/README.md index 8a483c0e..b50d9ca2 100644 --- a/game_eggs/README.md +++ b/game_eggs/README.md @@ -113,6 +113,7 @@ * [Arma 3](steamcmd_servers/arma/arma3) * [Arma Reforger](steamcmd_servers/arma/arma_reforger) * [Assetto Corsa](steamcmd_servers/assetto_corsa) +* [Astroneer](steamcmd_servers/astroneer) * [Avorion](steamcmd_servers/avorion) * [Barotrauma](steamcmd_servers/barotrauma) * [Black Mesa](steamcmd_servers/black_mesa) diff --git a/game_eggs/steamcmd_servers/astroneer/README.md b/game_eggs/steamcmd_servers/astroneer/README.md new file mode 100644 index 00000000..ea3ee017 --- /dev/null +++ b/game_eggs/steamcmd_servers/astroneer/README.md @@ -0,0 +1,40 @@ +# Astroneer + +Steam description : Explore and reshape distant worlds! Astroneer is set during the gold rush of the 25th century: players must explore the farthest reaches of space, risking their lives and resources in a hostile environment for a chance to become a millionaire. + +## Install notes + +The following variables are required to prevent the server to crash on startup : +* Public IP : Used to register the server. Must be the IP used to join the server. +* Server Owner Name : Steam username of the server owner. It also set the given user as owner and administrator of the server. +* Server Owner Guid : Steam id of the server owner. It also set the given user as owner and administrator of the server. ((Steam FAQ)[https://help.steampowered.com/en/faqs/view/2816-BE67-5B69-0FEC]) + +## Minimum RAM warning + +Astroneer required at least 700MiB to run. If more than one player will connect, 1GiB seems to be a minimum. + +## Minumim Sorage warning + +Astroneer required at least 3GiB. The size may increase with larger save file. + +## Server Ports + +Astroneer requires a single port to run. + +| Port | default | +|-------------|---------| +| Game | 27000 | + +### Notes + +27000 is the default port, but any port can be used. + + +## Client Configuration + +To be able to connect to the server you need to edit Engine.ini (located at %LocalAppData%\Astro\Saved\Config\WindowsNoEditor\Engine.ini) on every player's computer by adding the following : + +``` +[SystemSettings] +net.AllowEncryption=False +``` \ No newline at end of file diff --git a/game_eggs/steamcmd_servers/astroneer/egg-astroneer-dedicated-server.json b/game_eggs/steamcmd_servers/astroneer/egg-astroneer-dedicated-server.json new file mode 100644 index 00000000..be9cdba6 --- /dev/null +++ b/game_eggs/steamcmd_servers/astroneer/egg-astroneer-dedicated-server.json @@ -0,0 +1,122 @@ +{ + "_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO", + "meta": { + "version": "PTDL_v2", + "update_url": null + }, + "exported_at": "2023-02-20T09:47:43+01:00", + "name": "Astroneer Dedicated Server", + "author": "melethainiel.aerin@gmail.com", + "description": "A game of aerospace industry and interplanetary exploration.", + "features": null, + "docker_images": { + "ghcr.io\/parkervcp\/steamcmd:proton": "ghcr.io\/parkervcp\/steamcmd:proton" + }, + "file_denylist": [], + "startup": "proton run .\/Astro\/Binaries\/Win64\/AstroServer-Win64-Shipping.exe", + "config": { + "files": "{\r\n \"Astro\/Saved\/Config\/WindowsServer\/Engine.ini\": {\r\n \"parser\": \"ini\",\r\n \"find\": {\r\n \"url.Port\": \"{{server.build.default.port}}\",\r\n \"[SystemSettings].net.AllowEncryption\":\"false\"\r\n }\r\n },\r\n \"Astro\/Saved\/Config\/WindowsServer\/AstroServerSettings.ini\": {\r\n \"parser\": \"ini\",\r\n \"find\": {\r\n \"[\/Script\/Astro.AstroServerSettings].PublicIP\": \"{{env.PUBLIC_IP}}\",\r\n \"[\/Script\/Astro.AstroServerSettings].OwnerName\": \"{{env.OWNER_NAME}}\",\r\n \"[\/Script\/Astro.AstroServerSettings].OwnerGuid\": \"{{env.OWNER_GUID}}\",\r\n \"[\/Script\/Astro.AstroServerSettings].PlayerProperties\": \"(PlayerFirstJoinName=\\\"{{env.OWNER_NAME}}\\\",PlayerCategory=Admin,PlayerGuid=\\\"{{env.OWNER_GUID}}\\\",PlayerRecentJoinName=\\\"\\\")\",\r\n \"[\/Script\/Astro.AstroServerSettings].ServerPassword\": \"{{env.SERVER_PWD}}\",\r\n \"[\/Script\/Astro.AstroServerSettings].ServerName\": \"{{env.SERVER_NAME}}\"\r\n }\r\n }\r\n}", + "startup": "{\r\n \"done\": \"nable to use setpriority safely\"\r\n}", + "logs": "{}", + "stop": "^C" + }, + "scripts": { + "installation": { + "script": "#!\/bin\/bash\r\n# steamcmd Base Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\n# Image to install with is 'ghcr.io\/parkervcp\/installers:debian'\r\n# Install packages. Default packages below are not required if using our existing install image thus speeding up the install process.\r\n#apt -y update\r\n#apt -y --no-install-recommends install curl lib32gcc-s1 ca-certificates\r\n## just in case someone removed the defaults.\r\nif [[ \"${STEAM_USER}\" == \"\" ]] || [[ \"${STEAM_PASS}\" == \"\" ]]; then\r\necho -e \"steam user is not set.\\n\"\r\necho -e \"Using anonymous user.\\n\"\r\nSTEAM_USER=anonymous\r\nSTEAM_PASS=\"\"\r\nSTEAM_AUTH=\"\"\r\nelse\r\necho -e \"user set to ${STEAM_USER}\"\r\nfi\r\n## download and install steamcmd\r\n## install end\r\necho \"-----------------------------------------\"\r\necho \"Install steamcmd\"\r\necho \"-----------------------------------------\"\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# 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## install game using steamcmd\r\n## install end\r\necho \"-----------------------------------------\"\r\necho \"Install game\"\r\necho \"-----------------------------------------\"\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## set up 32 bit libraries\r\nmkdir -p \/mnt\/server\/.steam\/sdk32\r\ncp -v linux32\/steamclient.so ..\/.steam\/sdk32\/steamclient.so\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## install end\r\necho \"-----------------------------------------\"\r\necho \"Installation completed...\"\r\necho \"-----------------------------------------\"", + "container": "ghcr.io\/parkervcp\/installers:debian", + "entrypoint": "bash" + } + }, + "variables": [ + { + "name": "Public IP", + "description": "Public IP to connect to the server.", + "env_variable": "PUBLIC_IP", + "default_value": "", + "user_viewable": true, + "user_editable": true, + "rules": "required|string", + "field_type": "text" + }, + { + "name": "Server Owner Name", + "description": "Steam username of the server owner", + "env_variable": "OWNER_NAME", + "default_value": "", + "user_viewable": true, + "user_editable": true, + "rules": "required|string", + "field_type": "text" + }, + { + "name": "Server Owner Guid", + "description": "Steam id of the server owner", + "env_variable": "OWNER_GUID", + "default_value": "", + "user_viewable": true, + "user_editable": true, + "rules": "required|string", + "field_type": "text" + }, + { + "name": "Server Password", + "description": "If specified, players must provide this password to join the server.", + "env_variable": "SERVER_PWD", + "default_value": "", + "user_viewable": true, + "user_editable": true, + "rules": "nullable|alpha_dash|between:1,100", + "field_type": "text" + }, + { + "name": "Automatic Updates", + "description": "Quickly checks for any server updates on startup, and updates if necessary. (1 Enable | 0 Disable)", + "env_variable": "AUTO_UPDATE", + "default_value": "1", + "user_viewable": true, + "user_editable": true, + "rules": "required|boolean", + "field_type": "text" + }, + { + "name": "[Advanced] Windows Install", + "description": "Windows Install", + "env_variable": "WINDOWS_INSTALL", + "default_value": "1", + "user_viewable": true, + "user_editable": false, + "rules": "required|string|max:20", + "field_type": "text" + }, + { + "name": "[Advanced] Steam App ID", + "description": "", + "env_variable": "SRCDS_APPID", + "default_value": "728470", + "user_viewable": false, + "user_editable": false, + "rules": "required|string|max:20", + "field_type": "text" + }, + { + "name": "PROTON_LOG", + "description": "", + "env_variable": "PROTON_LOG", + "default_value": "1", + "user_viewable": false, + "user_editable": false, + "rules": "required|boolean", + "field_type": "text" + }, + { + "name": "Server Name", + "description": "", + "env_variable": "SERVER_NAME", + "default_value": "Pterodactyl hosted Server", + "user_viewable": true, + "user_editable": true, + "rules": "required|string|max:60", + "field_type": "text" + } + ] +} \ No newline at end of file