Eco v1.0.2

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

更新日志

[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/48/download/egg-eco.json"
    },
    "exported_at": "2024-09-20T09:14:59+02:00",
    "name": "Eco",
    "author": "eggs@goover.dev",
    "description": "Eco 是一款由 Strange Loop Games 开发的在线世界游戏,玩家必须利用生态系统中的资源来建设文明,而这一生态系统可能会受到损害甚至被摧毁。Eco 的世界具有极强的反应性,任何玩家在游戏中所做的行为都会影响底层的生态系统。",
    "features": [
        "steam_disk_space"
    ],
    "docker_images": {
        "registry.cn-shanghai.aliyuncs.com/pterodactyl-images/steamcmd:dotnet": "registry.cn-shanghai.aliyuncs.com/pterodactyl-images/steamcmd:dotnet"
    },
    "file_denylist": [],
    "startup": "./EcoServer --username=\"{{SLG_USER}}\" --password=\"{{SLG_PW}}\"",
    "config": {
        "files": "{\r\n    \"Configs/Network.eco\": {\r\n        \"parser\": \"json\",\r\n        \"find\": {\r\n            \"GameServerPort\": \"{{server.build.default.port}}\",\r\n            \"WebServerPort\": \"{{server.build.env.WEB_PORT}}\",\r\n            \"PublicServer\": \"{{server.build.env.PUB_SRV}}\",\r\n            \"Password\": \"{{server.build.env.SRV_PW}}\",\r\n            \"UPnPEnabled\": \"{{server.build.env.UPNP}}\",\r\n            \"Description\": \"{{server.build.env.SRV_NAME}}\",\r\n            \"DetailedDescription\": \"{{server.build.env.DEDES}}\",\r\n            \"Playtime\": \"{{server.build.env.PLAYTIME}}\",\r\n            \"MaxConnections\": \"{{server.build.env.MAX_CON}}\",\r\n            \"DiscordAddress\": \"{{server.build.env.DISCORD_SRV}}\",\r\n            \"RconServerPort\": \"{{server.build.env.RCON_PORT}}\",\r\n            \"RconPassword\": \"{{server.build.env.RCON_PW}}\",\r\n            \"ServerCategory\": \"{{server.build.env.SRV_CAT}}\"\r\n        }\r\n    },\r\n    \"Configs/Localization.eco\": {\r\n        \"parser\": \"json\",\r\n        \"find\": {\r\n            \"Language\": \"{{server.build.env.LANGUAGE}}\"\r\n        }\r\n    }\r\n}",
        "startup": "{\r\n    \"done\": \"Web Server now listening on:\"\r\n}",
        "logs": "{}",
        "stop": "exit"
    },
    "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 'registry.cn-shanghai.aliyuncs.com/pterodactyl-images/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\nFILE=$HOME/Configs/Network.eco\r\nif [ -f \"$FILE\" ]; then\r\n  echo -e \"Network.eco found.\"\r\nelse  \r\n  echo -e \"No Network.eco found. Moving default...\"\r\n  cp -f $HOME/Configs/Network.eco.template $HOME/Configs/Network.eco\r\n  echo -e \".done..\"\r\nfi\r\n\r\nFILE=$HOME/Configs/Localization.eco\r\nif [ -f \"$FILE\" ]; then\r\n  echo -e \"Localization.eco found.\"\r\nelse  \r\n  echo -e \"No Localization.eco found. Moving default...\"\r\n  cp -f $HOME/Configs/Localization.eco.template $HOME/Configs/Localization.eco\r\n  echo -e \"..done..\"\r\nfi\r\n\r\necho \"-----------------------------------------\"\r\necho \"Installation completed...\"\r\necho \"-----------------------------------------\"",
            "container": "registry.cn-shanghai.aliyuncs.com/pterodactyl-images/installers:debian",
            "entrypoint": "bash"
        }
    },
    "variables": [
        {
            "name": "[STEAM] 应用ID",
            "description": "",
            "env_variable": "SRCDS_APPID",
            "default_value": "739590",
            "user_viewable": false,
            "user_editable": false,
            "rules": "required|string|in:739590",
            "field_type": "text"
        },
        {
            "name": "[SERVER] 网络服务器端口",
            "description": "Web服务器的端口",
            "env_variable": "WEB_PORT",
            "default_value": "",
            "user_viewable": true,
            "user_editable": true,
            "rules": "required|integer|between:1024,65536",
            "field_type": "text"
        },
        {
            "name": "[SERVER] 公共服务器",
            "description": "设置为 True 以使服务器在 Eco 客户端中列出。",
            "env_variable": "PUB_SRV",
            "default_value": "false",
            "user_viewable": true,
            "user_editable": true,
            "rules": "required|string|in:true,false",
            "field_type": "text"
        },
        {
            "name": "[SERVER] 服务器密码",
            "description": "为服务器设置密码,留空则无需密码。白名单中的玩家无需输入密码。",
            "env_variable": "SRV_PW",
            "default_value": "",
            "user_viewable": true,
            "user_editable": true,
            "rules": "nullable|string|max:20",
            "field_type": "text"
        },
        {
            "name": "[SERVER] 服务器名称",
            "description": "在客户端服务器浏览器中设置您的服务器名称。可以使用聊天命令#文本标记来添加颜色或修改文本的外观。",
            "env_variable": "SRV_NAME",
            "default_value": "Hosted by panel",
            "user_viewable": true,
            "user_editable": true,
            "rules": "required|string|max:50",
            "field_type": "text"
        },
        {
            "name": "UPNP",
            "description": "UPNP 关闭",
            "env_variable": "UPNP",
            "default_value": "false",
            "user_viewable": true,
            "user_editable": true,
            "rules": "required|string|in:true,false",
            "field_type": "text"
        },
        {
            "name": "[SERVER] 自动更新",
            "description": "",
            "env_variable": "AUTO_UPDATE",
            "default_value": "1",
            "user_viewable": true,
            "user_editable": true,
            "rules": "boolean",
            "field_type": "text"
        },
        {
            "name": "[SERVER] 网络服务器URL",
            "description": "你的网络服务器网址。",
            "env_variable": "WEBSRVURL",
            "default_value": "",
            "user_viewable": true,
            "user_editable": true,
            "rules": "nullable|url",
            "field_type": "text"
        },
        {
            "name": "[SERVER] 最大连接数",
            "description": "最大同时在线玩家数(-1 表示无限制)。",
            "env_variable": "MAX_CON",
            "default_value": "-1",
            "user_viewable": true,
            "user_editable": true,
            "rules": "required|string|max:20",
            "field_type": "text"
        },
        {
            "name": "[SERVER] 游戏时间",
            "description": "如果你在Eco客户端创建服务器并设置了时间表(偏好游戏时间安排),此项将自动填写。若此项为空,最佳填写方式是通过游戏菜单(Esc键)选择“设置游戏时间”,然后从playtime.eco复制粘贴数据。",
            "env_variable": "PLAYTIME",
            "default_value": "",
            "user_viewable": true,
            "user_editable": true,
            "rules": "nullable|string",
            "field_type": "text"
        },
        {
            "name": "[SERVER] 详细描述",
            "description": "设置服务器在浏览器中被点击时显示的长格式描述。添加此描述有助于服务器在浏览器中更突出地显示。",
            "env_variable": "DEDES",
            "default_value": "",
            "user_viewable": true,
            "user_editable": true,
            "rules": "nullable|string|max:50",
            "field_type": "text"
        },
        {
            "name": "[SERVER] RCON 端口",
            "description": "",
            "env_variable": "RCON_PORT",
            "default_value": "",
            "user_viewable": true,
            "user_editable": false,
            "rules": "required|integer|between:1024,65536",
            "field_type": "text"
        },
        {
            "name": "[SERVER] RCON 密码",
            "description": "",
            "env_variable": "RCON_PW",
            "default_value": "",
            "user_viewable": true,
            "user_editable": true,
            "rules": "nullable|string",
            "field_type": "text"
        },
        {
            "name": "[SERVER] Discord 服务器",
            "description": "Discord 服务器的邀请链接 ID(\"discord.gg/\" 后面的 ID)。",
            "env_variable": "DISCORD_SRV",
            "default_value": "",
            "user_viewable": true,
            "user_editable": true,
            "rules": "nullable|string",
            "field_type": "text"
        },
        {
            "name": "[SERVER] 服务器类别",
            "description": "在Eco客户端中,当玩家首次点击“新游戏”时,从4个类别中选择1个显示。选择一个类别将大大提高新玩家加入您服务器的可能性。此选项可用的字符串为:无;新手;已建立;新手困难;奇特。",
            "env_variable": "SRV_CAT",
            "default_value": "None",
            "user_viewable": true,
            "user_editable": true,
            "rules": "required|string|in:None,Beginner,Established,BeginnerHard,Strange",
            "field_type": "text"
        },
        {
            "name": "[SERVER] 语言",
            "description": "定义语言。",
            "env_variable": "LANGUAGE",
            "default_value": "English",
            "user_viewable": true,
            "user_editable": true,
            "rules": "required|string|in:English,French,German",
            "field_type": "text"
        },
        {
            "name": "[账户] SLG 用户名",
            "description": "",
            "env_variable": "SLG_USER",
            "default_value": "",
            "user_viewable": true,
            "user_editable": true,
            "rules": "required|string|max:20",
            "field_type": "text"
        },
        {
            "name": "[账户] SLG密码",
            "description": "",
            "env_variable": "SLG_PW",
            "default_value": "",
            "user_viewable": false,
            "user_editable": false,
            "rules": "required|string|max:20",
            "field_type": "text"
        }
    ]
}