英灵神殿 BepINex v1.0.1

飒爽师叔 · 2026-07-01 04:10

更新日志

[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/134/download/egg-valheim-bepinex.json"
    },
    "exported_at": "2026-01-03T15:22:52+00:00",
    "name": "Valheim BepINex",
    "author": "eggs@goover.dev",
    "description": "一款供1-10名玩家游玩的残酷探索与生存游戏,设定在受维京文化启发的程序生成炼狱中,包含插件框架BepInEx",
    "features": [
        "steam_disk_space"
    ],
    "docker_images": {
        "registry.cn-shanghai.aliyuncs.com/pterodactyl-images/games:valheim": "registry.cn-shanghai.aliyuncs.com/pterodactyl-images/games:valheim"
    },
    "file_denylist": [],
    "startup": "export DOORSTOP_ENABLED=1; export DOORSTOP_TARGET_ASSEMBLY=./BepInEx/core/BepInEx.Preloader.dll; export LD_LIBRARY_PATH=\"./doorstop_libs:./linux64:$LD_LIBRARY_PATH\"; export LD_PRELOAD=\"libdoorstop_x64.so:$LD_PRELOAD\"; export LD_LIBRARY_PATH=\"./linux64:$LD_LIBRARY_PATH\"; export SteamAppId=892970; ./valheim_server.x86_64 -nographics -batchmode -name \"{{SERVER_NAME}}\" -port {{SERVER_PORT}} -world \"{{WORLD}}\" -password \"{{PASSWORD}}\" -public {{PUBLIC_SERVER}} -saveinterval {{BACKUP_INTERVAL}} -backups {{BACKUP_COUNT}} -backupshort {{BACKUP_SHORTTIME}} -backuplong {{BACKUP_LONGTIME}} $( [[ {{ENABLE_CROSSPLAY}} -eq 1 ]] && echo \" -crossplay \") > >(sed -uE \"{{CONSOLE_FILTER}}\")",
    "config": {
        "files": "{}",
        "startup": "{\n    \"done\": \"Game server connected\"\n}",
        "logs": "{}",
        "stop": "^C"
    },
    "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    # ------------------------------\r\n    # Steam user defaults\r\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\" \"$BEPINEX_URL\"); 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": "registry.cn-shanghai.aliyuncs.com/pterodactyl-images/installers:debian",
            "entrypoint": "bash"
        }
    },
    "variables": [
        {
            "name": "自动更新",
            "description": "",
            "env_variable": "AUTO_UPDATE",
            "default_value": "1",
            "user_viewable": true,
            "user_editable": true,
            "rules": "boolean",
            "field_type": "text"
        },
        {
            "name": "备份数量",
            "description": "设置将保留的自动备份数量。第一个是“短”备份时长,其余的是“长”备份时长。使用默认值时,表示保留1个2小时前的备份,以及3个间隔12小时的备份。默认值:4。",
            "env_variable": "BACKUP_COUNT",
            "default_value": "4",
            "user_viewable": true,
            "user_editable": true,
            "rules": "required|numeric|min:0",
            "field_type": "text"
        },
        {
            "name": "备份间隔",
            "description": "更改世界保存的频率(秒)。默认值:1800(30分钟)。",
            "env_variable": "BACKUP_INTERVAL",
            "default_value": "1800",
            "user_viewable": true,
            "user_editable": true,
            "rules": "required|numeric|min:0",
            "field_type": "text"
        },
        {
            "name": "长期备份",
            "description": "设置连续自动备份之间的间隔时间(秒)。默认值:43200(12小时)。",
            "env_variable": "BACKUP_LONGTIME",
            "default_value": "43200",
            "user_viewable": true,
            "user_editable": true,
            "rules": "required|numeric|min:0",
            "field_type": "text"
        },
        {
            "name": "短期备份",
            "description": "设置首次自动备份之间的间隔(秒)。默认值:7200(2小时)。",
            "env_variable": "BACKUP_SHORTTIME",
            "default_value": "7200",
            "user_viewable": true,
            "user_editable": true,
            "rules": "required|numeric|min:0",
            "field_type": "text"
        },
        {
            "name": "[系统] BepInEx 网址",
            "description": "",
            "env_variable": "BEPINEX_URL",
            "default_value": "https://thunderstore.io/api/experimental/package/denikson/BepInExPack_Valheim/",
            "user_viewable": false,
            "user_editable": false,
            "rules": "required|url",
            "field_type": "text"
        },
        {
            "name": "[系统] 控制台过滤器",
            "description": "从控制台中移除不需要的输出。",
            "env_variable": "CONSOLE_FILTER",
            "default_value": "/^\\(Filename:.*Line:[[:space:]]+[[:digit:]]+\\)$/d; /^([[:space:]]+)?$/d",
            "user_viewable": false,
            "user_editable": false,
            "rules": "string",
            "field_type": "text"
        },
        {
            "name": "启用跨平台联机",
            "description": "启用跨平台游戏支持",
            "env_variable": "ENABLE_CROSSPLAY",
            "default_value": "0",
            "user_viewable": true,
            "user_editable": true,
            "rules": "boolean",
            "field_type": "text"
        },
        {
            "name": "[系统] LD Library Path",
            "description": "需要加载服务器库。",
            "env_variable": "LD_LIBRARY_PATH",
            "default_value": "./linux64",
            "user_viewable": false,
            "user_editable": false,
            "rules": "required|string",
            "field_type": "text"
        },
        {
            "name": "服务器密码",
            "description": "服务器密码。",
            "env_variable": "PASSWORD",
            "default_value": "secret",
            "user_viewable": true,
            "user_editable": true,
            "rules": "required|string|min:5|max:20",
            "field_type": "text"
        },
        {
            "name": "公共服务器",
            "description": "",
            "env_variable": "PUBLIC_SERVER",
            "default_value": "1",
            "user_viewable": true,
            "user_editable": true,
            "rules": "boolean",
            "field_type": "text"
        },
        {
            "name": "服务器名称",
            "description": "出现在服务器列表中的名称。",
            "env_variable": "SERVER_NAME",
            "default_value": "My Server",
            "user_viewable": true,
            "user_editable": true,
            "rules": "required|string|max:60",
            "field_type": "text"
        },
        {
            "name": "[系统] 应用 ID",
            "description": "Valheim 自动更新的 Steam 应用 ID。",
            "env_variable": "SRCDS_APPID",
            "default_value": "896660",
            "user_viewable": true,
            "user_editable": false,
            "rules": "nullable|numeric",
            "field_type": "text"
        },
        {
            "name": "测试版分支",
            "description": "",
            "env_variable": "SRCDS_BETAID",
            "default_value": "",
            "user_viewable": true,
            "user_editable": true,
            "rules": "max:30",
            "field_type": "text"
        },
        {
            "name": "测试版密码",
            "description": "",
            "env_variable": "SRCDS_BETAPASS",
            "default_value": "",
            "user_viewable": true,
            "user_editable": true,
            "rules": "max:30",
            "field_type": "text"
        },
        {
            "name": "模组包",
            "description": "输入要自动安装的整合包的依赖字符串名称。  \n注意:如果整合包更新,您需要使用新的依赖字符串更新此变量。这样做是为了允许使用旧版本。  \n更改此设置需要重新安装服务器。",
            "env_variable": "V_MODPACK",
            "default_value": "",
            "user_viewable": true,
            "user_editable": true,
            "rules": "string|nullable",
            "field_type": "text"
        },
        {
            "name": "世界名称",
            "description": "在多个已保存的世界之间切换时加载的世界名称。",
            "env_variable": "WORLD",
            "default_value": "Dedicated",
            "user_viewable": true,
            "user_editable": true,
            "rules": "required|string|max:20",
            "field_type": "text"
        }
    ]
}