diff --git a/README.md b/README.md index 6bdb2fda..9993b67d 100644 --- a/README.md +++ b/README.md @@ -253,6 +253,7 @@ If you are reading this it looks like you are looking to add an egg to your serv * [BATTALION: Legacy](game_eggs/steamcmd_servers/battalion_legacy) * [Black Mesa](game_eggs/steamcmd_servers/black_mesa) * [Citadel: Forged with Fire](game_eggs/steamcmd_servers/citadel) +* [Colony Survival](game_eggs/steamcmd_servers/colony_survival) * [Conan Exiles](game_eggs/steamcmd_servers/conan_exiles) * [Core Keeper](game_eggs/steamcmd_servers/core_keeper) * [Counter-Strike](game_eggs/steamcmd_servers/counter_strike/) diff --git a/game_eggs/README.md b/game_eggs/README.md index dbff044e..db66faff 100644 --- a/game_eggs/README.md +++ b/game_eggs/README.md @@ -145,6 +145,7 @@ * [BATTALION: Legacy](steamcmd_servers/battalion_legacy) * [Black Mesa](steamcmd_servers/black_mesa) * [Citadel: Forged with Fire](steamcmd_servers/citadel) +* [Colony Survival](steamcmd_servers/colony_survival) * [Conan Exiles](steamcmd_servers/conan_exiles) * [Core Keeper](steamcmd_servers/core_keeper) * [Counter-Strike](steamcmd_servers/counter_strike/) diff --git a/game_eggs/steamcmd_servers/README.md b/game_eggs/steamcmd_servers/README.md index 4580c282..655a1566 100644 --- a/game_eggs/steamcmd_servers/README.md +++ b/game_eggs/steamcmd_servers/README.md @@ -48,6 +48,10 @@ This is a collection of servers that use SteamCMD to install. [citadel](citadel) +## Colony Survival + +[Colony Survival](colony_survival) + ## Conan Exiles [Conan Exiles](conan_exiles) diff --git a/game_eggs/steamcmd_servers/colony_survival/README.md b/game_eggs/steamcmd_servers/colony_survival/README.md new file mode 100644 index 00000000..8dfccc2e --- /dev/null +++ b/game_eggs/steamcmd_servers/colony_survival/README.md @@ -0,0 +1,23 @@ +# Colony Survival + +## [Documentation](https://colonysurvival.fandom.com/wiki/Dedicated_Server) + + +## Installation/System Requirements + +| | Bare Minimum | Recommended | +|---------|---------|---------| +| Processor | *Any AMD64 will work* | ** | +| RAM | *2 GiB* | *4 GiB* | +| Storage | *2 GiB* | *3 GiB* | +| Network | *Anything will work* | ** | +| Game Ownership | *not needed* | *Needed for mods but the egg does not support it* | + +## Server Ports + +Ports required to run the server in a table format. + +| Port | default | +|---------|---------| +| Game | 27004 | +| Steam | 27005 | diff --git a/game_eggs/steamcmd_servers/colony_survival/egg-colony-survival.json b/game_eggs/steamcmd_servers/colony_survival/egg-colony-survival.json new file mode 100644 index 00000000..02711c98 --- /dev/null +++ b/game_eggs/steamcmd_servers/colony_survival/egg-colony-survival.json @@ -0,0 +1,92 @@ +{ + "_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO", + "meta": { + "version": "PTDL_v2", + "update_url": null + }, + "exported_at": "2023-12-18T17:27:56+01:00", + "name": "Colony Survival", + "author": "josdekurk@gmail.com", + "description": "Colony Survival is a unique first-person strategy game developed by a two-man team. Build your own colony in a voxel world. Command guards, farmers, miners and other colonists. Defend your colony against the horde of monsters that attacks every night!", + "features": null, + "docker_images": { + "SteamCMD": "ghcr.io\/parkervcp\/steamcmd:debian" + }, + "file_denylist": [], + "startup": ".\/colonyserver.x86_64 -batchmode -nographics +server.world \"{{WORLD_NAME}}\" +server.networktype SteamOnline +server.name \"{{SERVER_NAME}}\" +server.maxplayers {{MAX_PLAYERS}} +server.gameport {{SERVER_PORT}} +server.ip 0.0.0.0 +server.steamport {{SERVER_STEAMPORT}}", + "config": { + "files": "{}", + "startup": "{\r\n \"done\": \"Starting networking type\"\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\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} +app_update ${SRCDS_APPID} 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## install end\r\necho \"-----------------------------------------\"\r\necho \"Installation completed...\"\r\necho \"-----------------------------------------\"", + "container": "ghcr.io\/parkervcp\/installers:debian", + "entrypoint": "bash" + } + }, + "variables": [ + { + "name": "APP ID", + "description": "", + "env_variable": "SRCDS_APPID", + "default_value": "748090", + "user_viewable": false, + "user_editable": false, + "rules": "required|string|in:748090", + "field_type": "text" + }, + { + "name": "Auto update", + "description": "Auto update the server on restart", + "env_variable": "AUTO_UPDATE", + "default_value": "1", + "user_viewable": true, + "user_editable": true, + "rules": "required|boolean", + "field_type": "text" + }, + { + "name": "World name", + "description": "", + "env_variable": "WORLD_NAME", + "default_value": "Pterodactyl", + "user_viewable": true, + "user_editable": true, + "rules": "required|string|max:32", + "field_type": "text" + }, + { + "name": "Server name", + "description": "", + "env_variable": "SERVER_NAME", + "default_value": "Pterodactyl", + "user_viewable": true, + "user_editable": true, + "rules": "required|string|max:32", + "field_type": "text" + }, + { + "name": "Maximum Players", + "description": "", + "env_variable": "MAX_PLAYERS", + "default_value": "10", + "user_viewable": true, + "user_editable": true, + "rules": "required|integer|min:1|max:64", + "field_type": "text" + }, + { + "name": "Server steamport", + "description": "", + "env_variable": "SERVER_STEAMPORT", + "default_value": "27005", + "user_viewable": true, + "user_editable": false, + "rules": "required|string|", + "field_type": "text" + } + ] +} \ No newline at end of file