更新日志
[AI翻译] 描述、说明、JSON描述、变量
版本内容
{
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PANEL",
"meta": {
"update_url": "https://eggs.pterodactyl.top/eggs/67/download/egg-longvinter.json",
"version": "PTDL_v2"
},
"exported_at": "2024-06-01T00:03:57+00:00",
"name": "Longvinter",
"author": "tueye@tuworld.de",
"description": "Longvinter 是一款多人在线第三人称沙盒游戏,包含制作、种植、建造、交易和PVP玩法。",
"features": [
"steam_disk_space"
],
"docker_images": {
"registry.cn-shanghai.aliyuncs.com/pterodactyl-images/yolks:debian": "registry.cn-shanghai.aliyuncs.com/pterodactyl-images/yolks:debian"
},
"file_denylist": [],
"startup": "/home/container/longvinter-linux-server/Longvinter/Binaries/Linux/LongvinterServer-Linux-Shipping Longvinter -Port={{SERVER_PORT}} -QueryPort={{QUERY_PORT}}",
"config": {
"files": "{\r\n \"longvinter-linux-server/Longvinter/Saved/Config/LinuxServer/Game.ini\": {\r\n \"parser\": \"file\",\r\n \"find\": {\r\n \"ServerName\": \"ServerName={{server.build.env.SERVER_NAME}}\",\r\n \"ServerTag\": \"ServerTag={{server.build.env.SERVER_TAG}}\",\r\n \"MaxPlayers\": \"MaxPlayers={{server.build.env.MAX_PLAYERS}}\",\r\n \"ServerMOTD\": \"ServerMOTD={{server.build.env.SERVER_MOTD}}\",\r\n \"Password\": \"Password={{server.build.env.SERVER_PASSWORD}}\",\r\n \"CommunityWebsite\": \"CommunityWebsite={{server.build.env.COMMUNITY_WEBSITE}}\",\r\n \"AdminSteamID\": \"AdminSteamID={{server.build.env.ADMIN_ID}}\",\r\n \"PVP\": \"PVP={{server.build.env.ENABLE_PVP}}\",\r\n \"TentDecay\": \"TentDecay={{server.build.env.ENABLE_TENTDECAY}}\",\r\n \"MaxTents\": \"MaxTents={{server.build.env.MAX_TENTS}}\"\r\n }\r\n }\r\n}",
"logs": "{}",
"startup": "{\r\n \"done\": \"CreateSession: Successfully created session\"\r\n}",
"stop": "^C"
},
"scripts": {
"installation": {
"container": "registry.cn-shanghai.aliyuncs.com/pterodactyl-images/installers:debian",
"entrypoint": "bash",
"script": "#!/bin/bash\r\n\r\n# File: Pterodactyl Longvinter Egg - egg-longvinter.json\r\n# Authors: TuEye\r\n# Date: 2022/05/15\r\n# License: MIT License\r\n\r\n\r\n## Install Git LFS\r\ncurl -s https://packagecloud.io/install/repositories/github/git-lfs/script.deb.sh | bash\r\napt -y install git-lfs\r\n\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\r\n# Set up 32 and 64 bit libraries\r\nmkdir -p /mnt/server/.steam/sdk{32,64}\r\ncp -v linux32/steamclient.so /mnt/server/.steam/sdk32/steamclient.so\r\ncp -v linux64/steamclient.so /mnt/server/.steam/sdk64/steamclient.so\r\n\r\n## Longvinter setup\r\n# If not using auto update and gamedir exist, remove it\r\nif [ ! \"${AUTO_UPDATE}\" ] && [ -d \"$HOME/longvinter-linux-server\" ]; then\r\n echo -e \"\\nDelete game dir\\n\"\r\n rm -r $HOME/longvinter-linux-server\r\nfi\r\n\r\n# Clone Longvinter Dedicated Server repo or do auto update if activated\r\ncd $HOME\r\nif [ ! -d \"$HOME/longvinter-linux-server\" ]; then\r\n git clone \"https://github.com/Uuvana-Studios/longvinter-linux-server.git\"\r\nelif [ \"${AUTO_UPDATE}\" ]; then\r\n echo -e \"\\nUpdating gamefiles\\n\"\r\n cd $HOME/longvinter-linux-server\r\n git config pull.rebase false\r\n git restore .\r\n git stash\r\n git pull \"https://github.com/Uuvana-Studios/longvinter-linux-server.git\" main\r\nfi\r\nchmod -R ugo+rwx $HOME/longvinter-linux-server/\r\n\r\n\r\n# Create base config if not exist\r\nif [ ! -f $HOME/longvinter-linux-server/Longvinter/Saved/Config/LinuxServer/Game.ini ]; then\r\n echo -e \"\\nCreating game config\\n\"\r\n cp $HOME/longvinter-linux-server/Longvinter/Saved/Config/LinuxServer/Game.ini.default $HOME/longvinter-linux-server/Longvinter/Saved/Config/LinuxServer/Game.ini\r\n if ! grep -q \"ServerTag=\" \"$HOME/longvinter-linux-server/Longvinter/Saved/Config/LinuxServer/Game.ini\"; then\r\n sed -i '/^ServerName=.*/a ServerTag=Default' $HOME/longvinter-linux-server/Longvinter/Saved/Config/LinuxServer/Game.ini\r\n fi\r\nfi\r\n\r\necho -e \"\\nLongvinter Dedicated Server successfully installed!\\n\""
}
},
"variables": [
{
"name": "服务器名称",
"description": "服务器名称,显示在游戏浏览器中。",
"env_variable": "SERVER_NAME",
"default_value": "Pterodactyl Longvinter Server",
"user_viewable": true,
"user_editable": true,
"rules": "required|string|max:64",
"field_type": "text"
},
{
"name": "服务器标签",
"description": "这是用于方便搜索服务器的标签。请不要在其中使用“OFFICIAL”一词,并且只放置一个标签。",
"env_variable": "SERVER_TAG",
"default_value": "Pterodactyl",
"user_viewable": true,
"user_editable": true,
"rules": "required|string|max:20",
"field_type": "text"
},
{
"name": "最大玩家数",
"description": "任何给定时间内允许连接的最大玩家数量。",
"env_variable": "MAX_PLAYERS",
"default_value": "32",
"user_viewable": true,
"user_editable": true,
"rules": "required|integer|min:1",
"field_type": "text"
},
{
"name": "服务器 MOTD",
"description": "岛屿周围告示牌上的服务器消息。",
"env_variable": "SERVER_MOTD",
"default_value": "Welcome to Pterodactyl Island!",
"user_viewable": true,
"user_editable": true,
"rules": "required|string|max:64",
"field_type": "text"
},
{
"name": "服务器密码",
"description": "在此处添加您的密码。仅使用数字和字母。如果留空,则服务器没有密码。",
"env_variable": "SERVER_PASSWORD",
"default_value": "",
"user_viewable": true,
"user_editable": true,
"rules": "nullable|alpha_num|max:20",
"field_type": "text"
},
{
"name": "社区网站",
"description": "允许你在显示服务器消息的同一位置推广网站。此链接可在游戏内打开。",
"env_variable": "COMMUNITY_WEBSITE",
"default_value": "pterodactyl.io",
"user_viewable": true,
"user_editable": true,
"rules": "nullable|string|max:64",
"field_type": "text"
},
{
"name": "Admin EOS 账户 ID",
"description": "在这里你可以添加所有希望在服务器中拥有的管理员。如果要添加多个,请用单个空格分隔ID。 \nID可在游戏内的“选项 > 通用”中找到。",
"env_variable": "ADMIN_ID",
"default_value": "",
"user_viewable": true,
"user_editable": true,
"rules": "nullable|regex:/^([a-z0-9]{32} ?)*$/",
"field_type": "text"
},
{
"name": "启用PVP",
"description": "在此处填写 true 或 false,以启用/禁用玩家对战(Player versus Player)功能。",
"env_variable": "ENABLE_PVP",
"default_value": "true",
"user_viewable": true,
"user_editable": true,
"rules": "required|string|in:true,false",
"field_type": "text"
},
{
"name": "帐篷腐烂",
"description": "在此处填写 true 或 false,以启用/禁用帐篷腐烂功能,确保服务器中不会出现大量废弃帐篷。",
"env_variable": "ENABLE_TENTDECAY",
"default_value": "true",
"user_viewable": true,
"user_editable": true,
"rules": "required|string|in:true,false",
"field_type": "text"
},
{
"name": "最大帐篷数",
"description": "服务器中玩家可放置的帐篷最大数量",
"env_variable": "MAX_TENTS",
"default_value": "2",
"user_viewable": true,
"user_editable": true,
"rules": "required|integer|min:1",
"field_type": "text"
},
{
"name": "自动更新",
"description": "重新安装时更新游戏文件。否则服务器将全新安装,您将丢失存档。",
"env_variable": "AUTO_UPDATE",
"default_value": "1",
"user_viewable": true,
"user_editable": true,
"rules": "boolean",
"field_type": "text"
},
{
"name": "查询端口",
"description": "查询Steam使用的端口",
"env_variable": "QUERY_PORT",
"default_value": "27015",
"user_viewable": true,
"user_editable": false,
"rules": "required|integer|between:1024,65536",
"field_type": "text"
},
{
"name": "应用ID",
"description": "",
"env_variable": "SRCDS_APPID",
"default_value": "1007",
"user_viewable": false,
"user_editable": false,
"rules": "required|string|in:1007",
"field_type": "text"
}
]
}