174 lines
7.8 KiB
JSON
174 lines
7.8 KiB
JSON
{
|
|
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
|
|
"meta": {
|
|
"version": "PTDL_v2",
|
|
"update_url": null
|
|
},
|
|
"exported_at": "2024-05-18T12:00:00+00:00",
|
|
"name": "RuneScape: Dragonwilds (wompmacho)",
|
|
"author": "michael@wompmacho.com",
|
|
"description": "On RuneScape\u2019s forgotten continent of Ashenfall, dragons have awoken. Gather, build, skill and craft to survive in this co-operative survival crafting game.",
|
|
"features": [
|
|
"steam_disk_space"
|
|
],
|
|
"docker_images": {
|
|
"ghcr.io/ptero-eggs/steamcmd:debian": "ghcr.io/ptero-eggs/steamcmd:debian"
|
|
},
|
|
"file_denylist": [],
|
|
"startup": "INI=\"RSDragonwilds/Saved/Config/LinuxServer/DedicatedServer.ini\"; mkdir -p \"$(dirname \"$INI\")\"; GUID=$(grep -i \"ServerGuid=\" \"$INI\" 2>/dev/null | cut -d= -f2 | tr -d '\\r'); printf \"[SectionsToSave]\\nbCanSaveAllSections=true\\n\\n[/Script/Dominion.DedicatedServerSettings]\\nAdminPassword=%s\\nOwnerId=%s\\nWorldPassword=%s\\nServerName=%s\\nDefaultWorldName=%s\\nServerGuid=%s\\nbLostXpOnDeath=%s\\nbFriendlyFire=%s\\nDifficulty=%s\\nbDropItemsOnDeath=%s\\n\" \"{{DV_ADMIN_PASSWORD}}\" \"{{DV_OWNER_ID}}\" \"{{DV_WORLD_PASSWORD}}\" \"{{DV_SERVER_NAME}}\" \"{{DV_WORLD_NAME}}\" \"$GUID\" \"{{DV_LOST_XP_ON_DEATH}}\" \"{{DV_FRIENDLY_FIRE}}\" \"{{DV_DIFFICULTY}}\" \"{{DV_DROP_ITEMS_ON_DEATH}}\" > \"$INI\"; ./RSDragonwilds/Binaries/Linux/RSDragonwildsServer-Linux-Shipping RSDragonwilds -Port={{SERVER_PORT}} -QueryPort={{DV_QUERY_PORT}} -MultiHome=0.0.0.0 -ini:Game:[/Script/Engine.GameSession]:MaxPlayers={{DV_MAX_PLAYERS}} {{EXTRA_ARGS}}",
|
|
"config": {
|
|
"files": "{}",
|
|
"startup": "{\n \"done\": \"START SESSION - Success\"\n}",
|
|
"logs": "{}",
|
|
"stop": "^C"
|
|
},
|
|
"scripts": {
|
|
"installation": {
|
|
"script": "#!/bin/bash\n# SteamCMD Base Installation Script\n\napt -y update\napt -y --no-install-recommends install curl lib32gcc-s1 ca-certificates\n\n# Variables\nif [[ \"${STEAM_USER}\" == \"\" ]] || [[ \"${STEAM_PASS}\" == \"\" ]]; then\n echo -e \"Using anonymous Steam login\"\n STEAM_USER=anonymous\n STEAM_PASS=\"\"\n STEAM_AUTH=\"\"\nfi\n\ncd /tmp\nmkdir -p /mnt/server/steamcmd\ncurl -sSL -o steamcmd.tar.gz https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz\n\ntar -xzvf steamcmd.tar.gz -C /mnt/server/steamcmd\nmkdir -p /mnt/server/steamapps\ncd /mnt/server/steamcmd\n\nexport HOME=/mnt/server\n\n# Install server\n./steamcmd.sh +force_install_dir /mnt/server +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} +app_update ${SRCDS_APPID} validate +quit\n\n# Fix steam libraries\nmkdir -p /mnt/server/.steam/sdk32\ncp -v linux32/steamclient.so /mnt/server/.steam/sdk32/steamclient.so\n\nmkdir -p /mnt/server/.steam/sdk64\ncp -v linux64/steamclient.so /mnt/server/.steam/sdk64/steamclient.so\n\n# Permissions for Sentry Crash Handler\nchmod +x /mnt/server/RSDragonwilds/Plugins/Developer/Sentry/Binaries/Linux/crashpad_handler 2>/dev/null || true\n\n# Seed DedicatedServer.ini with correct headers\nmkdir -p /mnt/server/RSDragonwilds/Saved/Config/LinuxServer\ncat <<'EOF' > /mnt/server/RSDragonwilds/Saved/Config/LinuxServer/DedicatedServer.ini\n;METADATA=(Diff=true, UseCommands=true)\n[SectionsToSave]\nbCanSaveAllSections=true\n\n[/Script/Dominion.DedicatedServerSettings]\nAdminPassword=\nOwnerId=\nWorldPassword=\nServerName=\nDefaultWorldName=\nEOF\n\necho \"-----------------------------------------\"\necho \"Installation completed\"\necho \"-----------------------------------------\"",
|
|
"container": "ghcr.io/ptero-eggs/installers:debian",
|
|
"entrypoint": "bash"
|
|
}
|
|
},
|
|
"variables": [
|
|
{
|
|
"name": "Owner ID",
|
|
"description": "Your RuneScape: Dragonwilds Player ID (Required for server startup)",
|
|
"env_variable": "DV_OWNER_ID",
|
|
"default_value": "",
|
|
"user_viewable": true,
|
|
"user_editable": true,
|
|
"rules": "required|string",
|
|
"field_type": "text"
|
|
},
|
|
{
|
|
"name": "Server Name",
|
|
"description": "The name of your server",
|
|
"env_variable": "DV_SERVER_NAME",
|
|
"default_value": "A Dragonwilds Server",
|
|
"user_viewable": true,
|
|
"user_editable": true,
|
|
"rules": "required|string",
|
|
"field_type": "text"
|
|
},
|
|
{
|
|
"name": "Admin Password",
|
|
"description": "The password used to access server management in-game",
|
|
"env_variable": "DV_ADMIN_PASSWORD",
|
|
"default_value": "ChangeMe",
|
|
"user_viewable": true,
|
|
"user_editable": true,
|
|
"rules": "required|string",
|
|
"field_type": "text"
|
|
},
|
|
{
|
|
"name": "Default World Name",
|
|
"description": "The name of the world to create/load",
|
|
"env_variable": "DV_WORLD_NAME",
|
|
"default_value": "MyWorld",
|
|
"user_viewable": true,
|
|
"user_editable": true,
|
|
"rules": "required|string",
|
|
"field_type": "text"
|
|
},
|
|
{
|
|
"name": "World Password",
|
|
"description": "Optional world password. Leave empty for public access.",
|
|
"env_variable": "DV_WORLD_PASSWORD",
|
|
"default_value": "",
|
|
"user_viewable": true,
|
|
"user_editable": true,
|
|
"rules": "nullable|string",
|
|
"field_type": "text"
|
|
},
|
|
{
|
|
"name": "Query Port",
|
|
"description": "Steam query port (UDP)",
|
|
"env_variable": "DV_QUERY_PORT",
|
|
"default_value": "27015",
|
|
"user_viewable": true,
|
|
"user_editable": true,
|
|
"rules": "required|numeric",
|
|
"field_type": "text"
|
|
},
|
|
{
|
|
"name": "Max Players",
|
|
"description": "Maximum number of players allowed on the server",
|
|
"env_variable": "DV_MAX_PLAYERS",
|
|
"default_value": "6",
|
|
"user_viewable": true,
|
|
"user_editable": true,
|
|
"rules": "required|numeric",
|
|
"field_type": "text"
|
|
},
|
|
{
|
|
"name": "Lost XP on Death",
|
|
"description": "Whether players lose XP upon death. (True/False)",
|
|
"env_variable": "DV_LOST_XP_ON_DEATH",
|
|
"default_value": "False",
|
|
"user_viewable": true,
|
|
"user_editable": true,
|
|
"rules": "required|string",
|
|
"field_type": "text"
|
|
},
|
|
{
|
|
"name": "Friendly Fire",
|
|
"description": "Whether friendly fire is enabled. (true/false)",
|
|
"env_variable": "DV_FRIENDLY_FIRE",
|
|
"default_value": "false",
|
|
"user_viewable": true,
|
|
"user_editable": true,
|
|
"rules": "required|string",
|
|
"field_type": "text"
|
|
},
|
|
{
|
|
"name": "Difficulty",
|
|
"description": "The game difficulty. Options: Standard, Hard.",
|
|
"env_variable": "DV_DIFFICULTY",
|
|
"default_value": "Standard",
|
|
"user_viewable": true,
|
|
"user_editable": true,
|
|
"rules": "required|string",
|
|
"field_type": "text"
|
|
},
|
|
{
|
|
"name": "Drop Items on Death",
|
|
"description": "Whether players drop items upon death. (True/False)",
|
|
"env_variable": "DV_DROP_ITEMS_ON_DEATH",
|
|
"default_value": "True",
|
|
"user_viewable": true,
|
|
"user_editable": true,
|
|
"rules": "required|string",
|
|
"field_type": "text"
|
|
},
|
|
{
|
|
"name": "Auto Update",
|
|
"description": "Enable automatic updates on server startup",
|
|
"env_variable": "AUTO_UPDATE",
|
|
"default_value": "1",
|
|
"user_viewable": true,
|
|
"user_editable": true,
|
|
"rules": "required|numeric",
|
|
"field_type": "text"
|
|
},
|
|
{
|
|
"name": "Extra Arguments",
|
|
"description": "Additional server startup arguments",
|
|
"env_variable": "EXTRA_ARGS",
|
|
"default_value": "-log -unattended -NoCrashDialog",
|
|
"user_viewable": true,
|
|
"user_editable": true,
|
|
"rules": "nullable|string",
|
|
"field_type": "text"
|
|
},
|
|
{
|
|
"name": "Steam App ID",
|
|
"description": "Steam App ID for Dragonwilds server",
|
|
"env_variable": "SRCDS_APPID",
|
|
"default_value": "4019830",
|
|
"user_viewable": false,
|
|
"user_editable": false,
|
|
"rules": "required|string",
|
|
"field_type": "text"
|
|
}
|
|
]
|
|
} |