This repository has been archived by the owner on May 14, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 2.3k
Added Dont Strave Together Modded Egg #2657
Open
KenRen98
wants to merge
12
commits into
pelican-eggs:master
Choose a base branch
from
KenRen98:master
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from all commits
Commits
Show all changes
12 commits
Select commit
Hold shift + click to select a range
ae0f430
Added Supervisord.conf
KenRen98 e2cbc92
added helper to help cave exit gracefully
KenRen98 4db7e4b
no need of helper
KenRen98 d7e385a
fix variables
KenRen98 bda62c2
Update supervisord.conf
KenRen98 88bad6c
added modded as a separate egg
KenRen98 f663873
reallocation
KenRen98 7d3401c
Update README.md
KenRen98 092689b
finish ReadME
KenRen98 8d243e5
Update README.md
KenRen98 b43e451
typo
KenRen98 350762e
DST Modded Egg
KenRen98 File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,23 +1,13 @@ | ||
# Don't Starve Together | ||
|
||
## From their [site](https://www.klei.com/games/dont-starve) | ||
## Offical [Website](https://www.klei.com/games/dont-starve) | ||
|
||
Don’t Starve is an uncompromising wilderness survival game full of science and magic. | ||
|
||
You play as Wilson, an intrepid Gentleman Scientist who has been trapped by a demon and transported to a mysterious wilderness world. Wilson must learn to exploit his environment and its inhabitants if he ever hopes to escape and find his way back home. | ||
|
||
Enter a strange and unexplored world full of strange creatures, dangers, and surprises. Gather resources to craft items and structures that match your survival style. Play your way as you unravel the mysteries of this strange land. | ||
|
||
## Minimum RAM warning | ||
## [Vanilla Server Egg](/game_eggs/steamcmd_servers/dont_starve/vanilla) | ||
|
||
Minimum required memory to run the server is around 512mb for a single user.. | ||
|
||
## Server Ports | ||
|
||
Don't Starve Together only requires a single port to run. All network communications are proxied through the master. The default is 10999 | ||
|
||
| Port | default | | ||
|---------|---------| | ||
| Game | 10999 | | ||
|
||
### Mods/Plugins may require ports to be added to the server | ||
## [Modded Server Egg](/game_eggs/steamcmd_servers/dont_starve/modded) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,31 @@ | ||
# Don't Starve Together | ||
|
||
## Reason for a Separate Egg | ||
|
||
Vanilla egg works fine when no mod added, while some mods are added to the server, "coproc" command will not start the server within it correctly. Thus this egg uses Supervisord to properly manage the processes. | ||
|
||
## Warning for Stopping Servers | ||
|
||
Due to a design limitation of the game, it cannot exit gracefully using standard Linux signals. | ||
|
||
For a graceful shutdown, please follow these steps: | ||
1. Use the 'fg caves' and 'fg master' commands to access each shard's process within supervisorctl. | ||
2. Manually type 'c_shutdown()' in each process to initiate a graceful shutdown. | ||
|
||
After completing the manual shutdown, you can safely click the 'stop' button or type 'exit' in supervisorctl. | ||
|
||
**Note: If you don't do so, the last unsaved day in game will be lost.** | ||
|
||
## Minimum RAM warning | ||
|
||
Minimum required memory to run the server is around 512mb for a single user.. | ||
|
||
## Server Ports | ||
|
||
Don't Starve Together only requires a single port to run. All network communications are proxied through the master. The default is 10999 | ||
|
||
| Port | default | | ||
|---------|---------| | ||
| Game | 10999 | | ||
|
||
### Mods/Plugins may require ports to be added to the server |
17 changes: 17 additions & 0 deletions
17
game_eggs/steamcmd_servers/dont_starve/modded/Warnning.txt
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,17 @@ | ||
|
||
|
||
--------------------------------------- | ||
!!! Warning: Game Exit Procedure !!! | ||
|
||
Attention: | ||
Due to a design limitation of the game, it cannot exit gracefully using standard Linux signals. | ||
|
||
For a graceful shutdown, please follow these steps: | ||
1. Use the 'fg caves' and 'fg master' commands to access each shard's process within supervisorctl. | ||
2. Manually type 'c_shutdown()' in each process to initiate a graceful shutdown. | ||
|
||
After completing the manual shutdown, you can safely click the 'stop' button or type 'exit' to exit supervisorctl. | ||
|
||
--------------------------------------- | ||
|
||
|
124 changes: 124 additions & 0 deletions
124
game_eggs/steamcmd_servers/dont_starve/modded/egg-don-t-starve-together-modded.json
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,124 @@ | ||
{ | ||
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO", | ||
"meta": { | ||
"version": "PTDL_v2", | ||
"update_url": null | ||
}, | ||
"exported_at": "2024-01-12T05:04:50-05:00", | ||
"name": "Don't Starve Together Modded", | ||
"author": "[email protected]", | ||
"description": "Don\u2019t Starve Together is an uncompromising wilderness survival game full of science and magic.", | ||
"features": [ | ||
"steam_disk_space" | ||
], | ||
"docker_images": { | ||
"ghcr.io\/parkervcp\/games:source": "ghcr.io\/parkervcp\/games:source" | ||
}, | ||
"file_denylist": [], | ||
"startup": "supervisord -c .\/Supervisord\/supervisord.conf & sleep 1 && cat Warnning.txt & sleep 5 && supervisorctl -c .\/Supervisord\/supervisord.conf", | ||
"config": { | ||
"files": "{\r\n \"DoNotStarveTogether\/config\/server\/cluster.ini\": {\r\n \"parser\": \"ini\",\r\n \"find\": {\r\n \"GAMEPLAY.game_mode\": \"{{server.build.env.GAME_MODE}}\",\r\n \"GAMEPLAY.max_players\": \"{{server.build.env.MAX_PLAYERS}}\",\r\n \"NETWORK.cluster_name\": \"{{server.build.env.CLUSTER_NAME}}\",\r\n \"NETWORK.cluster_description\": \"{{server.build.env.CLUSTER_DESC}}\",\r\n \"SHARD.shard_enabled\": \"true\",\r\n \"SHARD.bind_ip\": \"127.0.0.1\",\r\n \"SHARD.master_ip\": \"127.0.0.1\",\r\n \"SHARD.master_port\": \"11001\"\r\n }\r\n },\r\n \"DoNotStarveTogether\/config\/server\/Master\/server.ini\": {\r\n \"parser\": \"ini\",\r\n \"find\": {\r\n \"NETWORK.server_port\": \"{{server.build.default.port}}\",\r\n \"SHARD.is_master\": \"true\"\r\n }\r\n },\r\n \"DoNotStarveTogether\/config\/server\/Caves\/server.ini\": {\r\n \"parser\": \"ini\",\r\n \"find\": {\r\n \"NETWORK.server_port\": \"11000\",\r\n \"SHARD.is_master\": \"false\",\r\n \"SHARD.name\": \"Caves\"\r\n }\r\n }\r\n}", | ||
"startup": "{\r\n \"done\": \"RUNNING\"\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 'debian:buster-slim'\r\napt -y update\r\napt -y --no-install-recommends install curl lib32gcc1 ca-certificates\r\n\r\n## just in case someone removed the defaults.\r\nif [ \"${STEAM_USER}\" == \"\" ]; 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\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 +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} +force_install_dir \/mnt\/server +app_update ${SRCDS_APPID} ${EXTRA_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## DST specific\r\n## cluster token file\r\necho -e \"getting cluster configs\"\r\nmkdir -p \/mnt\/server\/DoNotStarveTogether\/config\/server\/\r\nif [ ! -f \/mnt\/server\/DoNotStarveTogether\/config\/server\/cluster_token.txt ]; then\r\n echo \"${SERVER_TOKEN}\" >> \/mnt\/server\/DoNotStarveTogether\/config\/server\/cluster_token.txt\r\nfi\r\n\r\n## cluster configs \r\nif [ ! -f \/mnt\/server\/DoNotStarveTogether\/config\/server\/cluster.ini ]; then\r\n curl -sSL https:\/\/raw.githubusercontent.com\/parkervcp\/eggs\/master\/game_eggs\/steamcmd_servers\/dont_starve\/server.cluster.ini -o \/mnt\/server\/DoNotStarveTogether\/config\/server\/cluster.ini\r\nfi\r\n\r\n## master configs\r\necho -e \"getting master configs\"\r\nmkdir -p \/mnt\/server\/DoNotStarveTogether\/config\/server\/Master\/\r\n## master ini\r\nif [ ! -f \/mnt\/server\/DoNotStarveTogether\/config\/server\/Master\/server.ini ]; then\r\n curl -sSL https:\/\/raw.githubusercontent.com\/parkervcp\/eggs\/master\/game_eggs\/steamcmd_servers\/dont_starve\/server.master.ini -o \/mnt\/server\/DoNotStarveTogether\/config\/server\/Master\/server.ini\r\nfi\r\n\r\n## master worldgen override\r\nif [ ! -z ${MASTER_WORLDGEN} ] && [ ! -f \/mnt\/server\/DoNotStarveTogether\/config\/server\/Master\/worldgenoverride.lua ]; then\r\n curl -sSL ${MASTER_WORLDGEN} -o \/mnt\/server\/DoNotStarveTogether\/config\/server\/Master\/worldgenoverride.lua\r\nfi\r\n\r\n## caves configs\r\necho -e \"getting cave configs\"\r\nmkdir -p \/mnt\/server\/DoNotStarveTogether\/config\/server\/Caves\/\r\n## caves ini\r\nif [ ! -f \/mnt\/server\/DoNotStarveTogether\/config\/server\/Caves\/server.ini ]; then\r\n curl -sSL https:\/\/raw.githubusercontent.com\/parkervcp\/eggs\/master\/game_eggs\/steamcmd_servers\/dont_starve\/server.caves.ini -o \/mnt\/server\/DoNotStarveTogether\/config\/server\/Caves\/server.ini\r\nfi\r\n\r\n## caves worldgen override\r\nif [ ! -z ${CAVES_WORLDGEN} ] && [ ! -f \/mnt\/server\/DoNotStarveTogether\/config\/server\/Caves\/worldgenoverride.lua ]; then\r\n curl -sSL ${CAVES_WORLDGEN} -o \/mnt\/server\/DoNotStarveTogether\/config\/server\/Caves\/worldgenoverride.lua\r\nfi\r\n\r\n## Download Supervisord configuration file\r\nif [ ! -f \/mnt\/server\/Supervisord\/supervisord.conf ]; then\r\n mkdir -p \/mnt\/server\/Supervisord\/\r\n curl -sSL https:\/\/raw.githubusercontent.com\/parkervcp\/eggs\/master\/game_eggs\/steamcmd_servers\/dont_starve\/modded\/supervisord.conf -o \/mnt\/server\/Supervisord\/supervisord.conf\r\nfi\r\n\r\n## Download Warnning Text file\r\nif [ ! -f \/mnt\/server\/Warnning.txt ]; then\r\n curl -sSL https:\/\/raw.githubusercontent.com\/parkervcp\/eggs\/master\/game_eggs\/steamcmd_servers\/dont_starve\/modded\/Warnning.txt -o \/mnt\/server\/Warnning.txt\r\nfi\r\n\r\necho -e \"install complete\"", | ||
"container": "ghcr.io\/parkervcp\/installers:debian", | ||
"entrypoint": "bash" | ||
} | ||
}, | ||
"variables": [ | ||
{ | ||
"name": "\u6700\u5927\u73a9\u5bb6\u6570\u91cf", | ||
"description": "\u8bbe\u7f6e\u6700\u5927\u540c\u65f6\u5728\u7ebf\u73a9\u5bb6\u6570\u91cf\uff0c\u4e0d\u5efa\u8bae\u8d85\u8fc720\uff0c\u9ed8\u8ba416\u3002", | ||
"env_variable": "MAX_PLAYERS", | ||
"default_value": "16", | ||
"user_viewable": true, | ||
"user_editable": true, | ||
"rules": "required|integer|between:1,31", | ||
"field_type": "text" | ||
}, | ||
{ | ||
"name": "\u670d\u52a1\u5668Token\uff08\u5fc5\u586b\uff09", | ||
"description": "\u8bf7\u53bb\u4ee5\u4e0b\u94fe\u63a5\u83b7\u53d6Token\u3002\r\nhttps:\/\/accounts.klei.com\/account\/game\/servers?game=DontStarveTogether", | ||
"env_variable": "SERVER_TOKEN", | ||
"default_value": "", | ||
"user_viewable": true, | ||
"user_editable": true, | ||
"rules": "required|string|max:64", | ||
"field_type": "text" | ||
}, | ||
{ | ||
"name": "App ID", | ||
"description": "Steam Server App ID", | ||
"env_variable": "SRCDS_APPID", | ||
"default_value": "343050", | ||
"user_viewable": false, | ||
"user_editable": false, | ||
"rules": "required|string|max:20", | ||
"field_type": "text" | ||
}, | ||
{ | ||
"name": "\u81ea\u52a8\u66f4\u65b0", | ||
"description": "\u8bbe\u7f6e\u4e3a1\u542f\u52a8\u81ea\u52a8\u66f4\u65b0\u3002", | ||
"env_variable": "AUTO_UPDATE", | ||
"default_value": "0", | ||
"user_viewable": true, | ||
"user_editable": true, | ||
"rules": "required|boolean", | ||
"field_type": "text" | ||
}, | ||
{ | ||
"name": "\u6e38\u620f\u6a21\u5f0f", | ||
"description": "\u6709\u6548\u503c\u4e3a survival\uff0cendless \u6216 wilderness\u3002", | ||
"env_variable": "GAME_MODE", | ||
"default_value": "survival", | ||
"user_viewable": true, | ||
"user_editable": true, | ||
"rules": "required|string", | ||
"field_type": "text" | ||
}, | ||
{ | ||
"name": "\u670d\u52a1\u5668\u540d\u79f0", | ||
"description": "\u670d\u52a1\u5668\u5217\u8868\u663e\u793a\u7684\u540d\u5b57", | ||
"env_variable": "CLUSTER_NAME", | ||
"default_value": "A Pterodactyl Server", | ||
"user_viewable": true, | ||
"user_editable": true, | ||
"rules": "required|string", | ||
"field_type": "text" | ||
}, | ||
{ | ||
"name": "\u670d\u52a1\u5668\u63cf\u8ff0", | ||
"description": "\u670d\u52a1\u5668\u5217\u8868\u663e\u793a\u7684\u63cf\u8ff0", | ||
"env_variable": "CLUSTER_DESC", | ||
"default_value": "A Pterodactyl Hosted Server", | ||
"user_viewable": true, | ||
"user_editable": true, | ||
"rules": "required|string", | ||
"field_type": "text" | ||
}, | ||
{ | ||
"name": "Master Worldgen Override", | ||
"description": "Link to the lua file used to generate the master server map. Only used during the install phase.", | ||
"env_variable": "MASTER_WORLDGEN", | ||
"default_value": "https:\/\/raw.githubusercontent.com\/parkervcp\/eggs\/master\/game_eggs\/steamcmd_servers\/dont_starve\/worldgenoverride.master.lua", | ||
"user_viewable": false, | ||
"user_editable": false, | ||
"rules": "nullable|string", | ||
"field_type": "text" | ||
}, | ||
{ | ||
"name": "Master Worldgen Override", | ||
"description": "Link to the lua file used to generate the caves server map. Only used during the install phase.\r\n\r\nDefault generates a cave map", | ||
"env_variable": "CAVES_WORLDGEN", | ||
"default_value": "https:\/\/raw.githubusercontent.com\/parkervcp\/eggs\/master\/game_eggs\/steamcmd_servers\/dont_starve\/worldgenoverride.caves.lua", | ||
"user_viewable": false, | ||
"user_editable": false, | ||
"rules": "nullable|string", | ||
"field_type": "text" | ||
} | ||
] | ||
} |
31 changes: 31 additions & 0 deletions
31
game_eggs/steamcmd_servers/dont_starve/modded/supervisord.conf
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,31 @@ | ||
[supervisord] | ||
nodaemon=true | ||
logfile=./Supervisord/supervisord.log | ||
pidfile=./Supervisord/supervisord.pid | ||
|
||
[supervisorctl] | ||
|
||
[inet_http_server] | ||
port = 127.0.0.1:9001 | ||
|
||
[rpcinterface:supervisor] | ||
supervisor.rpcinterface_factory = supervisor.rpcinterface:make_main_rpcinterface | ||
|
||
[program:caves] | ||
command=/bin/sh -c './dontstarve_dedicated_server_nullrenderer_x64 -bind_ip 0.0.0.0 -port 11000 -persistent_storage_root /home/container/DoNotStarveTogether -conf_dir config -cluster server -players ${MAX_PLAYERS} -shard Caves' | ||
autostart=true | ||
autorestart=false | ||
redirect_stderr=true | ||
stdout_logfile=/home/container/DoNotStarveTogether/config/server/Caves/server_log.txt | ||
directory=/home/container/bin64 | ||
stopsignal=KILL | ||
|
||
[program:master] | ||
command=/bin/sh -c './dontstarve_dedicated_server_nullrenderer_x64 -bind_ip 0.0.0.0 -port ${SERVER_PORT} -persistent_storage_root /home/container/DoNotStarveTogether -conf_dir config -cluster server -players ${MAX_PLAYERS} -shard Master' | ||
autostart=true | ||
autorestart=false | ||
redirect_stderr=true | ||
stdout_logfile=/home/container/DoNotStarveTogether/config/server/Master/server_log.txt | ||
directory=/home/container/bin64 | ||
stopsignal=KILL | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,23 @@ | ||
# Don't Starve Together | ||
|
||
## From their [site](https://www.klei.com/games/dont-starve) | ||
|
||
Don’t Starve is an uncompromising wilderness survival game full of science and magic. | ||
|
||
You play as Wilson, an intrepid Gentleman Scientist who has been trapped by a demon and transported to a mysterious wilderness world. Wilson must learn to exploit his environment and its inhabitants if he ever hopes to escape and find his way back home. | ||
|
||
Enter a strange and unexplored world full of strange creatures, dangers, and surprises. Gather resources to craft items and structures that match your survival style. Play your way as you unravel the mysteries of this strange land. | ||
|
||
## Minimum RAM warning | ||
|
||
Minimum required memory to run the server is around 512mb for a single user.. | ||
|
||
## Server Ports | ||
|
||
Don't Starve Together only requires a single port to run. All network communications are proxied through the master. The default is 10999 | ||
|
||
| Port | default | | ||
|---------|---------| | ||
| Game | 10999 | | ||
|
||
### Mods/Plugins may require ports to be added to the server |
File renamed without changes.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not allowed. As this way the startup is user editable.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Any better ideas or solution? well, all Im asking is to get modded server to work properly.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can I bulid this into the source image for blocking user editing it.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Then that would need to be a custom image added to the game registrar