Ground Branch v1.0.2

飒爽师叔 · 2026-06-30 10:06

更新日志

[AI翻译] 描述、说明、JSON描述、变量

版本内容

{
    "_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
    "meta": {
        "version": "PTDL_v2",
        "update_url": "https://eggs.pterodactyl.top/eggs/55/download/egg-ground-branch.json"
    },
    "exported_at": "2025-07-27T12:53:37+00:00",
    "name": "Ground Branch",
    "author": "red_thirten@yahoo.com",
    "description": "来自原《彩虹六号®》和《幽灵行动®》游戏开发团队之一的作品,这是一款面向思考型玩家的第一人称射击游戏,拥有深入的角色与武器自定义系统。从容不迫,提前谋划,完成任务。",
    "features": [],
    "docker_images": {
        "Wine [Staging]": "registry.cn-shanghai.aliyuncs.com/pterodactyl-images/yolks:wine_staging"
    },
    "file_denylist": [],
    "startup": "wine ./GroundBranch/Binaries/Win64/GroundBranchServer-Win64-Shipping.exe MultiHome=0.0.0.0 Port={{SERVER_PORT}} QueryPort={{QUERY_PORT}} -log & GB_PID=$!; tail -c0 -F ./GroundBranch/Saved/Logs/GroundBranch.log --pid=$GB_PID",
    "config": {
        "files": "{\n    \"GroundBranch/ServerConfig/Server.ini\": {\n        \"parser\": \"file\",\n        \"find\": {\n            \"ServerName=\": \"ServerName={{env.SERVER_NAME}}\",\n            \"MaxPlayers=\": \"MaxPlayers={{env.MAX_PLAYERS}}\"\n        }\n    },\n    \"GroundBranch/Config/DefaultModding.ini\": {\n        \"parser\": \"file\",\n        \"find\": {\n            \"ModPath=\": \"ModPath=../steamapps/workshop/content/16900/\"\n        }\n    }\n}",
        "startup": "{\r\n    \"done\": \"Bringing up level for play took\"\r\n}",
        "logs": "{}",
        "stop": "^^C"
    },
    "scripts": {
        "installation": {
            "script": "#!/bin/bash\r\n\r\n## File: Pterodactyl Ground Branch Egg - egg-ground-branch.json\r\n## Authors: David Wolfe (Red-Thirten)\r\n## Date: 2023/08/01\r\n## License: MIT License\r\n## Image to install with is 'registry.cn-shanghai.aliyuncs.com/pterodactyl-china/installers:debian'\r\n\r\n# Download and install SteamCMD\r\nexport HOME=/mnt/server\r\ncd /tmp\r\nmkdir -p $HOME/steamcmd $HOME/steamapps\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 $HOME/steamcmd\r\ncd $HOME/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\n\r\n# Install game server using SteamCMD\r\n./steamcmd.sh +force_install_dir $HOME +login anonymous $( [[ \"${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}\" ) validate +quit\r\n\r\n# Set up 32 and 64 bit libraries\r\nmkdir -p $HOME/.steam/sdk{32,64}\r\ncp -v linux32/steamclient.so $HOME/.steam/sdk32/steamclient.so\r\ncp -v linux64/steamclient.so $HOME/.steam/sdk64/steamclient.so\r\n\r\n## Ground Branch setup\r\n# Make ServerConfig directory and default Server.ini file (since they are not initially present before first server start)\r\nmkdir -p $HOME/GroundBranch/ServerConfig/ && cd \"$_\"\r\n\r\nif [[ ! -f Server.ini ]]; then\r\n    echo -e '\\nCreating default \"Server.ini\" configuration file...'\r\n    cat > Server.ini << EOF\r\n[/Script/RBZooKeeper.ZKServer]\r\n; Name of the server 64 characters max)\r\nServerName=Unnamed Ground Branch Server\r\n\r\n; The message of the day (512 characters max)\r\n; e.g. ServerMOTD=This text here is displayed<br>with the 'admin motd' command.\r\nServerMOTD=\"Welcome!\"\r\n\r\n; Set to a jpg image to act as a server banner in-game where possible.\r\n; (recommended resolution: 788 x 386)\r\nServerWebBanner=\"\"\r\n; e.g. ServerWebPage=www.images.com/myimage.jpeg\r\n\r\n; Password required to join the server.\r\n;ServerPassword=\r\n\r\n; Password required to join the server as a permanent spectator.\r\n;SpectatorOnlyPassword=\r\n\r\n; Maximum number of players allowed on this server.\r\nMaxPlayers=16\r\nMaxSpectators=0\r\n\r\n; Set default match types for game modes and round limits:\r\n; Match types: Continuous, BestOf, FirstTo, Play, PlayUntilWin, TimeLimit.\r\n; Round limits = number of rounds, except Time Limit match type (minutes).\r\n; PVE / Co-op:\r\nPVEMatchType=Continuous\r\nPVERoundLimit=2\r\n; PVP:\r\nPVPMatchType=Continuous\r\nPVPRoundLimit=3\r\n; PVP FFA (Free-for-all):\r\nPVPFFAMatchType=Continuous\r\nPVPFFARoundLimit=1\r\nGameRules=((\"AllowCheats\", False),(\"AllowDeadChat\", True),(\"AllowUnrestrictedRadio\", False),(\"AllowUnrestrictedVoice\", False),(\"SpectateEnemies\", True),(\"SpectateForceFirstPerson\", False),(\"SpectateFreeCam\", True),(\"UseTeamRestrictions\", False))\r\nEOF\r\nfi\r\n\r\necho -e \"\\nGround Branch Dedicated Server successfully installed!\\n\"",
            "container": "registry.cn-shanghai.aliyuncs.com/pterodactyl-images/installers:debian",
            "entrypoint": "/bin/bash"
        }
    },
    "variables": [
        {
            "name": "自动更新",
            "description": "启动时快速检查服务器更新,并在必要时进行更新。(1 开启 | 0 关闭)",
            "env_variable": "AUTO_UPDATE",
            "default_value": "1",
            "user_viewable": true,
            "user_editable": true,
            "rules": "boolean",
            "field_type": "text"
        },
        {
            "name": "最大玩家数",
            "description": "服务器允许连接的最大玩家数量。",
            "env_variable": "MAX_PLAYERS",
            "default_value": "16",
            "user_viewable": true,
            "user_editable": true,
            "rules": "required|integer|min:1",
            "field_type": "text"
        },
        {
            "name": "服务器名称",
            "description": "服务器列表中显示的服务器名称。",
            "env_variable": "SERVER_NAME",
            "default_value": "Unnamed Ground Branch Server",
            "user_viewable": true,
            "user_editable": true,
            "rules": "required|string|max:255",
            "field_type": "text"
        },
        {
            "name": "[必需] 服务器查询端口",
            "description": "这是您的客户端将输入并用于连接至大厅(而非游戏世界)的端口。请确保此端口与您外部转发的端口一致,并且与Pterodactyl中其他正在运行的Ground Branch服务器保持距离(建议以100为增量)。主端口/游戏端口同样适用此规则!",
            "env_variable": "QUERY_PORT",
            "default_value": "",
            "user_viewable": true,
            "user_editable": false,
            "rules": "required|integer|between:1024,65536",
            "field_type": "text"
        },
        {
            "name": "[修复] 验证服务器文件",
            "description": "留空(无值)表示关闭,或输入 \"true\" 或 \"1\" 表示开启。当自动更新启用时,验证所有服务器文件。注意:这将显著增加服务器启动时间,因此建议仅在需要时启用此功能。",
            "env_variable": "VALIDATE",
            "default_value": "",
            "user_viewable": true,
            "user_editable": true,
            "rules": "string|nullable",
            "field_type": "text"
        },
        {
            "name": "[系统] 地面分支专用服务器应用ID",
            "description": "用于安装和更新的Steam应用ID。不可更改。",
            "env_variable": "SRCDS_APPID",
            "default_value": "476400",
            "user_viewable": false,
            "user_editable": false,
            "rules": "required|string|in:476400",
            "field_type": "text"
        },
        {
            "name": "[系统] 使用 Windows 分支",
            "description": "告知安装程序/更新程序仅下载服务器的Windows分支(目前唯一可用的分支),以便其能在Wine上运行。此设置不可更改。",
            "env_variable": "WINDOWS_INSTALL",
            "default_value": "1",
            "user_viewable": false,
            "user_editable": false,
            "rules": "required|string|in:1",
            "field_type": "text"
        },
        {
            "name": "[系统] WINEARCH",
            "description": "用于兼容性。无法更改。",
            "env_variable": "WINEARCH",
            "default_value": "win64",
            "user_viewable": false,
            "user_editable": false,
            "rules": "required|string|in:win64",
            "field_type": "text"
        },
        {
            "name": "[系统] WINEDEBUG",
            "description": "用于抑制WINE FIXME消息。通常无需更改。",
            "env_variable": "WINEDEBUG",
            "default_value": "-all",
            "user_viewable": false,
            "user_editable": false,
            "rules": "string|nullable",
            "field_type": "text"
        }
    ]
}