V
描述
一款残酷的探索与生存游戏,支持1-10名玩家,设定在一个受维京文化启发的程序生成炼狱中。
15 浏览
1 下载
2026-06-30
更新于 2 天前
预设配置详情
Valheim Plus Mod
作者与贡献者
| 名称 | Github 个人主页 | 请我喝杯咖啡 |
|---|---|---|
| gOOvER | https://github.com/gOOvER |
Valheim
一款适合1-10名玩家的残酷探索与生存游戏,背景设定在受维京文化启发的程序生成炼狱中。战斗、建造、征服,谱写配得上奥丁庇护的传奇篇章!
https://store.steampowered.com/app/892970/Valheim/
Plus Mod
一款旨在提升Valheim游戏体验的HarmonyX模组。该模组包含多项核心功能,包括对玩家、建筑和实体的游戏内属性修改,以及用于高精度建造和放置物体的复杂系统,同时提供对已放置物体进行高精度修改的功能。总体目标是提供V+作为游戏基础修改,以提升生活质量、改变难度或获得更好的整体体验。该模组还包含针对服务器和用户的版本与配置控制系统,允许服务器确保只有使用相同配置的玩家才能加入其服务器。
支持:https://github.com/Grantapher/ValheimPlus
Discord:https://discord.gg/AmH6Va97GT
!!!注意!!!
所有(服务器+客户端)都必须安装Valheim Plus Mod!!!
服务器端口
| 端口 | 默认值 |
|---|---|
| 游戏 | 2456 |
| 查询 | 2457 |
registry.cn-shanghai.aliyuncs.com/pterodactyl-images/games:valheim
export DOORSTOP_ENABLE=TRUE; export DOORSTOP_INVOKE_DLL_PATH=./BepInEx/core/BepInEx.Preloader.dll; export DOORSTOP_CORLIB_OVERRIDE_PATH=./unstripped_corlib; export LD_LIBRARY_PATH="./doorstop_libs:$LD_LIBRARY_PATH"; export LD_PRELOAD="libdoorstop_x64.so:$LD_PRELOAD"; export templdpath=$LD_LIBRARY_PATH; export LD_LIBRARY_PATH="./linux64:$LD_LIBRARY_PATH"; export SteamAppId=892970; export LD_LIBRARY_PATH=$templdpath; ./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}}")
| 变量名 | 变量 | 描述 | 默认值 | 规则 | 可查看 | 可编辑 |
|---|---|---|---|---|---|---|
| 自动更新 | AUTO_UPDATE |
1 |
boolean
布尔
|
|||
| 备份数量 | BACKUP_COUNT |
设置保留的自动备份数量。第一个是“短期”备份长度,其余是“长期”备份长度。使用默认值时,表示保留1个2小时前的备份,以及3个间隔12小时的备份。默认值:4。 | 4 |
required|numeric|min:0
必填 数字 最小 0
|
||
| 备份间隔 | BACKUP_INTERVAL |
更改世界保存的频率(以秒为单位)。默认值:1800(30分钟)。 | 1800 |
required|numeric|min:0
必填 数字 最小 0
|
||
| 长期备份 | BACKUP_LONGTIME |
设置后续自动备份之间的间隔时间(秒)。默认值:43200(12小时)。 | 43200 |
required|numeric|min:0
必填 数字 最小 0
|
||
| 备份短时间 | BACKUP_SHORTTIME |
设置首次自动备份之间的间隔(秒)。默认值:7200(2小时)。 | 7200 |
required|numeric|min:0
必填 数字 最小 0
|
||
| [系统] 控制台过滤器 | CONSOLE_FILTER |
从控制台中移除不需要的输出。 | /^\(Filename:.*Line:[[:space:]]+[[:digit:]]+\)$/d; /^([[:space:]]+)?$/d |
string
字符串
|
||
| 启用跨平台联机 | ENABLE_CROSSPLAY |
启用跨平台支持 | 0 |
boolean
布尔
|
||
| [系统] 过滤器 | FILTER |
/^\(Filename:.*Line:[[:space:]]+[[:digit:]]+\)$/d; /^([[:space:]]+)?$/d |
string
字符串
|
|||
| [V+] Github 包 | GITHUB_PACKAGE |
Grantapher/ValheimPlus |
required|string|max:40
必填 字符串 最大 40
|
|||
| [系统] LD 库路径 | LD_LIBRARY_PATH |
加载服务器库所必需的。 | ./linux64 |
required|string
必填 字符串
|
||
| [V+] 匹配 | MATCH |
UnixServer.zip |
required|string|max:20
必填 字符串 最大 20
|
|||
| 服务器密码 | PASSWORD |
服务器密码。 | secret |
required|string|min:5|max:20
必填 字符串 最大 20 最小 5
|
||
| 公共服务器 | PUBLIC_SERVER |
服务器的公开可见性。设置为false可使服务器不可见,仅能通过“加入IP”按钮加入。 | 1 |
boolean
布尔
|
||
| 服务器名称 | SERVER_NAME |
服务器浏览器中显示的名称。 | My Server |
required|string|max:60
必填 字符串 最大 60
|
||
| [系统] Steam 应用ID | SRCDS_APPID |
瓦尔海姆自动更新的Steam应用ID。 | 896660 |
nullable|numeric
可选 数字
|
||
| Beta 分支 | SRCDS_BETAID |
|
max:30
最大 30
|
|||
| Beta 密码 | SRCDS_BETAPASS |
|
max:30
最大 30
|
|||
| [V+] 版本 | VERSION |
latest |
required|string|max:20
必填 字符串 最大 20
|
|||
| 世界名称 | WORLD |
在多个已保存的世界之间切换时加载的名称。 | Dedicated |
required|string|max:20
必填 字符串 最大 20
|
镜像
registry.cn-shanghai.aliyuncs.com/pterodactyl-images/installers:debian
入口
bash
#!/bin/bash
# steamcmd Base Installation Script
clear
RED='\033[0;31m'
GREEN='\033[0;32m'
YELLOW='\033[1;33m'
BLUE='\033[0;34m'
NC='\033[0m'
echo -e "${BLUE}-------------------------------------------------${NC}"
echo -e "${YELLOW}Valheim+ Installscript${NC}"
echo -e "${BLUE}-------------------------------------------------${NC}"
# Install packages. Default packages below are not required if using our existing install image thus speeding up the install process.
apt -y update
apt -y --no-install-recommends install curl lib32gcc-s1 ca-certificates jq wget
## just in case someone removed the defaults.
if [[ "${STEAM_USER}" == "" ]] || [[ "${STEAM_PASS}" == "" ]]; then
echo -e "steam user is not set.
"
echo -e "Using anonymous user.
"
STEAM_USER=anonymous
STEAM_PASS=""
STEAM_AUTH=""
else
echo -e "user set to ${STEAM_USER}"
fi
echo -e "${BLUE}-------------------------------------------------${NC}"
echo -e "${YELLOW}download and install steamcmd${NC}"
echo -e "${BLUE}-------------------------------------------------${NC}"
## download and install steamcmd
cd /tmp
mkdir -p /mnt/server/steamcmd
curl -sSL -o steamcmd.tar.gz https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz
tar -xzvf steamcmd.tar.gz -C /mnt/server/steamcmd
mkdir -p /mnt/server/steamapps # Fix steamcmd disk write error when this folder is missing
cd /mnt/server/steamcmd
# SteamCMD fails otherwise for some reason, even running as root.
# This is changed at the end of the install process anyways.
chown -R root:root /mnt
export HOME=/mnt/server
echo -e "${GREEN}...done${NC}"
echo -e "${BLUE}-------------------------------------------------${NC}"
echo -e "${YELLOW}install Valheim with SteamCMD${NC}"
echo -e "${BLUE}-------------------------------------------------${NC}"
## install game using steamcmd
./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
## set up 32 bit libraries
mkdir -p /mnt/server/.steam/sdk32
cp -v linux32/steamclient.so ../.steam/sdk32/steamclient.so
## set up 64 bit libraries
mkdir -p /mnt/server/.steam/sdk64
cp -v linux64/steamclient.so ../.steam/sdk64/steamclient.so
echo -e "${GREEN}...done${NC}"
echo -e "${BLUE}-------------------------------------------------${NC}"
echo -e "${YELLOW}downloading V+ from Github${NC}"
echo -e "${BLUE}-------------------------------------------------${NC}"
## get release info and download links
LATEST_JSON=$(curl --silent "https://api.github.com/repos/${GITHUB_PACKAGE}/releases/latest")
RELEASES=$(curl --silent "https://api.github.com/repos/${GITHUB_PACKAGE}/releases")
if [ -z "${VERSION}" ] || [ "${VERSION}" == "latest" ]; then
DOWNLOAD_LINK=$(echo ${LATEST_JSON} | jq .assets | jq -r .[].browser_download_url | grep -i ${MATCH})
else
VERSION_CHECK=$(echo ${RELEASES} | jq -r --arg VERSION "${VERSION}" '.[] | select(.tag_name==$VERSION) | .tag_name')
if [ "${VERSION}" == "${VERSION_CHECK}" ]; then
DOWNLOAD_LINK=$(echo ${RELEASES} | jq -r --arg VERSION "${VERSION}" '.[] | select(.tag_name==$VERSION) | .assets[].browser_download_url' | grep -i ${MATCH})
else
echo -e "defaulting to latest release"
DOWNLOAD_LINK=$(echo ${LATEST_JSON} | jq .assets | jq -r .[].browser_download_url)
fi
fi
cd /mnt/server
wget -N $DOWNLOAD_LINK
unzip -o $MATCH
rm -fR $MATCH
echo -e "${GREEN}...done${NC}"
echo -e "${BLUE}-------------------------------------------------${NC}"
echo -e "${GREEN}Installation completed${NC}"
echo -e "${BLUE}-------------------------------------------------${NC}"
{
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
"meta": {
"version": "PTDL_v2",
"update_url": "https://eggs.pterodactyl.top/eggs/135/download/egg-valheim-plus-mod.json"
},
"exported_at": "2026-01-03T15:23:08+00:00",
"name": "Valheim Plus Mod",
"author": "eggs@goover.dev",
"description": "一款残酷的探索与生存游戏,支持1-10名玩家,设定在一个受维京文化启发的程序生成炼狱中。",
"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_ENABLE=TRUE; export DOORSTOP_INVOKE_DLL_PATH=./BepInEx/core/BepInEx.Preloader.dll; export DOORSTOP_CORLIB_OVERRIDE_PATH=./unstripped_corlib; export LD_LIBRARY_PATH=\"./doorstop_libs:$LD_LIBRARY_PATH\"; export LD_PRELOAD=\"libdoorstop_x64.so:$LD_PRELOAD\"; export templdpath=$LD_LIBRARY_PATH; export LD_LIBRARY_PATH=\"./linux64:$LD_LIBRARY_PATH\"; export SteamAppId=892970; export LD_LIBRARY_PATH=$templdpath; ./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\": \"DungeonDB Start\"\n}",
"logs": "{}",
"stop": "^C"
},
"scripts": {
"installation": {
"script": "#!/bin/bash\r\n# steamcmd Base Installation Script\r\n\r\nclear\r\nRED='\\033[0;31m'\r\nGREEN='\\033[0;32m'\r\nYELLOW='\\033[1;33m'\r\nBLUE='\\033[0;34m'\r\nNC='\\033[0m'\r\necho -e \"${BLUE}-------------------------------------------------${NC}\"\r\necho -e \"${YELLOW}Valheim+ Installscript${NC}\"\r\necho -e \"${BLUE}-------------------------------------------------${NC}\"\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\napt -y update\r\napt -y --no-install-recommends install curl lib32gcc-s1 ca-certificates jq wget\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\necho -e \"${BLUE}-------------------------------------------------${NC}\"\r\necho -e \"${YELLOW}download and install steamcmd${NC}\"\r\necho -e \"${BLUE}-------------------------------------------------${NC}\"\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\necho -e \"${GREEN}...done${NC}\"\r\n\r\necho -e \"${BLUE}-------------------------------------------------${NC}\"\r\necho -e \"${YELLOW}install Valheim with SteamCMD${NC}\"\r\necho -e \"${BLUE}-------------------------------------------------${NC}\"\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\necho -e \"${GREEN}...done${NC}\"\r\n\r\necho -e \"${BLUE}-------------------------------------------------${NC}\"\r\necho -e \"${YELLOW}downloading V+ from Github${NC}\"\r\necho -e \"${BLUE}-------------------------------------------------${NC}\"\r\n\r\n## get release info and download links\r\nLATEST_JSON=$(curl --silent \"https://api.github.com/repos/${GITHUB_PACKAGE}/releases/latest\")\r\nRELEASES=$(curl --silent \"https://api.github.com/repos/${GITHUB_PACKAGE}/releases\")\r\n\r\nif [ -z \"${VERSION}\" ] || [ \"${VERSION}\" == \"latest\" ]; then\r\n DOWNLOAD_LINK=$(echo ${LATEST_JSON} | jq .assets | jq -r .[].browser_download_url | grep -i ${MATCH})\r\nelse\r\n VERSION_CHECK=$(echo ${RELEASES} | jq -r --arg VERSION \"${VERSION}\" '.[] | select(.tag_name==$VERSION) | .tag_name')\r\n if [ \"${VERSION}\" == \"${VERSION_CHECK}\" ]; then\r\n DOWNLOAD_LINK=$(echo ${RELEASES} | jq -r --arg VERSION \"${VERSION}\" '.[] | select(.tag_name==$VERSION) | .assets[].browser_download_url' | grep -i ${MATCH})\r\n else\r\n echo -e \"defaulting to latest release\"\r\n DOWNLOAD_LINK=$(echo ${LATEST_JSON} | jq .assets | jq -r .[].browser_download_url)\r\n fi\r\nfi\r\n\r\ncd /mnt/server\r\nwget -N $DOWNLOAD_LINK\r\nunzip -o $MATCH\r\nrm -fR $MATCH\r\necho -e \"${GREEN}...done${NC}\"\r\n\r\necho -e \"${BLUE}-------------------------------------------------${NC}\"\r\necho -e \"${GREEN}Installation completed${NC}\"\r\necho -e \"${BLUE}-------------------------------------------------${NC}\"",
"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": "[系统] 控制台过滤器",
"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": "[系统] 过滤器",
"description": "",
"env_variable": "FILTER",
"default_value": "/^\\(Filename:.*Line:[[:space:]]+[[:digit:]]+\\)$/d; /^([[:space:]]+)?$/d",
"user_viewable": false,
"user_editable": false,
"rules": "string",
"field_type": "text"
},
{
"name": "[V+] Github 包",
"description": "",
"env_variable": "GITHUB_PACKAGE",
"default_value": "Grantapher/ValheimPlus",
"user_viewable": false,
"user_editable": false,
"rules": "required|string|max:40",
"field_type": "text"
},
{
"name": "[系统] LD 库路径",
"description": "加载服务器库所必需的。",
"env_variable": "LD_LIBRARY_PATH",
"default_value": "./linux64",
"user_viewable": false,
"user_editable": false,
"rules": "required|string",
"field_type": "text"
},
{
"name": "[V+] 匹配",
"description": "",
"env_variable": "MATCH",
"default_value": "UnixServer.zip",
"user_viewable": false,
"user_editable": false,
"rules": "required|string|max:20",
"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": "服务器的公开可见性。设置为false可使服务器不可见,仅能通过“加入IP”按钮加入。",
"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": "[系统] Steam 应用ID",
"description": "瓦尔海姆自动更新的Steam应用ID。",
"env_variable": "SRCDS_APPID",
"default_value": "896660",
"user_viewable": true,
"user_editable": false,
"rules": "nullable|numeric",
"field_type": "text"
},
{
"name": "Beta 分支",
"description": "",
"env_variable": "SRCDS_BETAID",
"default_value": "",
"user_viewable": true,
"user_editable": true,
"rules": "max:30",
"field_type": "text"
},
{
"name": "Beta 密码",
"description": "",
"env_variable": "SRCDS_BETAPASS",
"default_value": "",
"user_viewable": true,
"user_editable": true,
"rules": "max:30",
"field_type": "text"
},
{
"name": "[V+] 版本",
"description": "",
"env_variable": "VERSION",
"default_value": "latest",
"user_viewable": false,
"user_editable": false,
"rules": "required|string|max:20",
"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"
}
]
}附属文件
暂无附属文件
提交历史
Fork 关系
查看关系图暂无 Fork,成为第一个 Fork 的人吧!
统计
15
浏览
1
下载
0
星标
0
复刻
作者
飒
飒爽师叔
UID: 1
279 预设
·
2026-06