From 8fdf79e32659d89e16b8ac227afcc85069c9157f Mon Sep 17 00:00:00 2001 From: Rob Stivanson Date: Tue, 30 Jan 2024 03:32:40 -0800 Subject: [PATCH] Add Necesse (#2700) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * initial implementation * Use shipĂȘd java version + fix install script --------- Co-authored-by: Robert Stivanson Co-authored-by: Quinten <67589015+QuintenQVD0@users.noreply.github.com> --- README.md | 1 + game_eggs/README.md | 1 + game_eggs/steamcmd_servers/README.md | 4 + game_eggs/steamcmd_servers/necesse/README.md | 22 +++++ .../steamcmd_servers/necesse/egg-necesse.json | 94 +++++++++++++++++++ 5 files changed, 122 insertions(+) create mode 100644 game_eggs/steamcmd_servers/necesse/README.md create mode 100644 game_eggs/steamcmd_servers/necesse/egg-necesse.json diff --git a/README.md b/README.md index 0e46f910..60f3b1c5 100644 --- a/README.md +++ b/README.md @@ -280,6 +280,7 @@ If you are reading this it looks like you are looking to add an egg to your serv * [Modiverse](game_eggs/steamcmd_servers/modiverse) * [Mordhau](game_eggs/steamcmd_servers/mordhau) * [Mount & Blade II: Bannerlord](game_eggs/steamcmd_servers/mount_blade_II_bannerlord) +* [Necesse](game_eggs/steamcmd_servers/necesse) * [Neos VR](game_eggs/steamcmd_servers/neosvr) * [No More Room in Hell](game_eggs/steamcmd_servers/nmrih) * [No One Survived](game_eggs/steamcmd_servers/no_one_survived) diff --git a/game_eggs/README.md b/game_eggs/README.md index 8de27dce..203b0698 100644 --- a/game_eggs/README.md +++ b/game_eggs/README.md @@ -176,6 +176,7 @@ * [Modiverse](steamcmd_servers/modiverse) * [Mordhau](steamcmd_servers/mordhau) * [Mount & Blade II: Bannerlord](steamcmd_servers/mount_blade_II_bannerlord) +* [Necesse](steamcmd_servers/necesse) * [Neos VR](steamcmd_servers/neosvr) * [No More Room in Hell](steamcmd_servers/nmrih) * [No One Survived](steamcmd_servers/no_one_survived) diff --git a/game_eggs/steamcmd_servers/README.md b/game_eggs/steamcmd_servers/README.md index e3852edf..e69abf50 100644 --- a/game_eggs/steamcmd_servers/README.md +++ b/game_eggs/steamcmd_servers/README.md @@ -157,6 +157,10 @@ This is a collection of servers that use SteamCMD to install. [Mount & Blade II: Bannerlord](mount_blade_II_bannerlord) +## Necesse + +[Necesse](necesse) + ## Neos VR [Neos VR](neosvr) diff --git a/game_eggs/steamcmd_servers/necesse/README.md b/game_eggs/steamcmd_servers/necesse/README.md new file mode 100644 index 00000000..f7e47b68 --- /dev/null +++ b/game_eggs/steamcmd_servers/necesse/README.md @@ -0,0 +1,22 @@ +# Necesse + +Build, quest, and conquer across an infinite procedurally generated world. Play alone or with friends as you establish a settlement and explore deep dungeons, fight monsters and bosses, mine rare ores, craft magical equipment, recruit specialists for your colony, and more! + +## Server Configuration + +Steam page: [link](https://store.steampowered.com/app/1169040/Necesse/) +Official Wiki: [link](https://necessewiki.com) +Server Wiki Page: [link](https://necessewiki.com/Multiplayer) (Linux specifics can be [found here](https://necessewiki.com/Multiplayer-Linux)) + +### Server Ports + +| Port | default | +|-----------|---------| +| Game | 14159 | + +### Configuration files + +| File | Path | +|-----------|---------| +| server.cfg | /home/container/cfg/server.cfg | +| worldSettings.cfg | /home/container/saves/worlds/SAVE_NAME.zip/worldSettings.cfg | diff --git a/game_eggs/steamcmd_servers/necesse/egg-necesse.json b/game_eggs/steamcmd_servers/necesse/egg-necesse.json new file mode 100644 index 00000000..74739eed --- /dev/null +++ b/game_eggs/steamcmd_servers/necesse/egg-necesse.json @@ -0,0 +1,94 @@ +{ + "_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO", + "meta": { + "version": "PTDL_v2", + "update_url": null + }, + "exported_at": "2024-01-30T12:30:23+01:00", + "name": "Necesse", + "author": "josdekurk@gmail.com", + "description": "Build, quest, and conquer across an infinite procedurally generated world. Play alone or with friends as you establish a settlement and explore deep dungeons, fight monsters and bosses, mine rare ores, craft magical equipment, recruit specialists for your colony, and more!", + "features": [ + "steam_disk_space" + ], + "docker_images": { + "ghcr.io\/parkervcp\/steamcmd:debian": "ghcr.io\/parkervcp\/steamcmd:debian" + }, + "file_denylist": [], + "startup": ".\/jre\/bin\/java -Xms128M -Xmx{{SERVER_MEMORY}}M -Dterminal.jline=false -Dterminal.ansi=true -jar Server.jar -localdir -nogui -world {{SAVE_NAME}}", + "config": { + "files": "{\r\n \"cfg\/server.cfg\": {\r\n \"parser\": \"properties\",\r\n \"find\": {\r\n \"port\": \"{{server.build.default.port}},\",\r\n \"slots\": \"{{server.build.env.SERVER_SLOTS}},\",\r\n \"password\": \"{{server.build.env.SERVER_PASSWORD}},\"\r\n }\r\n }\r\n}", + "startup": "{\r\n \"done\": \"Type help for list of commands.\"\r\n}", + "logs": "{}", + "stop": "stop" + }, + "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\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\n\r\n# setup the default config file\r\nexport SERVER_CFG=\/mnt\/server\/cfg\/server.cfg\r\n\r\nif [ ! -f \"$SERVER_CFG\" ]; then\r\n echo \"Generating server config\"\r\n mkdir \"$(dirname \"$SERVER_CFG\")\"\r\n cat > \"$SERVER_CFG\" <