1
0
mirror of https://github.com/parkervcp/eggs.git synced 2024-10-06 07:37:08 +02:00

Merge branch 'master' into win-palworld

This commit is contained in:
Quinten 2024-03-23 13:42:05 +01:00 committed by GitHub
commit 964a4b29a3
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
25 changed files with 846 additions and 192 deletions

View File

@ -258,6 +258,7 @@ If you are reading this it looks like you are looking to add an egg to your serv
* [Craftopia](game_eggs/steamcmd_servers/craftopia)
* [Cryofall](game_eggs/steamcmd_servers/cryofall)
* [DayZ (Experimental)](game_eggs/steamcmd_servers/dayz-experimental)
* [Dead Matter](game_eggs/steamcmd_servers/dead_matter)
* [Don't Starve Together](game_eggs/steamcmd_servers/dont_starve)
* [ECO](game_eggs/steamcmd_servers/eco)
* [Empyrion - Galactic Survival](game_eggs/steamcmd_servers/empyrion)
@ -281,6 +282,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)
* [Myth of Empires](game_eggs/steamcmd_servers/myth_of_empires)
* [Necesse](game_eggs/steamcmd_servers/necesse)
* [Neos VR](game_eggs/steamcmd_servers/neosvr)
* [No More Room in Hell](game_eggs/steamcmd_servers/nmrih)
@ -338,6 +340,7 @@ If you are reading this it looks like you are looking to add an egg to your serv
* [Valheim Vanilla](game_eggs/steamcmd_servers/valheim/valheim_vanilla)
* [Valheim BepInEx](game_eggs/steamcmd_servers/valheim/valheim_bepinex)
* [Valheim Plus Mod](game_eggs/steamcmd_servers/valheim/valheim_plus)
* [VEIN](game_eggs/steamcmd_servers/vein)
* [Wurm Unlimited](game_eggs/steamcmd_servers/wurm_unlimited/)
[Teeworlds](game_eggs/teeworlds)
@ -355,6 +358,8 @@ If you are reading this it looks like you are looking to add an egg to your serv
* [OpenRCT2](game_eggs/tycoon_games/openrct2)
* [OpenTTD](game_eggs/tycoon_games/openttd)
[UrbanTerror](game_eggs/urbanterror)
[Veloren](game_eggs/veloren)
[Vintage Story](game_eggs/vintage_story)
@ -363,8 +368,6 @@ If you are reading this it looks like you are looking to add an egg to your serv
[Xonotic](game_eggs/xonotic/xonotic)
[YuzuEmu](game_eggs/yuzu-emu)
[FoundryVTT](game_eggs/FoundryVTT)
## [Monitoring](/monitoring/)
@ -401,6 +404,10 @@ If you are reading this it looks like you are looking to add an egg to your serv
* [Folding@Home](/software/foldingathome)
### Forgejo
* [Forgejo](/software/forgejo)
### Gitea
* [Gitea](/software/gitea)

View File

@ -154,6 +154,7 @@
* [Craftopia](game_eggs/steamcmd_servers/craftopia)
* [CryoFall](steamcmd_servers/cryofall)
* [DayZ (Experimental)](steamcmd_servers/dayz-experimental)
* [Dead Matter](steamcmd_servers/dead_matter)
* [Don't Starve Together](steamcmd_servers/dont_starve)
* [ECO](steamcmd_servers/eco)
* [Empyrion - Galactic Survival](steamcmd_servers/empyrion)
@ -177,6 +178,7 @@
* [Modiverse](steamcmd_servers/modiverse)
* [Mordhau](steamcmd_servers/mordhau)
* [Mount & Blade II: Bannerlord](steamcmd_servers/mount_blade_II_bannerlord)
* [Myth of Empires](steamcmd_servers/myth_of_empires)
* [Necesse](steamcmd_servers/necesse)
* [Neos VR](steamcmd_servers/neosvr)
* [No More Room in Hell](steamcmd_servers/nmrih)
@ -236,6 +238,7 @@
* [Valheim Vanilla](steamcmd_servers/valheim/valheim_vanilla)
* [Valheim BepInEx](steamcmd_servers/valheim/valheim_bepinex)
* [Valheim Plus Mod](steamcmd_servers/valheim/valheim_plus)
* [VEIN](steamcmd_servers/vein)
* [Wurm Unlimited](steamcmd_servers/wurm_unlimited/)
[Teeworlds](teeworlds)
@ -257,6 +260,4 @@
[Xonotic](xonotic/xonotic)
[YuzuEmu](yuzu-emu)
[FoundryVTT](FoundryVTT)

View File

@ -76,6 +76,10 @@ This is a collection of servers that use SteamCMD to install.
[DayZ (Experimental)](dayz-experimental)
## Dead Matter
[Dead Matter](dead_matter)
## Don't Starve Together
[Don't Starve Together](dont_starve)
@ -161,6 +165,10 @@ This is a collection of servers that use SteamCMD to install.
[Mount & Blade II: Bannerlord](mount_blade_II_bannerlord)
## Myth of Empires
[Myth of Empires](myth_of_empires)
## Necesse
[Necesse](necesse)
@ -341,5 +349,9 @@ This is a collection of servers that use SteamCMD to install.
* [Valheim BepInEx](valheim/valheim_bepinex)
* [Valheim Plus Mod](valheim/valheim_plus)
## VEIN
[VEIN](vein)
## Wurm Unlimited
* [Wurm Unlimited](wurm_unlimited/)
[Wurm Unlimited](wurm_unlimited/)

View File

@ -0,0 +1,32 @@
# Dead
<!--Please remove these comments and irelevent parts for the server egg your adding before summiting a PR request-->
## From their [Github](https://github.com/QI-Software/deadmatterpublic)
## [Documentation]https://www.notion.so/qisoftware/Server-Setup-Guide-d17e5a3f73e34164b6a4d2b37e54da78)
## Installation/System Requirements
<!--Make changes to reflect the server minimum/recommended hardware specs-->
| | Bare Minimum | Recommended |
|---------|---------|---------|
| Processor | *AMD64 Only 300%* | *-* |
| RAM | 18GiB* | *22GiB* |
| Storage | *8GiB* | 10GiB* |
| Network | *any* | *-* |
| Game Ownership | *Not needed* | *-* |
## Server Ports
Ports required to run the server in a table format.
| Port | default |
|---------|---------|
| Game | 7001 |
| Query | 7002 |
### Notes
<!--Notes about the server ports.-->
7001 is the default port, but any port can be used.

View File

@ -0,0 +1,82 @@
{
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
"meta": {
"version": "PTDL_v2",
"update_url": null
},
"exported_at": "2024-03-13T10:06:00+01:00",
"name": "Dead Matter",
"author": "josdekurk@gmail.com",
"description": "After a rampant viral outbreak causes global society to collapse, you must survive the harsh wilderness of the Canadian Rockies amidst vast hordes of Infected and rival survivors.",
"features": null,
"docker_images": {
"ghcr.io\/parkervcp\/steamcmd:proton": "ghcr.io\/parkervcp\/steamcmd:proton"
},
"file_denylist": [],
"startup": "rm \/home\/container\/DeadMatter\/Saved\/Logs\/DeadMatter.log; proton run DeadMatter\/Binaries\/Win64\/DeadMatterServer-Win64-Test.exe -SteamServerName=\"{{SERVER_NAME}}\" -port={{SERVER_PORT}} -queryport={{QUERY_PORT}} & DM_PID=$!; tail -c0 -F \/home\/container\/DeadMatter\/Saved\/Logs\/DeadMatter.log --pid=$DM_PID",
"config": {
"files": "{}",
"startup": "{\r\n \"done\": \"LogInit: Display: Starting Game\"\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# 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\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## install the steam sdk using steamcmd\r\n.\/steamcmd.sh +force_install_dir \/mnt\/server\/DeadMatter\/Binaries\/Win64\/ +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} $( [[ \"${WINDOWS_INSTALL}\" == \"1\" ]] && printf %s '+@sSteamCmdForcePlatformType windows' ) +app_update 1007 ${INSTALL_FLAGS} validate +quit \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 \/mnt\/server\/DeadMatter\/Saved\/Config\/WindowsServer\r\n\r\ncd \/mnt\/server\r\necho \"2184150\" > steam_appid.txt\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": "2584780",
"user_viewable": false,
"user_editable": false,
"rules": "required|string|in:2584780",
"field_type": "text"
},
{
"name": "Windows Install",
"description": "",
"env_variable": "WINDOWS_INSTALL",
"default_value": "1",
"user_viewable": false,
"user_editable": false,
"rules": "required|boolean|in:1",
"field_type": "text"
},
{
"name": "Query Port",
"description": "",
"env_variable": "QUERY_PORT",
"default_value": "7002",
"user_viewable": true,
"user_editable": false,
"rules": "required|numeric",
"field_type": "text"
},
{
"name": "Server Name",
"description": "The name of the server",
"env_variable": "SERVER_NAME",
"default_value": "A Pterodactyl hosted server",
"user_viewable": true,
"user_editable": true,
"rules": "required|string|max:128",
"field_type": "text"
},
{
"name": "Auto Update",
"description": "Auto Update the server on start",
"env_variable": "AUTO_UPDATE",
"default_value": "1",
"user_viewable": true,
"user_editable": true,
"rules": "required|boolean",
"field_type": "text"
}
]
}

View File

@ -0,0 +1,25 @@
# Myth of Empires
## [Steam](https://store.steampowered.com/app/1371580/Myth_of_Empires/)
## Installation/System Requirements
<!--Make changes to reflect the server minimum/recommended hardware specs-->
| | Bare Minimum | Recommended |
|---------|---------|---------|
| Processor | *AMD64 only* | *-* |
| RAM | *9 GiB* | *12 GiB* |
| Storage | *10 GiB* | *15 GiB* |
| Network | *-* | *-* |
| Game Ownership | *Not needed* | *-* |
## Server Ports
Ports required to run the server
| Port | default |
|---------|---------|
| Game | 11888 |
| Query | 12888 |
| RCON | 13888 |

View File

@ -0,0 +1,182 @@
{
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
"meta": {
"version": "PTDL_v2",
"update_url": null
},
"exported_at": "2024-02-27T16:19:43+01:00",
"name": "Myth of Empires",
"author": "josdekurk@gmail.com",
"description": "Myth of Empires is a multiplayer war sandbox game featuring a high degree of freedom. Players must survive, craft, create, and lead troops in their quest to conquer territory and build their own empire.",
"features": null,
"docker_images": {
"ghcr.io\/parkervcp\/steamcmd:proton": "ghcr.io\/parkervcp\/steamcmd:proton"
},
"file_denylist": [],
"startup": "export PROTON_USE_WINED3D=1; export PROTON_NO_ESYNC=1; proton run MOE\/Binaries\/Win64\/MOEServer.exe {{MAP_NAME}} -game -server -DataLocalFile -NotCheckServerSteamAuth -LOCALLOGTIMES -PrivateServer -MultiHome=0.0.0.0 -OutAddress={{SERVER_IP}} -SessionName=\"{{SERVER_NAME}}\" -GameServerPVPType={{PVP}} -MaxPlayers={{MAX_PLAYERS}} -MapDifficultyRate=1 -UseACE -EnableVACBan=1 -ServerId={{SERVER_ID}} -ClusterId={{CLUSTER_ID}} -Port={{SERVER_PORT}} -QueryPort={{QUERY_PORT}} -bStartShutDownServiceInPrivateServer={{SHUTDOWN_SERVICE}} -ShutDownServiceIP=127.0.0.1 -ShutDownServicePort={{RCON_PORT}} -ShutDownServiceKey=\"{{RCON_PASSWORD}}\" -ServerAdminAccounts=\"{{ADMIN_IDS}}\" {{EXTRA_FLAGS}}",
"config": {
"files": "{}",
"startup": "{\r\n \"done\": \"LogInit: Display: Starting Game.\"\r\n}",
"logs": "{}",
"stop": "^C"
},
"scripts": {
"installation": {
"script": "#!\/bin\/bash\r\n\r\n ##\r\n\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\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\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\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": "1794810",
"user_viewable": false,
"user_editable": false,
"rules": "required|string|in:1794810",
"field_type": "text"
},
{
"name": "Install Windows version",
"description": "",
"env_variable": "WINDOWS_INSTALL",
"default_value": "1",
"user_viewable": false,
"user_editable": false,
"rules": "required|in:1",
"field_type": "text"
},
{
"name": "Auto Update",
"description": "Auto update the server on startup",
"env_variable": "AUTO_UPDATE",
"default_value": "1",
"user_viewable": true,
"user_editable": true,
"rules": "required|boolean",
"field_type": "text"
},
{
"name": "Map Name",
"description": "",
"env_variable": "MAP_NAME",
"default_value": "LargeTerrain_Central_Main",
"user_viewable": true,
"user_editable": true,
"rules": "required|string|in:LargeTerrain_Central_Main,LargeTerrain_Central2_Main",
"field_type": "text"
},
{
"name": "Server Name",
"description": "The name of the server",
"env_variable": "SERVER_NAME",
"default_value": "A Pterodactyl hosted server",
"user_viewable": true,
"user_editable": true,
"rules": "required|string|max:80",
"field_type": "text"
},
{
"name": "Enable PVP",
"description": "Enable or disable PVP",
"env_variable": "PVP",
"default_value": "1",
"user_viewable": true,
"user_editable": true,
"rules": "required|boolean",
"field_type": "text"
},
{
"name": "Max Players",
"description": "",
"env_variable": "MAX_PLAYERS",
"default_value": "25",
"user_viewable": true,
"user_editable": true,
"rules": "required|numeric|between:1,150",
"field_type": "text"
},
{
"name": "Query Port",
"description": "",
"env_variable": "QUERY_PORT",
"default_value": "12888",
"user_viewable": true,
"user_editable": false,
"rules": "required|numeric",
"field_type": "text"
},
{
"name": "Shutdown Service",
"description": "",
"env_variable": "SHUTDOWN_SERVICE",
"default_value": "1",
"user_viewable": true,
"user_editable": true,
"rules": "required|boolean",
"field_type": "text"
},
{
"name": "RCON Port",
"description": "",
"env_variable": "RCON_PORT",
"default_value": "13888",
"user_viewable": true,
"user_editable": false,
"rules": "required|int",
"field_type": "text"
},
{
"name": "RCON Password",
"description": "",
"env_variable": "RCON_PASSWORD",
"default_value": "",
"user_viewable": true,
"user_editable": true,
"rules": "required|alpha_dash|min:5|max:32",
"field_type": "text"
},
{
"name": "Admin ID's",
"description": "Steam admin ID list",
"env_variable": "ADMIN_IDS",
"default_value": "",
"user_viewable": true,
"user_editable": true,
"rules": "nullable|string|max:128",
"field_type": "text"
},
{
"name": "Extra Flags",
"description": "Extra flags.All starting with a -\r\nexample: -ServerLevelAddMul=1.01",
"env_variable": "EXTRA_FLAGS",
"default_value": "",
"user_viewable": true,
"user_editable": true,
"rules": "nullable|string|",
"field_type": "text"
},
{
"name": "Cluster ID",
"description": "",
"env_variable": "CLUSTER_ID",
"default_value": "1",
"user_viewable": true,
"user_editable": true,
"rules": "required|numeric",
"field_type": "text"
},
{
"name": "Server ID",
"description": "",
"env_variable": "SERVER_ID",
"default_value": "100",
"user_viewable": true,
"user_editable": true,
"rules": "required|numeric",
"field_type": "text"
}
]
}

View File

@ -12,3 +12,7 @@ Open Fortress servers require 1 port to be open, the SourceTV port can also be o
|-----------|---------|
| Game/rcon | 27015 |
| SourceTV | 27020 |
## Beans
Because they now use Beans to download the needed files you need increase the tempfs_size in the wings config.yml to at least a value above 6000 else the install will fail.

File diff suppressed because one or more lines are too long

View File

@ -107,7 +107,7 @@ The RCON port does not need to be allocated.
3. Then hit reinstall because the parser application has to be downloaded
4. Because the Palworld devs forgot with the v0.1.5.0 to add the new `bShowPlayerList` key to the config you will need to add it yourself. This maybe fixt in the future. Its default value is False
Example of the end of the config: `bUseAuth=True,BanListURL="https://api.palworldgame.com/api/banlist.txt",bShowPlayerList=False)`
Example of the end of the config: `bUseAuth=True,bShowPlayerList=False,BanListURL="https://api.palworldgame.com/api/banlist.txt")`
### Variable Parsing
@ -124,4 +124,10 @@ See a list of what key matches with what variable [Here](https://github.com/Quin
There is a special egg that uses proton instad of the native linux version what shipes with `winmm.dll` and `RE-UE4SS` so for they who want to run mods then that is possible.
Keep in mind this eggs console output is broken (thanks proton / wine) so you will only see the parser output. The RCON console does still work.
Keep in mind this eggs console output is broken (thanks proton / wine) so you will only see the parser output. The RCON console does still work.
### Config
The config is found at the following path: `Pal/Saved/Config/LinuxServer/PalWorldSettings.ini` or if you are running the proton egg `Pal/Saved/Config/WindowsServer/PalWorldSettings.ini`

View File

@ -4,7 +4,7 @@
"version": "PTDL_v2",
"update_url": null
},
"exported_at": "2024-02-27T15:23:38+01:00",
"exported_at": "2024-03-18T22:04:10+01:00",
"name": "Palworld",
"author": "admin@ballaual.de",
"description": "Fight, farm, build and work alongside mysterious creatures called \"Pals\" in this completely new multiplayer, open world survival and crafting game!",
@ -26,7 +26,7 @@
},
"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# 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\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## add below your custom commands if needed\r\n## copy template config file\r\necho \"Copy template config file into config folder!\"\r\n\r\nif [ -f \"\/mnt\/server\/Pal\/Saved\/Config\/LinuxServer\/PalWorldSettings.ini\" ]; then\r\n echo \"Config file already exitis, backing up and overwriting with a new one\"\r\n mv \/mnt\/server\/Pal\/Saved\/Config\/LinuxServer\/PalWorldSettings.ini \/mnt\/server\/Pal\/Saved\/Config\/LinuxServer\/PalWorldSettings_$(date +\"%Y%m%d%H%M%S\").ini\r\n cp \/mnt\/server\/DefaultPalWorldSettings.ini \/mnt\/server\/Pal\/Saved\/Config\/LinuxServer\/PalWorldSettings.ini\r\nelse \r\n echo \"Creating new config file\"\r\n mkdir -p \/mnt\/server\/Pal\/Saved\/Config\/LinuxServer\r\n cp \/mnt\/server\/DefaultPalWorldSettings.ini \/mnt\/server\/Pal\/Saved\/Config\/LinuxServer\/PalWorldSettings.ini\r\nfi\r\n\r\ncd \/mnt\/server\r\n# Download self made replace tool\r\necho \"Downloading config parser aplication\"\r\ncurl -sSL -o PalworldServerConfigParser https:\/\/raw.githubusercontent.com\/parkervcp\/eggs\/master\/game_eggs\/steamcmd_servers\/palworld\/PalworldServerConfigParser-linux-amd64\r\nchmod +x PalworldServerConfigParser\r\n\r\n\r\n## install end\r\necho \"-----------------------------------------\"\r\necho \"Installation completed...\"\r\necho \"-----------------------------------------\"",
"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# 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\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## add below your custom commands if needed\r\n\r\n## copy template config file\r\necho \"Copy template config file into config folder!\"\r\nif [ -f \"\/mnt\/server\/Pal\/Saved\/Config\/LinuxServer\/PalWorldSettings.ini\" ]; then\r\n echo \"Config file already exitis, backing up and overwriting with a new one\"\r\n mv \/mnt\/server\/Pal\/Saved\/Config\/LinuxServer\/PalWorldSettings.ini \/mnt\/server\/Pal\/Saved\/Config\/LinuxServer\/PalWorldSettings_$(date +\"%Y%m%d%H%M%S\").ini\r\n cp \/mnt\/server\/DefaultPalWorldSettings.ini \/mnt\/server\/Pal\/Saved\/Config\/LinuxServer\/PalWorldSettings.ini\r\nelse\r\n echo \"Creating new config file\"\r\n mkdir -p \/mnt\/server\/Pal\/Saved\/Config\/LinuxServer\r\n cp \/mnt\/server\/DefaultPalWorldSettings.ini \/mnt\/server\/Pal\/Saved\/Config\/LinuxServer\/PalWorldSettings.ini\r\nfi\r\n\r\ncd \/mnt\/server\r\n# Download self made replace tool\r\necho \"Downloading config parser application\"\r\ncurl -sSL -o PalworldServerConfigParser https:\/\/raw.githubusercontent.com\/parkervcp\/eggs\/master\/game_eggs\/steamcmd_servers\/palworld\/PalworldServerConfigParser-linux-amd64\r\nchmod +x PalworldServerConfigParser\r\n## install end\r\necho \"-----------------------------------------\"\r\necho \"Installation completed...\"\r\necho \"-----------------------------------------\"",
"container": "ghcr.io\/parkervcp\/installers:debian",
"entrypoint": "bash"
}
@ -62,26 +62,6 @@
"rules": "required|numeric|between:1,32",
"field_type": "text"
},
{
"name": "Server Name",
"description": "",
"env_variable": "SERVER_NAME",
"default_value": "A Pterodactyl hosted Palworld Server",
"user_viewable": true,
"user_editable": true,
"rules": "required|string|max:64",
"field_type": "text"
},
{
"name": "Server Password",
"description": "If specified, players must provide this password to join the server.",
"env_variable": "SERVER_PASSWORD",
"default_value": "",
"user_viewable": true,
"user_editable": true,
"rules": "nullable|alpha_dash|between:1,30",
"field_type": "text"
},
{
"name": "Admin Password",
"description": "If specified, players must provide this password (via the in-game chat or RCON) to gain access to administrator commands on the server.",
@ -102,6 +82,26 @@
"rules": "nullable|string",
"field_type": "text"
},
{
"name": "Server Name",
"description": "",
"env_variable": "SERVER_NAME",
"default_value": "A Pterodactyl hosted Palworld Server",
"user_viewable": true,
"user_editable": true,
"rules": "required|string|max:64",
"field_type": "text"
},
{
"name": "Server Password",
"description": "If specified, players must provide this password to join the server.",
"env_variable": "SERVER_PASSWORD",
"default_value": "",
"user_viewable": true,
"user_editable": true,
"rules": "nullable|alpha_dash|between:1,30",
"field_type": "text"
},
{
"name": "RCON Port",
"description": "Does not need to be allocated!",

View File

@ -4,7 +4,7 @@
"version": "PTDL_v2",
"update_url": null
},
"exported_at": "2023-07-22T12:57:51+02:00",
"exported_at": "2024-03-09T11:25:43+01:00",
"name": "Space Engineers",
"author": "eggs@goover.dev",
"description": "Space Engineers is a voxel-based sandbox game set in space and on planets.",
@ -15,7 +15,7 @@
"ghcr.io\/parkervcp\/yolks:wine_latest": "ghcr.io\/parkervcp\/yolks:wine_latest"
},
"file_denylist": [],
"startup": "export WINEDLLOVERRIDES=\"mscoree=n,b;mshtml=n,b\"; wine \/home\/container\/DedicatedServer64\/SpaceEngineersDedicated.exe -path Z:\\\\home\\\\container\\\\config -noconsole -ignorelastsession",
"startup": "export WINEDLLOVERRIDES=\"mscoree=n,b;mshtml=n,b\"; wine \/home\/container\/DedicatedServer64\/SpaceEngineersDedicated.exe -path Z:\\\\home\\\\container\\\\config -console -ignorelastsession",
"config": {
"files": "{\r\n \"config\/SpaceEngineers-Dedicated.cfg\": {\r\n \"parser\": \"xml\",\r\n \"find\": {\r\n \"MyConfigDedicated.SessionSettings.GameMode\": \"{{server.build.env.SERVER_MODE}}\",\r\n \"MyConfigDedicated.SessionSettings.MaxPlayers\": \"{{server.build.env.MAX_PLAYERS}}\",\r\n \"MyConfigDedicated.SessionSettings.AutoSaveInMinutes\": \"{{server.build.env.SAVE_INTERVAL}}\",\r\n \"MyConfigDedicated.SessionSettings.EnableSaving\": \"{{server.build.env.SAVE_ENABLED}}\",\r\n \"MyConfigDedicated.SessionSettings.ExperimentalMode\": \"{{server.build.env.EXPERIMENTAL_ENABLED}}\",\r\n \"MyConfigDedicated.SessionSettings.EnableIngameScripts\": \"{{server.build.env.INGAMESCRIPTS_ENABLED}}\",\r\n \"MyConfigDedicated.LoadWorld\": \"Z:\\\\home\\\\container\\\\config\\\\Saves\\\\{{server.build.env.WORLD_NAME}}\\\\Sandbox.sbc\",\r\n \"MyConfigDedicated.ServerPort\": \"{{server.build.default.port}}\",\r\n \"MyConfigDedicated.SteamPort\": \"{{server.build.env.STEAM_PORT}}\",\r\n \"MyConfigDedicated.ServerName\": \"{{server.build.env.SERVER_NAME}}\",\r\n \"MyConfigDedicated.WorldName\": \"{{server.build.env.WORLD_NAME}}\",\r\n \"MyConfigDedicated.ServerDescription\": \"{{server.build.env.SERVER_DESC}}\",\r\n \"MyConfigDedicated.RemoteApiEnabled\": \"{{server.build.env.REMOTEAPI_ENABLE}}\",\r\n \"MyConfigDedicated.RemoteApiPort\": \"{{server.build.env.REMOTEAPI_PORT}}\"\r\n }\r\n },\r\n \"config\/Saves\/World\/Sandbox.sbc\": {\r\n \"parser\": \"xml\",\r\n \"find\": {\r\n \"MyObjectBuilder_Checkpoint.Settings.GameMode\": \"{{server.build.env.SERVER_MODE}}\",\r\n \"MyObjectBuilder_Checkpoint.Settings.MaxPlayers\": \"{{server.build.env.MAX_PLAYERS}}\",\r\n \"MyObjectBuilder_Checkpoint.Settings.AutoSaveInMinutes\": \"{{server.build.env.SAVE_INTERVAL}}\",\r\n \"MyObjectBuilder_Checkpoint.Settings.EnableSaving\": \"{{server.build.env.SAVE_ENABLED}}\",\r\n \"MyObjectBuilder_Checkpoint.Settings.ExperimentalMode\": \"{{server.build.env.EXPERIMENTAL_ENABLED}}\",\r\n \"MyObjectBuilder_Checkpoint.Settings.EnableIngameScripts\": \"{{server.build.env.INGAMESCRIPTS_ENABLED}}\"\r\n }\r\n },\r\n \"config\/Saves\/World\/Sandbox_config.sbc\": {\r\n \"parser\": \"xml\",\r\n \"find\": {\r\n \"MyObjectBuilder_WorldConfiguration.Settings.GameMode\": \"{{server.build.env.SERVER_MODE}}\",\r\n \"MyObjectBuilder_WorldConfiguration.Settings.MaxPlayers\": \"{{server.build.env.MAX_PLAYERS}}\",\r\n \"MyObjectBuilder_WorldConfiguration.Settings.AutoSaveInMinutes\": \"{{server.build.env.SAVE_INTERVAL}}\",\r\n \"MyObjectBuilder_WorldConfiguration.Settings.EnableSaving\": \"{{server.build.env.SAVE_ENABLED}}\",\r\n \"MyObjectBuilder_WorldConfiguration.Settings.ExperimentalMode\": \"{{server.build.env.EXPERIMENTAL_ENABLED}}\",\r\n \"MyObjectBuilder_WorldConfiguration.Settings.EnableIngameScripts\": \"{{server.build.env.INGAMESCRIPTS_ENABLED}}\"\r\n }\r\n }\r\n}",
"startup": "{\r\n \"done\": \"Game ready...\"\r\n}",
@ -37,7 +37,7 @@
"default_value": "298740",
"user_viewable": false,
"user_editable": false,
"rules": "required|numeric|digits_between:1,6",
"rules": "required|numeric|in:298740",
"field_type": "text"
},
{
@ -116,7 +116,7 @@
"env_variable": "STEAM_PORT",
"default_value": "8766",
"user_viewable": true,
"user_editable": true,
"user_editable": false,
"rules": "required|numeric|max:65535",
"field_type": "text"
},
@ -136,7 +136,7 @@
"env_variable": "REMOTEAPI_PORT",
"default_value": "8081",
"user_viewable": true,
"user_editable": true,
"user_editable": false,
"rules": "required|numeric|max:65535",
"field_type": "text"
},
@ -194,7 +194,7 @@
"name": "WINETRICKS_RUN",
"description": "",
"env_variable": "WINETRICKS_RUN",
"default_value": "vcrun2019 dotnet48 corefonts",
"default_value": "vcrun2022 dotnet48 corefonts",
"user_viewable": false,
"user_editable": false,
"rules": "required|string",

View File

@ -37,3 +37,17 @@ Based on the information provided by the developer: [See here](https://www.space
### Disk
This server uses about 7GB of diskspace.
### Updating
Because some logic in this egg changed. Already made servers will manualy have to be updated.
**This has to be done manual for every server!!**
1. Stop the server.
2. Update the already impored egg to the newer version.
3. Change the startup (on the startup tab on the admin side) of the already made server's to: `export WINEDLLOVERRIDES="mscoree=n,b;mshtml=n,b"; wine /home/container/Torch.Server.exe -noupdate -nogui -console`
4. Change on the same tab (bottom left) the docker image to: `ghcr.io/parkervcp/yolks:wine_latest`
5. Change the contence of the variable `WINETRICKS_RUN` to: `vcrun2022 corefonts dotnet48`
6. Remove the `.wine` and `.cache` folder.
7. Start the server again.

View File

@ -4,7 +4,7 @@
"version": "PTDL_v2",
"update_url": null
},
"exported_at": "2022-11-26T17:31:15+01:00",
"exported_at": "2024-03-09T10:48:45+01:00",
"name": "Space Engineers - Torch Server",
"author": "eggs@goover.dev",
"description": "Torch is the successor to SE Server Extender and gives server admins the tools they need to keep their Space Engineers servers running smoothly. It features a user interface with live management tools and a plugin system so you can run your server exactly how you'd like. Torch is still in early development so there may be bugs and incomplete features.\r\n\r\n!!!!! DO NOT CANCEL THE FIRST START, OR YOU NEED TO DELETE THE SERVER AND CREATE FROM SCRATCH !!!!",
@ -12,10 +12,10 @@
"steam_disk_space"
],
"docker_images": {
"ghcr.io\/parkervcp\/yolks:wine_staging": "ghcr.io\/parkervcp\/yolks:wine_staging"
"ghcr.io\/parkervcp\/yolks:wine_latest": "ghcr.io\/parkervcp\/yolks:wine_latest"
},
"file_denylist": [],
"startup": "winetricks sound=disabled; export WINEARCH=\"win64\"; export WINEDLLOVERRIDES=\"mscoree=n,b;mshtml=n,b\"; wine \/home\/container\/Torch.Server.exe -noupdate -nogui -console",
"startup": "export WINEDLLOVERRIDES=\"mscoree=n,b;mshtml=n,b\"; wine \/home\/container\/Torch.Server.exe -noupdate -nogui -console",
"config": {
"files": "{\r\n \"Instance\/SpaceEngineers-Dedicated.cfg\": {\r\n \"parser\": \"xml\",\r\n \"find\": {\r\n \"MyConfigDedicated.SessionSettings.GameMode\": \"{{server.build.env.SERVER_MODE}}\",\r\n \"MyConfigDedicated.SessionSettings.MaxPlayers\": \"{{server.build.env.MAX_PLAYERS}}\",\r\n \"MyConfigDedicated.SessionSettings.AutoSaveInMinutes\": \"{{server.build.env.SAVE_INTERVAL}}\",\r\n \"MyConfigDedicated.SessionSettings.EnableSaving\": \"{{server.build.env.SAVE_ENABLED}}\",\r\n \"MyConfigDedicated.LoadWorld\": \"Z:\\\\home\\\\container\\\\Instance\\\\Saves\\\\{{server.build.env.WORLD_NAME}}\",\r\n \"MyConfigDedicated.ServerPort\": \"{{server.build.default.port}}\",\r\n \"MyConfigDedicated.SteamPort\": \"{{server.build.env.STEAM_PORT}}\",\r\n \"MyConfigDedicated.ServerName\": \"{{server.build.env.SERVER_NAME}}\",\r\n \"MyConfigDedicated.WorldName\": \"{{server.build.env.WORLD_NAME}}\",\r\n \"MyConfigDedicated.ServerDescription\": \"{{server.build.env.SERVER_DESC}}\",\r\n \"MyConfigDedicated.RemoteApiEnabled\": \"{{server.build.env.REMOTEAPI_ENABLE}}\",\r\n \"MyConfigDedicated.RemoteApiPort\": \"{{server.build.env.REMOTEAPI_PORT}}\"\r\n }\r\n },\r\n \"config\/Saves\/World\/Sandbox.sbc\": {\r\n \"parser\": \"xml\",\r\n \"find\": {\r\n \"MyConfigDedicated.SessionSettings.GameMode\": \"{{server.build.env.SERVER_MODE}}\",\r\n \"MyConfigDedicated.SessionSettings.MaxPlayers\": \"{{server.build.env.MAX_PLAYERS}}\",\r\n \"MyConfigDedicated.SessionSettings.AutoSaveInMinutes\": \"{{server.build.env.SAVE_INTERVAL}}\",\r\n \"MyConfigDedicated.SessionSettings.EnableSaving\": \"{{server.build.env.SAVE_ENABLED}}\"\r\n }\r\n }\r\n}",
"startup": "{\r\n \"done\": \"Game ready...\"\r\n}",
@ -37,7 +37,7 @@
"default_value": "298740",
"user_viewable": false,
"user_editable": false,
"rules": "required|numeric|digits_between:1,6",
"rules": "required|numeric|in:298740",
"field_type": "text"
},
{
@ -116,7 +116,7 @@
"env_variable": "STEAM_PORT",
"default_value": "8766",
"user_viewable": true,
"user_editable": true,
"user_editable": false,
"rules": "required|numeric|max:65535",
"field_type": "text"
},
@ -154,7 +154,7 @@
"name": "WINETRICKS_RUN",
"description": "",
"env_variable": "WINETRICKS_RUN",
"default_value": "vcrun2013 vcrun2017 corefonts dotnet48",
"default_value": "vcrun2022 corefonts dotnet48",
"user_viewable": false,
"user_editable": false,
"rules": "required|string",
@ -181,4 +181,4 @@
"field_type": "text"
}
]
}
}

View File

@ -4,7 +4,7 @@
"version": "PTDL_v2",
"update_url": null
},
"exported_at": "2024-01-24T17:14:26+01:00",
"exported_at": "2024-03-06T13:01:46+02:00",
"name": "Squad",
"author": "brycea@terrahost.cloud",
"description": "Squad is a 50 vs 50 multiplayer first-person shooter that aims to capture combat realism through communication and teamplay. Major features include vehicle-based combined arms gameplay, large scale environments, base building, and integrated positional VoIP for proximity talking & radio.",
@ -24,7 +24,7 @@
},
"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# Variables\r\n# STEAM_USER, STEAM_PASS, STEAM_AUTH - Steam user setup. If a user has 2fa enabled it will most likely fail due to timeout. Leave blank for anon install.\r\n# WINDOWS_INSTALL - if it's a windows server you want to install set to 1\r\n# SRCDS_APPID - steam app id found here - https:\/\/developer.valvesoftware.com\/wiki\/Dedicated_Servers_List\r\n# SRCDS_BETAID - beta branch of a steam app. Leave blank to install normal branch\r\n# SRCDS_BETAPASS - password for a beta branch should one be required during private or closed testing phases.. Leave blank for no password.\r\n# INSTALL_FLAGS - Any additional SteamCMD flags to pass during install.. Keep in mind that steamcmd auto update process in the docker image might overwrite or ignore these when it performs update on server boot.\r\n# AUTO_UPDATE - Adding this variable to the egg allows disabling or enabling automated updates on boot. Boolean value. 0 to disable and 1 to enable.\r\n#\r\n ##\r\n\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\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## add below your custom commands if needed\r\n\r\nchmod +x \/mnt\/server\/SquadGame\/Binaries\/Linux\/SquadGameServer\r\n\r\n## install end\r\necho \"-----------------------------------------\"\r\necho \"Installation completed...\"\r\necho \"-----------------------------------------\"",
"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# Variables\r\n# STEAM_USER, STEAM_PASS, STEAM_AUTH - Steam user setup. If a user has 2fa enabled it will most likely fail due to timeout. Leave blank for anon install.\r\n# WINDOWS_INSTALL - if it's a windows server you want to install set to 1\r\n# SRCDS_APPID - steam app id found here - https:\/\/developer.valvesoftware.com\/wiki\/Dedicated_Servers_List\r\n# SRCDS_BETAID - beta branch of a steam app. Leave blank to install normal branch\r\n# SRCDS_BETAPASS - password for a beta branch should one be required during private or closed testing phases.. Leave blank for no password.\r\n# INSTALL_FLAGS - Any additional SteamCMD flags to pass during install.. Keep in mind that steamcmd auto update process in the docker image might overwrite or ignore these when it performs update on server boot.\r\n# AUTO_UPDATE - Adding this variable to the egg allows disabling or enabling automated updates on boot. Boolean value. 0 to disable and 1 to enable.\r\n#\r\n ##\r\n\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\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## Deleted app workshop file if available to not save mods ID`s for the future as that will interviene with the mods specified in the variables tab\r\nrm \/mnt\/server\/container\/steamapps\/workshop\/appworkshop_393380.acf\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 the game using steamcmd\r\n.\/steamcmd.sh +force_install_dir \/mnt\/server +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} \\\r\n$( [[ \"${WINDOWS_INSTALL}\" == \"1\" ]] && printf %s '+@sSteamCmdForcePlatformType windows' ) \\\r\n+app_update ${SRCDS_APPID} $( [[ -z ${SRCDS_BETAID} ]] || printf %s \"-beta ${SRCDS_BETAID}\" ) \\\r\n$( [[ -z ${SRCDS_BETAPASS} ]] || printf %s \"-betapassword ${SRCDS_BETAPASS}\" ) ${INSTALL_FLAGS} validate \\\r\n$(IFS=','; for item in $WORKSHOP_ITEMS; do echo \"+workshop_download_item 393380 ${item}\"; done) \\\r\n+quit\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## Moves downloaded mods to the necesary folder\r\nmv -rf \/mnt\/server\/container\/steamapps\/workshop\/content\/393380 \/mnt\/server\/SquadGame\/Plugins\/Mods\r\necho -e \"Moving downloaded mods if avabile\\n\"\r\n\r\n## add below your custom commands if needed\r\nchmod +x \/mnt\/server\/SquadGame\/Binaries\/Linux\/SquadGameServer\r\n\r\n## install end\r\necho \"-----------------------------------------\"\r\necho \"Installation completed...\"\r\necho \"-----------------------------------------\"",
"container": "ghcr.io\/parkervcp\/installers:debian",
"entrypoint": "bash"
}
@ -149,6 +149,16 @@
"user_editable": false,
"rules": "required|numeric",
"field_type": "text"
},
{
"name": "Download Workshops Items",
"description": "Workshop file ids separated by a comma \",\" (1111111,222222) \r\nReinstall Required to install mods",
"env_variable": "WORKSHOP_ITEMS",
"default_value": "",
"user_viewable": true,
"user_editable": true,
"rules": "required|string",
"field_type": "text"
}
]
}
}

View File

@ -4,7 +4,7 @@
"version": "PTDL_v2",
"update_url": null
},
"exported_at": "2023-11-08T07:57:54-06:00",
"exported_at": "2024-03-20T08:48:44+01:00",
"name": "Valheim BepINex",
"author": "eggs@goover.dev",
"description": "A brutal exploration and survival game for 1-10 players, set in a procedurally-generated purgatory inspired by viking culture incl the Plugin Framework BepInEx",
@ -24,7 +24,7 @@
},
"scripts": {
"installation": {
"script": "#!\/bin\/bash\r\n# Valheim 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 --no-install-suggests install wget\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 +force_install_dir \/mnt\/server +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} +app_update ${SRCDS_APPID} ${EXTRA_FLAGS} +quit\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\necho \"-------------------------------------------------------\"\r\necho \"installing BepInEx and Selected ModPacks...\"\r\necho \"-------------------------------------------------------\"\r\nif ! api_response=$(curl -sfSL -H \"accept: application\/json\" \"https:\/\/valheim.thunderstore.io\/api\/experimental\/package\/denikson\/BepInExPack_Valheim\/\"); then\r\n fatal \"Error: could not retrieve BepInEx release info from Thunderstore.io API\"\r\nfi\r\n\r\ndownload_url=$(jq -r \".latest.download_url\" <<< \"$api_response\" )\r\nversion_number=$(jq -r \".latest.version_number\" <<< \"$api_response\" )\r\n\r\nif [ ! -z \"$V_MODPACK\" ]\r\nthen\r\n#Modpack Name dashes to slashes for URL\r\nV_MODPACK=$(echo \"$V_MODPACK\" | sed 's\/-\/\\\/\/g')\r\n\r\n#Extract dependencies from ModPack JSON data\r\nV_MODPACK_DEPENDENCIES=$(curl -sfSL -H \"accept: application\/json\" \"https:\/\/valheim.thunderstore.io\/api\/experimental\/package\/${V_MODPACK}\" | jq -r '.dependencies[]')\r\nfi\r\n\r\ncd \/mnt\/server\r\n#echo $download_url\r\nwget --content-disposition $download_url\r\nunzip -o denikson-BepInExPack_Valheim-${version_number}.zip\r\ncp -r \/mnt\/server\/BepInExPack_Valheim\/* \/mnt\/server\r\n\r\nif [ ! -z \"$V_MODPACK\" ]\r\nthen\r\n#Delete Old Mods\r\nrm -rf \/mnt\/server\/BepInEx\/plugins\/*\r\n\r\n#Download and extract the modpack dlls files\r\nfor V_MODPACK_DEPENDENCY in $V_MODPACK_DEPENDENCIES; do\r\n #ignore bepinex\r\n if [[ \"$V_MODPACK_DEPENDENCY\" == *\"denikson-BepInExPack_Valheim\"* ]]; then\r\n continue # Skip this dependency\r\n fi\r\n \r\n #replace dashes with slashes for url\r\n V_MODPACK_DEPENDENCY_WITH_SLASH=$(echo \"$V_MODPACK_DEPENDENCY\" | sed 's\/-\/\\\/\/g')\r\n \r\n #download dependencies\r\n wget -O \"$V_MODPACK_DEPENDENCY.zip\" \"https:\/\/thunderstore.io\/package\/download\/$V_MODPACK_DEPENDENCY_WITH_SLASH\"\r\n\r\n #Set the destination directory and ensure it exists\r\n destination_directory=\"\/mnt\/server\/BepInEx\/plugins\"\r\n if [ ! -d \"$destination_directory\" ]; then\r\n mkdir -p \"$destination_directory\"\r\n fi\r\n\r\n #Extract DLL files from the ZIP and delete the zip file\r\n unzip -j \"$V_MODPACK_DEPENDENCY.zip\" \"*.dll\" -d \"$destination_directory\"\r\n \r\n #Cleanup\r\n rm $V_MODPACK_DEPENDENCY.zip\r\ndone\r\nfi\r\n\r\n##cleanup\r\necho \"-------------------------------------------------------\"\r\necho \"cleanup files...\"\r\necho \"-------------------------------------------------------\"\r\nrm -fR BepInExPack_Valheim\r\nrm -fR icon.png\r\nrm -fR denikson-BepInExPack_Valheim-*\r\nrm -fR manifest.json\r\nrm -fR README.m\r\n\r\n#rm -fR start_*\r\n\r\necho \"-------------------------------------------------------\"\r\necho \"Installation completed\"\r\necho \"-------------------------------------------------------\"",
"script": "#!\/bin\/bash\r\n# Valheim 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 --no-install-suggests install wget\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 +force_install_dir \/mnt\/server +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} +app_update ${SRCDS_APPID} ${EXTRA_FLAGS} +quit\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\necho \"-------------------------------------------------------\"\r\necho \"installing BepInEx and Selected ModPacks...\"\r\necho \"-------------------------------------------------------\"\r\nif ! api_response=$(curl -sfSL -H \"accept: application\/json\" \"https:\/\/thunderstore.io\/api\/experimental\/package\/denikson\/BepInExPack_Valheim\/\"); then\r\n fatal \"Error: could not retrieve BepInEx release info from Thunderstore.io API\"\r\nfi\r\n\r\ndownload_url=$(jq -r \".latest.download_url\" <<< \"$api_response\" )\r\nversion_number=$(jq -r \".latest.version_number\" <<< \"$api_response\" )\r\n\r\nif [ ! -z \"$V_MODPACK\" ]\r\nthen\r\n#Modpack Name dashes to slashes for URL\r\nV_MODPACK=$(echo \"$V_MODPACK\" | sed 's\/-\/\\\/\/g')\r\n\r\n#Extract dependencies from ModPack JSON data\r\nV_MODPACK_DEPENDENCIES=$(curl -sfSL -H \"accept: application\/json\" \"https:\/\/thunderstore.io\/api\/experimental\/package\/${V_MODPACK}\" | jq -r '.dependencies[]')\r\nfi\r\n\r\ncd \/mnt\/server\r\n#echo $download_url\r\nwget --content-disposition $download_url\r\nunzip -o denikson-BepInExPack_Valheim-${version_number}.zip\r\ncp -r \/mnt\/server\/BepInExPack_Valheim\/* \/mnt\/server\r\n\r\nif [ ! -z \"$V_MODPACK\" ]\r\nthen\r\n#Delete Old Mods\r\nrm -rf \/mnt\/server\/BepInEx\/plugins\/*\r\n\r\n#Download and extract the modpack dlls files\r\nfor V_MODPACK_DEPENDENCY in $V_MODPACK_DEPENDENCIES; do\r\n #ignore bepinex\r\n if [[ \"$V_MODPACK_DEPENDENCY\" == *\"denikson-BepInExPack_Valheim\"* ]]; then\r\n continue # Skip this dependency\r\n fi\r\n \r\n #replace dashes with slashes for url\r\n V_MODPACK_DEPENDENCY_WITH_SLASH=$(echo \"$V_MODPACK_DEPENDENCY\" | sed 's\/-\/\\\/\/g')\r\n \r\n #download dependencies\r\n wget -O \"$V_MODPACK_DEPENDENCY.zip\" \"https:\/\/thunderstore.io\/package\/download\/$V_MODPACK_DEPENDENCY_WITH_SLASH\"\r\n\r\n #Set the destination directory and ensure it exists\r\n destination_directory=\"\/mnt\/server\/BepInEx\/plugins\"\r\n if [ ! -d \"$destination_directory\" ]; then\r\n mkdir -p \"$destination_directory\"\r\n fi\r\n\r\n #Extract DLL files from the ZIP and delete the zip file\r\n unzip -j \"$V_MODPACK_DEPENDENCY.zip\" \"*.dll\" -d \"$destination_directory\"\r\n \r\n #Cleanup\r\n rm $V_MODPACK_DEPENDENCY.zip\r\ndone\r\nfi\r\n\r\n##cleanup\r\necho \"-------------------------------------------------------\"\r\necho \"cleanup files...\"\r\necho \"-------------------------------------------------------\"\r\nrm -fR BepInExPack_Valheim\r\nrm -fR icon.png\r\nrm -fR denikson-BepInExPack_Valheim-*\r\nrm -fR manifest.json\r\nrm -fR README.m\r\n\r\n#rm -fR start_*\r\n\r\necho \"-------------------------------------------------------\"\r\necho \"Installation completed\"\r\necho \"-------------------------------------------------------\"",
"container": "ghcr.io\/parkervcp\/installers:debian",
"entrypoint": "bash"
}

View File

@ -0,0 +1,15 @@
[/Script/Engine.GameSession]
MaxPlayers=16
[/Script/Vein.VeinGameSession]
bPublic=True
bAntiCheatProtected=False
ServerName=Vein Server
BindAddr=0.0.0.0
HeartbeatInterval=30.0
AdminSteamIDs=1234
Password=secret
[OnlineSubsystemSteam]
GameServerQueryPort=27015
bVACEnabled=0

View File

@ -0,0 +1,39 @@
# VEIN
<!--Please remove these comments and irelevent parts for the server egg your adding before summiting a PR request-->
## From their [Steam](https://store.steampowered.com/app/1857950/VEIN/)
## [Documentation](https://ramjet.notion.site/Server-Hosting-85f92f43f32548c1b5b33797ddf456ad)
## Installation/System Requirements
<!--Make changes to reflect the server minimum/recommended hardware specs-->
## Installation/System Requirements
| | Bare Minimum | Recommended |
|---------|---------|---------|
| Processor | Almost any proccessor will work (AMD64 only) | -|
| RAM | 3 GiB | 4 GiB |
| Storage | 6 GiB | 8 GiB |
| Network | Any reasonable speed |- |
| Game Ownership | Not needed | * |
## Server Ports
Ports required to run the server in a table format.
| Port | default |
|---------|---------|
| Game | 7777 |
| Query | 27015 |
## Config
Some config values can be changed under the startup tab.
Everything else must manual be changed in `Vein/Saved/Config/LinuxServer/Game.ini`
See [here](https://ramjet.notion.site/Server-Hosting-85f92f43f32548c1b5b33797ddf456ad) what every option means.
## Warning
Do not touch the `Vein/Saved/Config/LinuxServer/Engine.ini` file, it will brake the console!

View File

@ -0,0 +1,102 @@
{
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
"meta": {
"version": "PTDL_v2",
"update_url": null
},
"exported_at": "2024-03-03T13:47:56+01:00",
"name": "VEIN",
"author": "josdekurk@gmail.com",
"description": "VEIN is a post-apocalyptic survival multiplayer sandbox game. Gather supplies to survive, explore abandoned buildings, combat bandits, defend your home, assist friendly NPCs, and rebuild society with friends.",
"features": null,
"docker_images": {
"ghcr.io\/parkervcp\/steamcmd:debian": "ghcr.io\/parkervcp\/steamcmd:debian"
},
"file_denylist": [],
"startup": ".\/Vein\/Binaries\/Linux\/VeinServer-Linux-Test -Port={{SERVER_PORT}} -QueryPort={{QUERY_PORT}} -log",
"config": {
"files": "{\r\n \"Vein\/Saved\/Config\/LinuxServer\/Game.ini\": {\r\n \"parser\": \"file\",\r\n \"find\": {\r\n \"MaxPlayers=\": \"MaxPlayers={{server.build.env.MAX_PLAYERS}}\",\r\n \"bShouldAdvertise=\": \"bShouldAdvertise={{server.build.env.PUBLIC_SERVER}}\",\r\n \"ServerName=\": \"ServerName={{server.build.env.SERVER_NAME}}\",\r\n \"BindAddr=\": \"BindAddr=0.0.0.0\",\r\n \"Password=\": \"Password={{server.build.env.SERVER_PASSWORD}}\",\r\n \"GameServerQueryPort=\": \"GameServerQueryPort={{server.build.env.QUERY_PORT}}\"\r\n }\r\n }\r\n}",
"startup": "{\r\n \"done\": \"Created session GameSession.\"\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\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\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## add below your custom commands if needed\r\nFILE=\/mnt\/server\/Vein\/Saved\/Config\/LinuxServer\/Game.ini\r\nif [ -f \"$FILE\" ]; then\r\n echo \"Config file exitis, skipping\"\r\nelse \r\n echo \"Config file does not exits, making one\"\r\n mkdir -p \/mnt\/server\/Vein\/Saved\/Config\/LinuxServer\/\r\n ## Will only work if the egg is merged\r\n curl -sSL -o \/mnt\/server\/Vein\/Saved\/Config\/LinuxServer\/Game.ini https:\/\/raw.githubusercontent.com\/parkervcp\/eggs\/master\/game_eggs\/steamcmd_servers\/vein\/Game.ini\r\n curl -sSL -o \/mnt\/server\/Vein\/Saved\/Config\/LinuxServer\/Engine.ini https:\/\/pteropaste.com\/lt75qughcmfj\r\nfi\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": "2131400",
"user_viewable": false,
"user_editable": false,
"rules": "required|string|in:2131400",
"field_type": "text"
},
{
"name": "Auto update",
"description": "Auto update the server on start",
"env_variable": "AUTO_UPDATE",
"default_value": "1",
"user_viewable": true,
"user_editable": true,
"rules": "required|boolean",
"field_type": "text"
},
{
"name": "Query Port",
"description": "",
"env_variable": "QUERY_PORT",
"default_value": "27015",
"user_viewable": true,
"user_editable": false,
"rules": "required|numeric",
"field_type": "text"
},
{
"name": "Max players",
"description": "",
"env_variable": "MAX_PLAYERS",
"default_value": "16",
"user_viewable": true,
"user_editable": true,
"rules": "required|numeric",
"field_type": "text"
},
{
"name": "Public Server",
"description": "Change this to false if you don\u2019t want your game to be listed in the server browser",
"env_variable": "PUBLIC_SERVER",
"default_value": "True",
"user_viewable": true,
"user_editable": true,
"rules": "required|string|in:True,False",
"field_type": "text"
},
{
"name": "Server Name",
"description": "",
"env_variable": "SERVER_NAME",
"default_value": "Vein Server",
"user_viewable": true,
"user_editable": true,
"rules": "required|string|max:64",
"field_type": "text"
},
{
"name": "Server Password",
"description": "",
"env_variable": "SERVER_PASSWORD",
"default_value": "",
"user_viewable": true,
"user_editable": true,
"rules": "required|alpha_dash|max:32|min:4",
"field_type": "text"
}
]
}

View File

@ -0,0 +1,28 @@
# Urban Terror
## From their [Website](https://www.urbanterror.info/downloads/)
Urban Terror™ is a free multiplayer first person shooter developed by FrozenSand, that will run on any Quake III Arena compatible engine. It is available for Windows, Linux and Macintosh.
Urban Terror can be described as a Hollywood tactical shooter; somewhat realism based, but the motto is "fun over realism". This results in a very unique, enjoyable and addictive game.
## Installation/System Requirements
| | Bare Minimum | Recommended |
|---------|---------|---------|
| Processor | Almost any proccessor will work | - |
| RAM | 256 MiB | 512 MiB |
| SWAP| 512 MiB | 512 MiB (Swap not needed if RAM is 1024MiB)|
| Storage | 1500 MiB | 2000 MiB |
| Network | Any reasonable speed |- |
| Game Ownership | Not needed | The game is free, and server doesn't need the game to work. |
## Server Ports
| Port | default |
|---------|---------|
| Game | 27960 |
## Game Infos
Gamemodes: 0 = Free For All, 1 = Last Man Standing, 3 = Team DeathMatch, 4 = Team Survivor, 5 = Follow The Leader, 6 = Capture And Hold, 7 = Capture The Flag, 8 = Bomb Mode, 9 = Jump, 10 = Freeze Tag, 11 = Gun Game
You can edit the Server.cfg in /home/container/q3ut4/server.cfg as you wish after creating the server.

View File

@ -0,0 +1,152 @@
{
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
"meta": {
"version": "PTDL_v2",
"update_url": null
},
"exported_at": "2024-02-16T13:34:36+01:00",
"name": "Urban Terror",
"author": "Juli199696@web.de",
"description": "Urban Terror started as a realism based \"total conversion\" mod for Quake III Arena. Nowadays, Urban Terror is played using the free, stand-alone, ioquake3 engine modified, which doesn't require Quake III Arena, in addition to being an add-on to id Software's Quake III Arena.",
"features": null,
"docker_images": {
"ghcr.io\/parkervcp\/yolks:debian": "ghcr.io\/parkervcp\/yolks:debian"
},
"file_denylist": [],
"startup": ".\/Quake3-UrT-Ded.{{EXE}} +exec \"server.cfg\" +set fs_game \"q3ut4\" +set fs_basepath \"\/home\/container\" +set fs_homepath \"\/home\/container\" +set dedicated \"2\" +set com_hunkmegs \"{{HUNKMEGS}}\" +set net_port \"{{SERVER_PORT}}\"",
"config": {
"files": "{\r\n \"q3ut4\/server.cfg\": {\r\n \"parser\": \"file\",\r\n \"find\": {\r\n \"set sv_hostname\": \"set sv_hostname \\\"{{server.build.env.SERVER_NAME}}\\\"\",\r\n \"set sv_joinmessage\": \"set sv_joinmessage \\\"{{server.build.env.JOIN_MESSAGE}}\\\"\",\r\n \"set sv_maxclients\": \"set sv_maxclients \\\"{{server.build.env.SERVER_MAXCLIENTS}}\\\"\",\r\n \"set rconpassword\": \"set rconpassword \\\"{{server.build.env.RCON_PASSWORD}}\\\"\",\r\n \"set g_password\": \"set g_password \\\"{{server.build.env.SERVER_PASSWORD}}\\\"\",\r\n \"set g_friendlyfire\": \"set g_friendlyfire \\\"{{server.build.env.SERVER_FRIENDLYFIRE}}\\\"\",\r\n \"set g_gametype\": \"set g_gametype \\\"{{server.build.env.SERVER_GAMETYPE}}\\\"\",\r\n \"set timelimit\": \"set timelimit \\\"{{server.build.env.SERVER_TIMELIMIT}}\\\"\",\r\n \"set bot_enable\": \"set bot_enable 1\",\r\n \"set bot_minplayers\": \"set bot_minplayers \\\"{{server.build.env.BOT_MINPLAYERS}}\\\"\",\r\n \"map ut4_casa\": \"map \\\"{{server.build.env.SERVER_MAP}}\\\"\"\r\n }\r\n }\r\n}",
"startup": "{\r\n \"done\": \"------- Game Initialization -------\"\r\n}",
"logs": "{}",
"stop": "quit"
},
"scripts": {
"installation": {
"script": "#!\/bin\/bash\r\n\r\nmkdir -p \/mnt\/server\r\ncd \/mnt\/server\r\n\r\napt update\r\napt -y install libxml2-utils sed #Install needed dependencies for the official Urban Terror Updater (Not for the Gameserver itself)\r\n\r\necho \"Downloading Urban Terror\"\r\ncurl -sSL -o UrTUpdater-Ded.sh https:\/\/github.com\/FrozenSand\/UrTUpdater\/releases\/download\/v4.0.3-RC1\/UrTUpdater-v4.0.3-Ded.sh \r\n#Download from Github because the Webpage does not allow \"direct Downloads\"\r\n\r\necho \"Updating Urban Terror\" #Accept the EULA and input the needed variables to download the latest version of the Serverfiles (4.3.4 for now)\r\nbash \/mnt\/server\/UrTUpdater-Ded.sh << EOF\r\ny\r\n1\r\n1\r\n1\r\nn\r\ny\r\nn\r\nEOF\r\n\r\n# Set up default configs\r\nmv \/mnt\/server\/q3ut4\/server_example.cfg \/mnt\/server\/q3ut4\/server.cfg\r\nmv \/mnt\/server\/q3ut4\/mapcycle_example.txt \/mnt\/server\/q3ut4\/mapcycle.txt\r\n\r\nchmod +x \/mnt\/server\/Quake3-UrT-Ded.x86_64\r\nchmod +x \/mnt\/server\/Quake3-UrT-Ded.i386\r\n\r\n# Use sed to insert extra config options as many people ask for Bots ingame\r\nsed -i '\/\\\/\\\/pb_sv_enable\/a\\set bot_enable 1\\nset bot_minplayers 0' \/mnt\/server\/q3ut4\/server.cfg\r\n\r\n## install end\r\necho \"-----------------------------------------\"\r\necho \"Installation completed...\"\r\necho \"-----------------------------------------\"",
"container": "ghcr.io\/parkervcp\/installers:debian",
"entrypoint": "bash"
}
},
"variables": [
{
"name": "Version",
"description": "32bit \/ 64bit server version. it is recommended to use the 64bit server, unless you are experiencing issues.",
"env_variable": "EXE",
"default_value": "x86_64",
"user_viewable": true,
"user_editable": true,
"rules": "required|string|in:x86_64,i386",
"field_type": "text"
},
{
"name": "Hunkmegs",
"description": "How much memory is allocated during server start up.\r\n\r\nAvailable options: 128, 160, 192, 256 MB",
"env_variable": "HUNKMEGS",
"default_value": "128",
"user_viewable": true,
"user_editable": true,
"rules": "required|string|in:128,160,192,256",
"field_type": "text"
},
{
"name": "Server Hostname",
"description": "Put your Servername into here.",
"env_variable": "SERVER_NAME",
"default_value": "My Awesome Pterodactyl Server",
"user_viewable": true,
"user_editable": true,
"rules": "required|string|max:55",
"field_type": "text"
},
{
"name": "Join Message",
"description": "The message the player will receive when joining the server.",
"env_variable": "JOIN_MESSAGE",
"default_value": "Welcome to this Server, have fun!",
"user_viewable": true,
"user_editable": true,
"rules": "required|string|max:50",
"field_type": "text"
},
{
"name": "Max Players",
"description": "Maximum players that can connect to the server.",
"env_variable": "SERVER_MAXCLIENTS",
"default_value": "16",
"user_viewable": true,
"user_editable": true,
"rules": "required|numeric|between:1,32",
"field_type": "text"
},
{
"name": "RCON Password",
"description": "Set the Rcon Password for Admin commands.\r\nCan be empty to disable RCON.",
"env_variable": "RCON_PASSWORD",
"default_value": "",
"user_viewable": true,
"user_editable": true,
"rules": "nullable|string|max:20",
"field_type": "text"
},
{
"name": "Server Password",
"description": "If you want to set a password to connect on the server set this here.",
"env_variable": "SERVER_PASSWORD",
"default_value": "",
"user_viewable": true,
"user_editable": true,
"rules": "nullable|string|max:20",
"field_type": "text"
},
{
"name": "Map",
"description": "Choose the initial Map the server should start with. \r\n(ONLY CHANGE IF YOU KNOW THE MAP IS EXISTING) Server wont start without it!",
"env_variable": "SERVER_MAP",
"default_value": "ut4_casa",
"user_viewable": true,
"user_editable": true,
"rules": "required|string|max:50",
"field_type": "text"
},
{
"name": "Gametype \/ Gamemode",
"description": "Sets the Gamemode you want to play. \r\n1 = Last Man Standing, \r\n2 = Free For All, \r\n3 = Team DeathMatch, \r\n4 = Team Survivor, \r\n5 = Follow The Leader, \r\n6 = Capture And Hold, \r\n7 = Capture The Flag, \r\n8 = Bomb Mode, \r\n9 = Jump, \r\n10 = Freeze Tag, \r\n11 = Gun Game",
"env_variable": "SERVER_GAMETYPE",
"default_value": "3",
"user_viewable": true,
"user_editable": true,
"rules": "required|numeric|in:1,2,3,4,5,6,7,8,9,10,11",
"field_type": "text"
},
{
"name": "Bots",
"description": "Want to have bots in your game select how many you want. \r\n(More than 16 bots tend to crash the server or add lag, use with caution!)\r\nDisclaimer: \"Bots are not officialy supported by FS!!!\"",
"env_variable": "BOT_MINPLAYERS",
"default_value": "0",
"user_viewable": true,
"user_editable": true,
"rules": "required|numeric|max:16",
"field_type": "text"
},
{
"name": "Map Timelimit",
"description": "Time in minutes before map is over. (0 = never)",
"env_variable": "SERVER_TIMELIMIT",
"default_value": "10",
"user_viewable": true,
"user_editable": true,
"rules": "required|numeric|max:999",
"field_type": "text"
},
{
"name": "Friendlyfire",
"description": "Sets if friendlyfire is on or off. (Teamkill your teammates is bad hmmkay?)",
"env_variable": "SERVER_FRIENDLYFIRE",
"default_value": "1",
"user_viewable": true,
"user_editable": true,
"rules": "required|integer|max:1",
"field_type": "text"
}
]
}

View File

@ -1,37 +0,0 @@
# Yuzu Emulator Dedicated Multiplayer Room
## From their [Github](https://github.com/yuzu-emu/yuzu-mainline)
## Description
This egg can be used to host dedicated multiplayer rooms for the Yuzu emulator.
## Install notes
Running this server requires almost no resources, but the installation involves compiling the binary. This is needed because yuzu unfortunately does not release their server binaries for Linux. Depending on your configuration, the installation part may take 5 minutes or more.
To update, simply run the installer again.
## Minimum RAM warning
8 MiB is enough, but 16 MiB is recommended
## Minumim Sorage warning
1MiB is required, but 50 MiB is recommended to have some spare space for core dumps/logs
Note: the install part requires ~ 5GiB of free space
## Server Ports
Ports required to run the server in a table format.
| Port | default |
|---------|---------|
| Game | 24872 |
### Notes
- 24872 is the default port, but any port can be used.
- Banlist is currently not supported. Upon startup, an error will be shown about the missing banlist, but the server will work regardless.

View File

@ -1,102 +0,0 @@
{
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
"meta": {
"version": "PTDL_v2",
"update_url": null
},
"exported_at": "2023-12-15T21:41:29+01:00",
"name": "YuzuEmu",
"author": "me@basvandenboom.dev",
"description": "Egg for hosting dedicated Yuzu multiplayer rooms.",
"features": null,
"docker_images": {
"ghcr.io\/parkervcp\/yolks:debian": "ghcr.io\/parkervcp\/yolks:debian"
},
"file_denylist": [],
"startup": ".\/yuzu-room --room-name \"{{ROOM_NAME}}\" --room-description \"{{ROOM_DESCRIPTION}}\" --preferred-game \"{{PREFERRED_GAME}}\" --preferred-game-id {{PREFERRED_GAME_ID}} --port {{SERVER_PORT}} --max_members {{MAX_MEMBERS}} --password \"{{PASSWORD}}\" --token \"{{YUZU_TOKEN}}\" --web-api-url \"https:\/\/api.yuzu-emu.org\"",
"config": {
"files": "{}",
"startup": "{\r\n \"done\": \"Room is open\"\r\n}",
"logs": "{}",
"stop": "Q"
},
"scripts": {
"installation": {
"script": "#!\/bin\/bash\r\n\r\n# Install build tools\r\necho \"deb http:\/\/deb.debian.org\/debian bullseye-backports main\" >> \/etc\/apt\/sources.list && \\\r\napt-get update && apt-get -y full-upgrade && \\\r\n apt-get install -y build-essential wget git ccache ninja-build libssl-dev pkg-config libarchive-tools \\\r\n cmake\/bullseye-backports cmake-data\/bullseye-backports\r\n\r\n\r\n# Shallow clone yuzu repository, since we delete the local copy afterwards\r\ngit clone --depth 1 -j4 --recursive --shallow-submodules https:\/\/github.com\/yuzu-emu\/yuzu-mainline.git \/mnt\/server\/yuzu-mainline\r\n\r\n# Download build tools and build\r\ngit clone --depth 1 https:\/\/github.com\/yuzu-emu\/yuzu-multiplayer-dedicated.git \/mnt\/server\/build-files\r\ncd \/mnt\/server\/yuzu-mainline && \/mnt\/server\/build-files\/.ci\/build.sh\r\n\r\n# Copy server binary to container root\r\ncp \/mnt\/server\/yuzu-mainline\/build\/bin\/yuzu-room \/mnt\/server\/yuzu-room\r\n\r\n# Delete git repo's to save disk space.\r\nrm -rf \/mnt\/server\/yuzu-mainline && rm -rf \/mnt\/server\/build-files",
"container": "ghcr.io\/parkervcp\/installers:debian",
"entrypoint": "bash"
}
},
"variables": [
{
"name": "Room name",
"description": "",
"env_variable": "ROOM_NAME",
"default_value": "My Yuzu Room",
"user_viewable": true,
"user_editable": true,
"rules": "required|string|max:60",
"field_type": "text"
},
{
"name": "Room description",
"description": "",
"env_variable": "ROOM_DESCRIPTION",
"default_value": "",
"user_viewable": true,
"user_editable": true,
"rules": "nullable|string|max:60",
"field_type": "text"
},
{
"name": "Preferred game",
"description": "",
"env_variable": "PREFERRED_GAME",
"default_value": "Mario Kart 8 Deluxe",
"user_viewable": true,
"user_editable": true,
"rules": "nullable|string|max:20",
"field_type": "text"
},
{
"name": "Preferred game ID",
"description": "",
"env_variable": "PREFERRED_GAME_ID",
"default_value": "",
"user_viewable": true,
"user_editable": true,
"rules": "nullable|string|max:20|alphanum",
"field_type": "text"
},
{
"name": "Max members",
"description": "",
"env_variable": "MAX_MEMBERS",
"default_value": "4",
"user_viewable": true,
"user_editable": true,
"rules": "required|int|max:16|min:1",
"field_type": "text"
},
{
"name": "Room password",
"description": "Room password. Leave empty for no password.",
"env_variable": "PASSWORD",
"default_value": "",
"user_viewable": true,
"user_editable": true,
"rules": "nullable|string|max:20",
"field_type": "text"
},
{
"name": "Yuzu token",
"description": "Yuzu account token (retrieve yours at https:\/\/profile.yuzu-emu.org\/). Necessary when creating a public (listed) room. Leave empty to create a private room.",
"env_variable": "YUZU_TOKEN",
"default_value": "",
"user_viewable": true,
"user_editable": true,
"rules": "nullable|string",
"field_type": "text"
}
]
}

View File

@ -0,0 +1,18 @@
# Forgejo
[Forgejo](https://forgejo.org/) is a community managed lightweight code hosting solution written in Go. It is published under the MIT license.
## Supported Versions
You can set the version in Version variable. You can use following values:
latest - latest stable release
version - set the version according to this page: https://forgejo.org/releases/
## Server Ports
Ports required to run the server in a table format.
| Port | default |
| ---- | ------- |
| App | 3000 |
| SSH | 2020 |

View File

@ -0,0 +1,64 @@
{
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
"meta": {
"version": "PTDL_v2",
"update_url": null
},
"exported_at": "2024-03-20T08:45:50+01:00",
"name": "Forgejo",
"author": "seaswimmerthefsh@gmail.com",
"description": "Forgejo is a community managed lightweight code hosting solution written in Go. It is published under the MIT license, and is a fork of Gitea.",
"features": null,
"docker_images": {
"Debian": "ghcr.io\/parkervcp\/yolks:debian"
},
"file_denylist": [
"forgejo"
],
"startup": ".\/forgejo web -p {{SERVER_PORT}} -c .\/app.ini",
"config": {
"files": "{\r\n \"custom\/app.ini\": {\r\n \"parser\": \"file\",\r\n \"find\": {\r\n \"DISABLE_SSH\": \"DISABLE_SSH: {{server.build.env.DISABLE_SSH}}\",\r\n \"SSH_PORT\": \"SSH_PORT: {{server.build.env.SSH_PORT}}\"\r\n }\r\n }\r\n}",
"startup": "{\r\n \"done\": \"Listen: \"\r\n}",
"logs": "{}",
"stop": "^C"
},
"scripts": {
"installation": {
"script": "## Forgejo Installscript\r\n## Modified version of the Gitea installscript, see https:\/\/github.com\/parkervcp\/eggs\/blob\/master\/software\/gitea\/egg-gitea.json\r\n\r\n## update system\r\napt update\r\napt -y install --no-install-recommends jq curl ca-certificates dnsutils\r\n\r\n## Variables\r\nARCH=$([[ \"$(uname -m)\" == \"x86_64\" ]] && echo \"amd64\" || echo \"arm64\")\r\nLATEST=$(dig +short release.forgejo.org TXT | grep -oE '([0-9]+\\.){2}[0-9]+(-[a-zA-Z0-9]+)*')\r\n\r\n\r\ncd \/mnt\/server\r\n\r\n## install forgejo\r\nif [ -z \"${VERSION}\" ] || [ \"${VERSION}\" == \"latest\" ]; then\r\n echo -e \"Downloading Forgejo $LATEST (latest)\"\r\n URL=https:\/\/codeberg.org\/forgejo\/forgejo\/releases\/download\/v${LATEST}\/forgejo-${LATEST}-linux-${ARCH}\r\nelse\r\n echo -e \"Downloading Forgejo $VERSION\"\r\n URL=https:\/\/codeberg.org\/forgejo\/forgejo\/releases\/download\/v${VERSION}\/forgejo-${VERSION}-linux-${ARCH}\r\nfi\r\n\r\necho -e \"Download URL: $URL\"\r\n\r\ncurl -sSL -o forgejo $URL\r\n\r\nchmod +x forgejo\r\n\r\nmkdir -p custom\r\n\r\nif [ -f \"\/mnt\/server\/custom\/app.ini\" ]; then\r\n echo \"Config file exists\"\r\nelse\r\n echo \"[server]\r\n LOCAL_ROOT_URL = http:\/\/${SERVER_IP}:${SERVER_PORT}\/\r\n DOMAIN = ${SERVER_IP}\r\n HTTP_PORT = ${SERVER_PORT}\r\n ROOT_URL = http:\/\/${SERVER_IP}:${SERVER_PORT}\/\r\n DISABLE_SSH = ${DISABLE_SSH}\r\n SSH_PORT = ${SSH_PORT}\" > \/mnt\/server\/custom\/app.ini\r\nfi\r\n\r\necho -e \"-------------------------------------------------\"\r\necho -e \"Installation completed\"\r\necho -e \"-------------------------------------------------\"",
"container": "ghcr.io\/parkervcp\/yolks:debian",
"entrypoint": "bash"
}
},
"variables": [
{
"name": "Disable SSH",
"description": "Disable the SSH feature when it\u2019s not available.",
"env_variable": "DISABLE_SSH",
"default_value": "false",
"user_viewable": true,
"user_editable": false,
"rules": "required|string|in:true,false",
"field_type": "text"
},
{
"name": "SSH Port",
"description": "SSH port displayed in clone URL.",
"env_variable": "SSH_PORT",
"default_value": "2020",
"user_viewable": true,
"user_editable": false,
"rules": "required|integer|between:1024,65535",
"field_type": "text"
},
{
"name": "Version",
"description": "Use either `latest` or a specific version, such as `1.21.7-0`.",
"env_variable": "VERSION",
"default_value": "latest",
"user_viewable": true,
"user_editable": true,
"rules": "required|string|max:15",
"field_type": "text"
}
]
}