Venice Unleashed (VU) 是一个面向社区的《战地3》自定义服务器与模组平台,让您重新掌控自己的游戏体验。此 Egg 需要有效的 VU `server.key` 文件,并且需要将《战地3》客户端文件(来自游戏的合法副本)内部挂载到 `/bf3`。
预设配置详情
Venice Unleashed
作者 / 贡献者
<!-- prettier-ignore-start -->
<!-- markdownlint-disable -->
<table>
<tr>
<td align="center">
<a href="https://github.com/redthirten">
<img src="https://avatars.githubusercontent.com/u/4533989" width="50px;" alt=""/><br /><sub><b>Red-Thirten</b></sub>
</a>
<br />
<a href="https://github.com/pelican-eggs/games-standalone/commits?author=redthirten" title="代码">💻</a>
<a href="https://github.com/pelican-eggs/games-standalone/commits?author=redthirten" title="维护">🔨</a>
</td>
</tr>
</table>
<!-- markdownlint-enable -->
<!-- prettier-ignore-end -->
游戏描述
来自 Venice Unleashed 官方网站:
Venice Unleashed (VU) 是一个面向社区的《战地3》自定义服务器和模改平台,让您重新掌控游戏体验。
安装/系统要求
[!IMPORTANT]
此 Egg 需要使用面板的 Mounts 系统,将一份 合法 的《战地3》客户端文件挂载到服务器中。这样可以减少为每个服务器实例单独存储一份 BF3 副本的需求。具体说明请参见 服务器设置。
| 最低要求 | 推荐配置 | |
|---|---|---|
| 处理器 | 双核 x86 @ 3GHz 或更高 | 更看重单核性能而非多核,因为可执行文件限制为单线程。 |
| 内存 | 1024 MiB | 4096 MiB(VU 作为 32 位应用,永远不会使用超过 4 GiB) |
| 存储 | 每个服务器 1536 MiB,主机节点约需 35 GiB 用于存放一份用于挂载的 BF3 客户端文件。 | 如果使用大量模组可能需要更多。 |
| 网络 | 5 Mbit/s | 30 Mbit/s |
| 主机操作系统 | 大多数稳定的 Linux 发行版均可使用。 | 使用已安装操作系统的最新内核版本可避免一些边缘情况的安装/启动问题。 |
| 游戏所有权 | 与 EA 账户关联的《战地3》原版(仅原版地图/武器可用)(如果已关联,Steam 版本也可)。 | 与 EA 账户关联的《战地3》高级版(所有 DLC 地图/武器均可使用)(如果已关联,Steam 版本也可)。 |
| 账户/密钥 | 需要注册 Venice Unleashed 账户并关联至 EA/Origin 账户。此外,还需从 Venice Unleashed 密钥管理门户 生成并下载服务器密钥。 | --- |
[!WARNING]
如果您希望服务器同时对公网 和 局域网 可访问,且您的服务器与局域网客户端位于不同子网(例如 VLAN 环境),则必须拥有一个指向您公网 IP 的域名。详见 加入服务器。
服务器端口
| 端口 | 默认值 | 协议 | 必需 |
|---|---|---|---|
| Frostbite 网络层(主端口) | 25200 | UDP | 是 |
| 受监控的 Harmony,即 VU 网络层 | 7948 | UDP | 是 |
| RCON | 47200 | TCP | 否 |
服务器设置
建议按以下顺序执行步骤:
1. 获取您的 EA 认证令牌
托管 VU 服务器需要使用您的 EA 登录令牌进行授权,以证明您拥有合法的 BF3 副本。获取该令牌最简单的方法是:
- 在您的个人电脑上安装并启动 EA App。
- 安装 VU 客户端。
- 在 Windows 开始菜单中搜索“Activate BF3”快捷方式(由 VU 添加;如果快捷方式丢失,请参阅 文档 中替代方法)。
- 运行该快捷方式,并复制它提供的长令牌值。
- 将该令牌粘贴到服务器的“EA Auth Token”启动变量中。
[!NOTE]
令牌大约每周会过期一次,导致服务器启动时崩溃。如果发生这种情况,只需按照上述步骤重新生成新令牌即可。
不幸的是,由于 VU 和 EA 的限制,目前无法在服务器端自动检测令牌是否过期或重新生成新令牌。如果服务器定期重启(例如按计划重启),则偶尔需要手动更新令牌。
[!CAUTION]
EA 认证令牌可用于自由访问对应的 EA 账户,绕过密码和双重验证!此令牌是 Egg 必需的,并以 明文 形式存储为启动变量。请留意相关的安全风险。
2. 设置 BF3 挂载
[!NOTE]
截图来自 Pterodactyl 面板,但 Pelican 的设置应完全相同。
- 确保您已配置一个允许的挂载目录,并且您的 Wings 节点可以访问该目录。可以通过在 Wings 的
config.yml中添加类似以下内容并重启 Wings 来实现:allowed_mounts:
- /var/lib/<pelican\pterodactyl>/mounts
-
在您的个人电脑上下载一份合法的《战地3》副本,并打开其安装位置(例如通过 EA App:
C:\Program Files\EA Games\Battlefield 3)。 -
将此目录(包含
bf3.exe的那个目录)中的所有文件/文件夹复制到您希望托管此 Egg 的任何主机节点上。应将其复制到允许挂载目录中新建的名为bf3的文件夹内(例如/var/lib/<pelican\pterodactyl>/mounts/bf3)。 -
在管理面板中,导航到“Mounts”选项卡,创建一个如下所示的新挂载:

请确保:- 将“Target”设置为
/bf3。 - 将 Venice Unleashed Egg 添加到该挂载中。
- 添加所有您复制了文件的关联节点。
此挂载现在可以用于这些节点上的任何新 VU 服务器。
- 将“Target”设置为
-
在面板上创建一个新的 VU 服务器实例,并且 不要 在安装后自动启动。安装完成后,导航到服务器管理视图的“Mounts”选项卡。将挂载添加到服务器,如下所示:

3. 获取/安装您的 VU server.key 文件
- 从 Venice Unleashed 密钥管理门户 获取并下载密钥文件。
- 将该文件上传到您的 VU 服务器实例的
~/vu/instance/server.key路径。
4. 使用 EA 认证服务器
启动服务器。假设您正确执行了步骤 1-3,服务器应在首次启动时自动向 EA 进行认证。
如果认证成功,服务器应正常启动!😃
[!NOTE]
服务器可能需要一些时间才能启动,因为它需要连接到 Zeus 后端以进行服务器列表注册。
加入服务器
大多数情况下,加入服务器就像在服务器列表中找到它并点击连接一样简单。
但是,如果您从不同子网连接到局域网中的服务器,服务器浏览器将尝试让您连接到您的公网 IP 地址,这将无法工作。不幸的是,VU 不支持直接连接 IP 地址;您必须通过其后端使用服务器的 GUID 进行连接。以下是此问题的解决方法:
- 配置“[Host] Join Host”启动变量。您设置的域名将是 VU 服务器列表提供给客户端的连接地址。如果只需要局域网连接,可以使用像
myvuserver.com这样的假域名。 - 执行以下操作之 一:
- 在客户端机器上配置 hosts 文件,将您设置的域名重定向到服务器的本地 IP。
- 配置路由器的 DNS 解析器,将您设置的域名重定向到服务器的本地 IP。
控制台命令
不幸的是,由于服务器可执行文件必须通过 Wine 运行,通过面板输入命令无效。
相反,建议使用 Procon 并通过 RCON 端口连接。原版 BF3 命令可在此处找到 这里,VU 特定命令可在此处找到 这里。
[!WARNING]
Procon 是为原版 BF3 服务器编写的,而非 VU。因此,其某些功能/设置(主要是 Punkbuster 设置/操作(因为它已被禁用)和预留位)不适用于 VU。
已知错误/警告
您在控制台中看到的以下错误可以安全忽略(内存地址可能不同):
wine: Unhandled page fault on read access to 000000B8 at address 1000653A (thread 01e8), starting debugger...
registry.cn-shanghai.aliyuncs.com/pterodactyl-images/yolks:wine_latest
registry.cn-shanghai.aliyuncs.com/pterodactyl-images/yolks:wine_staging
[ -f /bf3/bf3.exe ] || { echo "BF3 is not mounted properly! Exiting."; exit 1; }; [ -f ./vu/instance/server.key ] || { echo "Missing 'vu/instance/server.key'! Exiting."; exit 1; }; tok="$LIC_PATH"/token.txt; [ "$(cat "$tok" 2>/dev/null)" != "$EA_TOKEN" ] && { rm -f "$LIC_PATH"/*.dlf; echo "$EA_TOKEN" > "$tok"; }; if ! compgen -G "$LIC_PATH"/*.dlf >/dev/null; then wine ./vu/client/vu.com -gamepath /bf3 -activate -ea_token "$EA_TOKEN"; fi; wine ./vu/client/vu.com -gamepath /bf3 -serverInstancePath "$(winepath -w ~/vu/instance)" -server -dedicated -headless $( [ {{AUTO_UPDATE}} = 0 ] && echo -noUpdate ) -{{SERVER_FREQUENCY}} -maxPlayers {{MAX_PLAYERS}} -listen 0.0.0.0:{{SERVER_PORT}} -mHarmonyPort {{HARMONY_PORT}} ${RCON_PORT:+-RemoteAdminPort 0.0.0.0:{{RCON_PORT}}} ${JOIN_HOST:+-joinhost {{JOIN_HOST}}} $( [ {{UNLISTED}} = 1 ] && echo -unlisted ) $( [ {{HIGH_RES_TERRAIN}} = 1 ] && echo -highResTerrain ) $( [ {{DISABLE_TERRAIN_INTERP}} = 1 ] && echo -disableTerrainInterp ) $( [ {{SKIP_CHECKSUM}} = 1 ] && echo -skipChecksum )
| 变量名 | 变量 | 描述 | 默认值 | 规则 | 可查看 | 可编辑 |
|---|---|---|---|---|---|---|
| [主机] Harmony 端口 | HARMONY_PORT |
VU服务器应监听Monitored Harmony连接所需的端口。 | |
required|integer|between:1024,65536
必填 整数 介于 1024-65536 之间
|
||
| [主机] 加入主机 | JOIN_HOST |
指定客户端用于连接此服务器的主机名(由 Zeus 主服务器公告)。对于使用 DDNS 的主机,以及通过 DNS 重定向连接的局域网客户端(本地连接的唯一方式)非常有用。主机名不应包含 "http[s]://" 前缀。留空则使用公网 IP。 | |
nullable|string
可选 字符串
|
||
| EA认证令牌 | EA_TOKEN |
可以在满足以下条件的本地 Windows 计算机上获取:已安装并运行 EA App / Origin,已安装 BF3,已安装 VU,并且 VU 账户已关联 EA/Origin 账户。运行开始菜单中的“Activate BF3”快捷方式,或在命令提示符(当前工作目录必须为 VU 客户端文件夹)中运行 `vu.exe -activate -lsx`。复制显示的令牌并粘贴到此位置。注意:此令牌偶尔会过期,导致服务器启动时崩溃。如果发生这种情况,只需重新生成一个新令牌并粘贴至此即可。 | |
required|string
必填 字符串
|
||
| 自动更新 | AUTO_UPDATE |
启用VU自动更新器。(请谨慎使用;有报告称,如果有更新,这有时会导致服务器在启动时崩溃) | 1 |
boolean
布尔
|
||
| 服务器名称 | SERVER_NAME |
服务器的名称,它将出现在主服务器列表中。 | My incredible VU server |
required|string|max:63
必填 字符串 最大 63
|
||
| 服务器密码 | SERVER_PASSWORD |
客户端加入服务器时必须输入的密码。留空则无密码。 | |
nullable|string|max:16
可选 字符串 最大 16
|
||
| 最大玩家数 | MAX_PLAYERS |
设置允许的最大玩家数,该数值由 vars.maxPlayers 与 vars.maxSpectators 共同设定。 | 64 |
required|integer|min:1
必填 整数 最小 1
|
||
| 服务器频率 | SERVER_FREQUENCY |
30' = 30Hz(默认) | 'high60' = 60Hz 高频模式 | 'high120' = 120Hz 高频模式 | 30 |
required|string|in:30,high60,high120
必填 字符串 选项: 30,high60,high120
|
||
| [RCON] RCON 端口 | RCON_PORT |
可选端口,用于通过RCON连接到服务器(推荐客户端为Procon)。留空以禁用RCON。 | |
nullable|integer|between:1024,65536
可选 整数 介于 1024-65536 之间
|
||
| [RCON] RCON 密码 | RCON_PASSWORD |
用于RCON身份验证的密码。(连接客户端时无需用户名,可留空)。 | |
nullable|string|max:16
可选 字符串 最大 16
|
||
| [高级] 禁用服务器列表 | UNLISTED |
使服务器不在主服务器列表中显示。未列出的服务器只能通过 `connect` 控制台命令或 `vu://join/server-id` URL方案加入,该方案也可以作为启动参数添加到 vu.exe 中,以便在客户端加载后立即自动加入。 | 0 |
boolean
布尔
|
||
| [高级] 启用高分辨率地形 | HIGH_RES_TERRAIN |
用于将地图扩展到其原始游戏区域之外。 | 0 |
boolean
布尔
|
||
| [高级] 禁用地形插值 | DISABLE_TERRAIN_INTERP |
禁用不同地形LOD之间的插值。 | 0 |
boolean
布尔
|
||
| [高级] 跳过校验和 | SKIP_CHECKSUM |
禁用客户端连接时的世界校验和验证。 | 0 |
boolean
布尔
|
||
| [系统] VU 服务器下载 URL | DOWNLOAD_URL |
VU提供的用于下载压缩服务器文件的官方URL。(除非你知道自己在做什么,否则不应更改。) | https://veniceunleashed.net/files/vu.zip |
required|string
必填 字符串
|
||
| [系统] EA 许可证路径 | LIC_PATH |
存储用于VU服务器激活的EA `.dlf`许可证文件的路径。不应更改。 | ./.wine/drive_c/ProgramData/Electronic Arts/EA Services/License |
required|string|in:./.wine/drive_c/ProgramData/Electronic Arts/EA Services/License
必填 字符串 选项: ./.wine/drive_c/ProgramData/Electronic Arts/EA Services/License
|
||
| [系统] WINEDEBUG | WINEDEBUG |
设置 Wine 调试级别。很少需要更改。 | -all |
nullable|string
可选 字符串
|
||
| [系统] WINETRICKS_RUN | WINETRICKS_RUN |
通过 winetricks 安装所需的 Visual C++ 2008 运行时。不应更改。 | vcrun2008 |
required|string|in:vcrun2008
必填 字符串 选项: vcrun2008
|
||
| [系统] WINEARCH | WINEARCH |
设置Wine前缀以使用WoW64(Windows 64位上的Windows 32位),这是VU所必需的。不应更改。 | wow64 |
required|string|in:wow64
必填 字符串 选项: wow64
|
registry.cn-shanghai.aliyuncs.com/pterodactyl-images/installers:debian
/bin/bash
#!/bin/bash
# File: Pterodactyl Venice Unleashed Egg - egg-pterodactyl-venice-unleashed.json
# Authors: Red-Thirten
# Date: 2026/05/08
# License: MIT License
export HOME=/mnt/server
[ ! -d $HOME ] && mkdir $HOME
cd $HOME
# Remove old installation if present (except for VU instance folder to keep configs)
[ -d .cache ] && rm -rf .cache
[ -d .config ] && rm -rf .config
[ -d .local ] && rm -rf .local
[ -d .wine ] && rm -rf .wine
[ -f .wget-hsts ] && rm .wget-hsts
[ -d vu/client ] && rm -rf vu/client
# Make VU required directories
mkdir -p vu/{client,instance}
mkdir -p "${LIC_PATH}"
# Validate VU download URL
if ! curl --silent --head --fail ${DOWNLOAD_URL} > /dev/null; then
echo -e "
The VU Server Download URL is unreachable: ${DOWNLOAD_URL}
"
exit 1
fi
# Download, unzip, and verify VU server files
cd $HOME/vu/client
echo -e "Downloading VU server files..."
curl -L ${DOWNLOAD_URL} -o ${DOWNLOAD_URL##*/}
echo -e "Unzipping VU server files..."
unzip ${DOWNLOAD_URL##*/}
if [ ! -f vu.com ]; then
echo -e "
Failed to download/install VU server files from: ${DOWNLOAD_URL}
"
exit 1
else
rm ${DOWNLOAD_URL##*/}
fi
# Create default config files if they are missing
cd $HOME/vu/instance
mkdir -p Admin/Mods
cd Admin
[ ! -f BanList.txt ] && touch BanList.txt
[ ! -f ModList.txt ] && touch ModList.txt
if [[ ! -f MapList.txt ]]; then
cat > MapList.txt <<EOF
# -------------------------------------------------------------------------------------------------------------------------
# This file defines the map rotation of the server. This means that it tells the server which map to load first and
# on which gamemode, how many rounds to run, and what's the next map to load once the game ends.
#
# Every map is specified in a new line in the following format:
# MapID GamemodeID Rounds
#
# Full list of the map and gamemode IDs:
# https://docs.veniceunleashed.net/hosting/maps
# -------------------------------------------------------------------------------------------------------------------------
MP_Subway ConquestLarge0 1
MP_013 TeamDeathMatch0 1
EOF
fi
if [[ ! -f Startup.txt ]]; then
cat > Startup.txt <<EOF
# -------------------------------------------------------------------------------------------------------------------------
# This file is used to configure to the server upon startup. This is done by using specific configuration variables
# followed by a relevant value. Each variable is specified in a new line.
#
# Full list of configuration variables and commands:
# https://docs.veniceunleashed.net/hosting/commands
# https://github.com/dcodeIO/BattleCon/blob/master/eadocs/BF3/BF3%20PC%20Server%20Remote%20Administration%20Protocol.pdf
# -------------------------------------------------------------------------------------------------------------------------
# These variables are managed by the panel. Do not change or remove them!
admin.password "${RCON_PASSWORD}"
vars.serverName "${SERVER_NAME}"
vars.gamePassword "${SERVER_PASSWORD}"
# Add additional variables below if desired
EOF
fi
echo -e "
VU Successfully Installed!"
{
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
"meta": {
"version": "PTDL_v2",
"update_url": "https://eggs.pterodactyl.top/eggs/257/download/egg-venice-unleashed.json"
},
"exported_at": "2026-05-09T05:07:31+00:00",
"name": "Venice Unleashed",
"author": "red_thirten@yahoo.com",
"description": "Venice Unleashed (VU) 是一个面向社区的《战地3》自定义服务器与模组平台,让您重新掌控自己的游戏体验。此 Egg 需要有效的 VU `server.key` 文件,并且需要将《战地3》客户端文件(来自游戏的合法副本)内部挂载到 `/bf3`。",
"features": [],
"docker_images": {
"Wine Latest (Recommended)": "registry.cn-shanghai.aliyuncs.com/pterodactyl-images/yolks:wine_latest",
"Wine Staging": "registry.cn-shanghai.aliyuncs.com/pterodactyl-images/yolks:wine_staging"
},
"file_denylist": [],
"startup": "[ -f /bf3/bf3.exe ] || { echo \"BF3 is not mounted properly! Exiting.\"; exit 1; }; [ -f ./vu/instance/server.key ] || { echo \"Missing 'vu/instance/server.key'! Exiting.\"; exit 1; }; tok=\"$LIC_PATH\"/token.txt; [ \"$(cat \"$tok\" 2>/dev/null)\" != \"$EA_TOKEN\" ] && { rm -f \"$LIC_PATH\"/*.dlf; echo \"$EA_TOKEN\" > \"$tok\"; }; if ! compgen -G \"$LIC_PATH\"/*.dlf >/dev/null; then wine ./vu/client/vu.com -gamepath /bf3 -activate -ea_token \"$EA_TOKEN\"; fi; wine ./vu/client/vu.com -gamepath /bf3 -serverInstancePath \"$(winepath -w ~/vu/instance)\" -server -dedicated -headless $( [ {{AUTO_UPDATE}} = 0 ] && echo -noUpdate ) -{{SERVER_FREQUENCY}} -maxPlayers {{MAX_PLAYERS}} -listen 0.0.0.0:{{SERVER_PORT}} -mHarmonyPort {{HARMONY_PORT}} ${RCON_PORT:+-RemoteAdminPort 0.0.0.0:{{RCON_PORT}}} ${JOIN_HOST:+-joinhost {{JOIN_HOST}}} $( [ {{UNLISTED}} = 1 ] && echo -unlisted ) $( [ {{HIGH_RES_TERRAIN}} = 1 ] && echo -highResTerrain ) $( [ {{DISABLE_TERRAIN_INTERP}} = 1 ] && echo -disableTerrainInterp ) $( [ {{SKIP_CHECKSUM}} = 1 ] && echo -skipChecksum )",
"config": {
"files": "{\n \"vu/instance/Admin/Startup.txt\": {\n \"parser\": \"file\",\n \"find\": {\n \"admin.password\": \"admin.password \\\"{{server.build.env.RCON_PASSWORD}}\\\"\",\n \"vars.serverName\": \"vars.serverName \\\"{{server.build.env.SERVER_NAME}}\\\"\",\n \"vars.gamePassword\": \"vars.gamePassword \\\"{{server.build.env.SERVER_PASSWORD}}\\\"\"\n }\n }\n}",
"startup": "{\n \"_comment\": \"'now accepting connections' with required Wine control characters\",\n \"done\": \"n\\u001b[?25h\\u001b[?25lo\\u001b[?25h\\u001b[?25lw\\u001b[?25h\\u001b[?25l\\u001b[K\\u001b[1C\\u001b[?25h\\u001b[?25la\\u001b[?25h\\u001b[?25lc\\u001b[?25h\\u001b[?25lc\\u001b[?25h\\u001b[?25le\\u001b[?25h\\u001b[?25lp\\u001b[?25h\\u001b[?25lt\\u001b[?25h\\u001b[?25li\\u001b[?25h\\u001b[?25ln\\u001b[?25h\\u001b[?25lg\\u001b[?25h\\u001b[?25l\\u001b[K\\u001b[1C\\u001b[?25h\\u001b[?25lc\\u001b[?25h\\u001b[?25lo\\u001b[?25h\\u001b[?25ln\\u001b[?25h\\u001b[?25ln\\u001b[?25h\\u001b[?25le\\u001b[?25h\\u001b[?25lc\\u001b[?25h\\u001b[?25lt\\u001b[?25h\\u001b[?25li\\u001b[?25h\\u001b[?25lo\\u001b[?25h\\u001b[?25ln\\u001b[?25h\\u001b[?25ls\"\n}",
"logs": "{}",
"stop": "^C"
},
"scripts": {
"installation": {
"script": "#!/bin/bash\n\n# File: Pterodactyl Venice Unleashed Egg - egg-pterodactyl-venice-unleashed.json\n# Authors: Red-Thirten\n# Date: 2026/05/08\n# License: MIT License\n\nexport HOME=/mnt/server\n\n[ ! -d $HOME ] && mkdir $HOME\ncd $HOME\n\n# Remove old installation if present (except for VU instance folder to keep configs)\n[ -d .cache ] && rm -rf .cache\n[ -d .config ] && rm -rf .config\n[ -d .local ] && rm -rf .local\n[ -d .wine ] && rm -rf .wine\n[ -f .wget-hsts ] && rm .wget-hsts\n[ -d vu/client ] && rm -rf vu/client\n\n# Make VU required directories\nmkdir -p vu/{client,instance}\nmkdir -p \"${LIC_PATH}\"\n\n# Validate VU download URL\nif ! curl --silent --head --fail ${DOWNLOAD_URL} > /dev/null; then\n echo -e \"\\nThe VU Server Download URL is unreachable: ${DOWNLOAD_URL}\\n\"\n exit 1\nfi\n\n# Download, unzip, and verify VU server files\ncd $HOME/vu/client\necho -e \"Downloading VU server files...\"\ncurl -L ${DOWNLOAD_URL} -o ${DOWNLOAD_URL##*/}\necho -e \"Unzipping VU server files...\"\nunzip ${DOWNLOAD_URL##*/}\nif [ ! -f vu.com ]; then\n echo -e \"\\nFailed to download/install VU server files from: ${DOWNLOAD_URL}\\n\"\n exit 1\nelse\n rm ${DOWNLOAD_URL##*/}\nfi\n\n# Create default config files if they are missing\ncd $HOME/vu/instance\nmkdir -p Admin/Mods\ncd Admin\n[ ! -f BanList.txt ] && touch BanList.txt\n[ ! -f ModList.txt ] && touch ModList.txt\nif [[ ! -f MapList.txt ]]; then\n cat > MapList.txt <<EOF\n# -------------------------------------------------------------------------------------------------------------------------\n# This file defines the map rotation of the server. This means that it tells the server which map to load first and\n# on which gamemode, how many rounds to run, and what's the next map to load once the game ends.\n# \n# Every map is specified in a new line in the following format:\n# MapID GamemodeID Rounds\n# \n# Full list of the map and gamemode IDs:\n# https://docs.veniceunleashed.net/hosting/maps\n# -------------------------------------------------------------------------------------------------------------------------\n\nMP_Subway ConquestLarge0 1\nMP_013 TeamDeathMatch0 1\nEOF\nfi\nif [[ ! -f Startup.txt ]]; then\n cat > Startup.txt <<EOF\n# -------------------------------------------------------------------------------------------------------------------------\n# This file is used to configure to the server upon startup. This is done by using specific configuration variables\n# followed by a relevant value. Each variable is specified in a new line.\n# \n# Full list of configuration variables and commands:\n# https://docs.veniceunleashed.net/hosting/commands\n# https://github.com/dcodeIO/BattleCon/blob/master/eadocs/BF3/BF3%20PC%20Server%20Remote%20Administration%20Protocol.pdf\n# -------------------------------------------------------------------------------------------------------------------------\n\n# These variables are managed by the panel. Do not change or remove them!\nadmin.password \"${RCON_PASSWORD}\"\nvars.serverName \"${SERVER_NAME}\"\nvars.gamePassword \"${SERVER_PASSWORD}\"\n\n# Add additional variables below if desired\n\nEOF\nfi\n\n\necho -e \"\\nVU Successfully Installed!\"",
"container": "registry.cn-shanghai.aliyuncs.com/pterodactyl-images/installers:debian",
"entrypoint": "/bin/bash"
}
},
"variables": [
{
"name": "[主机] Harmony 端口",
"description": "VU服务器应监听Monitored Harmony连接所需的端口。",
"env_variable": "HARMONY_PORT",
"default_value": "",
"user_viewable": true,
"user_editable": false,
"rules": "required|integer|between:1024,65536",
"field_type": "text"
},
{
"name": "[主机] 加入主机",
"description": "指定客户端用于连接此服务器的主机名(由 Zeus 主服务器公告)。对于使用 DDNS 的主机,以及通过 DNS 重定向连接的局域网客户端(本地连接的唯一方式)非常有用。主机名不应包含 \"http[s]://\" 前缀。留空则使用公网 IP。",
"env_variable": "JOIN_HOST",
"default_value": "",
"user_viewable": true,
"user_editable": false,
"rules": "nullable|string",
"field_type": "text"
},
{
"name": "EA认证令牌",
"description": "可以在满足以下条件的本地 Windows 计算机上获取:已安装并运行 EA App / Origin,已安装 BF3,已安装 VU,并且 VU 账户已关联 EA/Origin 账户。运行开始菜单中的“Activate BF3”快捷方式,或在命令提示符(当前工作目录必须为 VU 客户端文件夹)中运行 `vu.exe -activate -lsx`。复制显示的令牌并粘贴到此位置。注意:此令牌偶尔会过期,导致服务器启动时崩溃。如果发生这种情况,只需重新生成一个新令牌并粘贴至此即可。",
"env_variable": "EA_TOKEN",
"default_value": "",
"user_viewable": true,
"user_editable": true,
"rules": "required|string",
"field_type": "text"
},
{
"name": "自动更新",
"description": "启用VU自动更新器。(请谨慎使用;有报告称,如果有更新,这有时会导致服务器在启动时崩溃)",
"env_variable": "AUTO_UPDATE",
"default_value": "1",
"user_viewable": true,
"user_editable": true,
"rules": "boolean",
"field_type": "text"
},
{
"name": "服务器名称",
"description": "服务器的名称,它将出现在主服务器列表中。",
"env_variable": "SERVER_NAME",
"default_value": "My incredible VU server",
"user_viewable": true,
"user_editable": true,
"rules": "required|string|max:63",
"field_type": "text"
},
{
"name": "服务器密码",
"description": "客户端加入服务器时必须输入的密码。留空则无密码。",
"env_variable": "SERVER_PASSWORD",
"default_value": "",
"user_viewable": true,
"user_editable": true,
"rules": "nullable|string|max:16",
"field_type": "text"
},
{
"name": "最大玩家数",
"description": "设置允许的最大玩家数,该数值由 vars.maxPlayers 与 vars.maxSpectators 共同设定。",
"env_variable": "MAX_PLAYERS",
"default_value": "64",
"user_viewable": true,
"user_editable": true,
"rules": "required|integer|min:1",
"field_type": "text"
},
{
"name": "服务器频率",
"description": "30' = 30Hz(默认) | 'high60' = 60Hz 高频模式 | 'high120' = 120Hz 高频模式",
"env_variable": "SERVER_FREQUENCY",
"default_value": "30",
"user_viewable": true,
"user_editable": true,
"rules": "required|string|in:30,high60,high120",
"field_type": "text"
},
{
"name": "[RCON] RCON 端口",
"description": "可选端口,用于通过RCON连接到服务器(推荐客户端为Procon)。留空以禁用RCON。",
"env_variable": "RCON_PORT",
"default_value": "",
"user_viewable": true,
"user_editable": false,
"rules": "nullable|integer|between:1024,65536",
"field_type": "text"
},
{
"name": "[RCON] RCON 密码",
"description": "用于RCON身份验证的密码。(连接客户端时无需用户名,可留空)。",
"env_variable": "RCON_PASSWORD",
"default_value": "",
"user_viewable": true,
"user_editable": true,
"rules": "nullable|string|max:16",
"field_type": "text"
},
{
"name": "[高级] 禁用服务器列表",
"description": "使服务器不在主服务器列表中显示。未列出的服务器只能通过 `connect` 控制台命令或 `vu://join/server-id` URL方案加入,该方案也可以作为启动参数添加到 vu.exe 中,以便在客户端加载后立即自动加入。",
"env_variable": "UNLISTED",
"default_value": "0",
"user_viewable": true,
"user_editable": true,
"rules": "boolean",
"field_type": "text"
},
{
"name": "[高级] 启用高分辨率地形",
"description": "用于将地图扩展到其原始游戏区域之外。",
"env_variable": "HIGH_RES_TERRAIN",
"default_value": "0",
"user_viewable": true,
"user_editable": true,
"rules": "boolean",
"field_type": "text"
},
{
"name": "[高级] 禁用地形插值",
"description": "禁用不同地形LOD之间的插值。",
"env_variable": "DISABLE_TERRAIN_INTERP",
"default_value": "0",
"user_viewable": true,
"user_editable": true,
"rules": "boolean",
"field_type": "text"
},
{
"name": "[高级] 跳过校验和",
"description": "禁用客户端连接时的世界校验和验证。",
"env_variable": "SKIP_CHECKSUM",
"default_value": "0",
"user_viewable": true,
"user_editable": true,
"rules": "boolean",
"field_type": "text"
},
{
"name": "[系统] VU 服务器下载 URL",
"description": "VU提供的用于下载压缩服务器文件的官方URL。(除非你知道自己在做什么,否则不应更改。)",
"env_variable": "DOWNLOAD_URL",
"default_value": "https://veniceunleashed.net/files/vu.zip",
"user_viewable": false,
"user_editable": false,
"rules": "required|string",
"field_type": "text"
},
{
"name": "[系统] EA 许可证路径",
"description": "存储用于VU服务器激活的EA `.dlf`许可证文件的路径。不应更改。",
"env_variable": "LIC_PATH",
"default_value": "./.wine/drive_c/ProgramData/Electronic Arts/EA Services/License",
"user_viewable": false,
"user_editable": false,
"rules": "required|string|in:./.wine/drive_c/ProgramData/Electronic Arts/EA Services/License",
"field_type": "text"
},
{
"name": "[系统] WINEDEBUG",
"description": "设置 Wine 调试级别。很少需要更改。",
"env_variable": "WINEDEBUG",
"default_value": "-all",
"user_viewable": false,
"user_editable": false,
"rules": "nullable|string",
"field_type": "text"
},
{
"name": "[系统] WINETRICKS_RUN",
"description": "通过 winetricks 安装所需的 Visual C++ 2008 运行时。不应更改。",
"env_variable": "WINETRICKS_RUN",
"default_value": "vcrun2008",
"user_viewable": false,
"user_editable": false,
"rules": "required|string|in:vcrun2008",
"field_type": "text"
},
{
"name": "[系统] WINEARCH",
"description": "设置Wine前缀以使用WoW64(Windows 64位上的Windows 32位),这是VU所必需的。不应更改。",
"env_variable": "WINEARCH",
"default_value": "wow64",
"user_viewable": false,
"user_editable": false,
"rules": "required|string|in:wow64",
"field_type": "text"
}
]
}附属文件
暂无附属文件
Fork 关系
查看关系图暂无 Fork,成为第一个 Fork 的人吧!