在这个畅销的《龙与地下城》角色扮演游戏中重返被遗忘的国度。整合了《无冬之夜钻石版》的全部内容,并加入全新增强功能。包含超过100小时获奖冒险内容,以及供你自行创作的工具!
预设配置详情
无冬之夜:增强版
在这款畅销的《龙与地下城》角色扮演游戏中重返被遗忘的国度。整合了无冬之夜钻石版的所有内容,并加入了全新的增强功能。包含100多小时的获奖冒险内容,以及创建属于你自己冒险的工具!
请注意,这是一款非常古老的32位应用程序。文档和支持有限。
[!重要]
由于当前Pterodactyl Wings守护进程存在一个bug(GitHub问题在此),你的Wings守护进程必须配置为使用UID1000来运行此服务器。否则,服务器启动时会崩溃。简而言之:游戏需要当前用户存在,因为它会使用该用户来构建工作目录路径,而默认情况下为容器创建的用户UID为1000。
服务器端口
| 端口 | 默认值 |
|---|---|
| 游戏 | 5121 |
| 脚本调试器 | 5122 |
内容和模块
这是一个不包含任何内容的极简服务器。所有内容必须自行提供。你可以通过购买游戏并将数据复制到服务器上来获取官方模块。你也可以从各种社区网站获取玩家制作的模块,其中最流行的是无冬之夜宝库。
安装官方数据
官方数据可以传输并在服务器上使用,但你必须拥有游戏副本才能获取数据。
- 浏览到你本地安装的游戏目录。
- 将
data/目录打包成归档文件。 - 在Pterodactyl中,进入服务器视图,切换到
文件标签页。 - 将新的
data.zip归档文件上传到服务器。 - 将
data.zip归档文件解压到data/目录中。
官方模块将位于:data/mod/
安装自定义模块
自定义模块是由其他玩家制作并分发使用的模块。它们形式各异、大小不一,可以在互联网上轻松找到。最流行的社区是无冬之夜宝库。
假设你正在使用无冬之夜宝库,找到你想要下载的模块。下载相应的文件,并将它们上传到服务器上的相应目录。所有自定义模块(以及一般自定义数据)都位于 user 目录下。
下表列出了你在自定义模块中可能找到的不同文件类型及其需要放置的目录。某些模块可能有所不同,要求将一些文件放入 override 文件夹。请务必阅读模块描述和任何README文件,以确保文件放置正确。
| 文件类型 | 文件夹 | 用途 |
|---|---|---|
.mod |
user/modules |
模块主文件 |
.hak |
user/hak |
额外游戏资源 |
.tlk |
user/tlk |
对话表(描述、名称等) |
.bic |
user/localvault |
角色文件 |
.wav / .bmu |
user/music |
音乐文件 |
registry.cn-shanghai.aliyuncs.com/pterodactyl-images/yolks:debian
cd bin/linux-x86 && ./nwserver-linux -port $SERVER_PORT -userdirectory '/home/container/user' -servername "${SERVER_NAME}" -module "${MODULE_NAME}" -publicserver "${IS_PUBLIC}" -maxclients "${MAX_CLIENTS}" -minlevel "${MIN_LEVEL}" -maxlevel "${MAX_LEVEL}" -pauseandplay "${PAUSE_AND_PLAY}" -pvp "${PVP}" -servervault "${SERVER_VAULT}" -elc "${ELC}" -ilr "${ILR}" -gametype "${GAME_TYPE}" -oneparty "${ONE_PARTY}" -difficulty "${DIFFICULTY}" -autosaveinterval "${AUTO_SAVE_INTERVAL}" -playerpassword "${PLAYER_PASSWORD}" -dmpassword "${DM_PASSWORD}" -reloadwhenempty "${RELOAD_WHEN_EMPTY}"
| 变量名 | 变量 | 描述 | 默认值 | 规则 | 可查看 | 可编辑 |
|---|---|---|---|---|---|---|
| 游戏版本 | NWN_VERSION |
要安装的游戏版本 | latest |
required|string|max:20
必填 字符串 最大 20
|
||
| 模块名称 | MODULE_NAME |
我们要加载的模块名称。官方模块存储在 `~/data` 中,自定义模块需要存储在 `~/user` 中。必须与文件名完全匹配,不包括扩展名。 | |
required|string
必填 字符串
|
||
| 加载槽位 # | SAVE_SLOT |
启动时加载的存档槽位编号。 | |
nullable|numeric
可选 数字
|
||
| 最大客户端数量 | MAX_CLIENTS |
连接到游戏服务器的最大连接数。 | 96 |
required|numeric|min:1
必填 数字 最小 1
|
||
| 最低等级 | MIN_LEVEL |
访问游戏服务器所需的最低角色等级。 | 1 |
required|numeric
必填 数字
|
||
| 最高等级 | MAX_LEVEL |
访问游戏服务器所需的最大角色等级。 | 100 |
required|numeric
必填 数字
|
||
| 暂停与播放 | PAUSE_AND_PLAY |
切换游戏暂停权限。 0 = 游戏只能由DM暂停 1 = 游戏可以由玩家暂停 | 1 |
required|boolean
必填 布尔
|
||
| PvP模式 | PVP |
PvP模式已启用。 0 = 无 1 = 队伍 2 = 全部 | 2 |
required|numeric|in:0,1,2
必填 数字 选项: 0,1,2
|
||
| 服务器保险库模式 | SERVER_VAULT |
0 = 仅本地角色 1 = 仅服务器角色 | 1 |
required|numeric|in:0,1
必填 数字 选项: 0,1
|
||
| 强制合法字符 | ELC |
切换合法字符的强制执行。 | 1 |
required|boolean
必填 布尔
|
||
| 强制物品等级限制 | ILR |
切换物品等级限制的强制执行。 | 1 |
required|boolean
必填 布尔
|
||
| 游戏类型 | GAME_TYPE |
设置发布游戏的目标游戏房间。这仅适用于公开游戏。 | 0 |
required|numeric
必填 数字
|
||
| 切换单人队伍 | ONE_PARTY |
切换是否允许多个队伍。 | 0 |
required|boolean
必填 布尔
|
||
| 难度 | DIFFICULTY |
游戏难度选择。 1 = 简单 2 = 普通 3 = D&D 硬核 4 = 非常困难 | 3 |
required|numeric|in:1,2,3,4
必填 数字 选项: 1,2,3,4
|
||
| 自动保存间隔 | AUTO_SAVE_INTERVAL |
自动保存间隔(分钟) | 0 |
required|numeric|min:0
必填 数字 最小 0
|
||
| 玩家密码 | PLAYER_PASSWORD |
玩家加入服务器需要密码。 | |
nullable|string
可选 字符串
|
||
| 私信密码 | DM_PASSWORD |
需要密码才能以DM身份加入服务器。 | |
nullable|string
可选 字符串
|
||
| 服务器名称 | SERVER_NAME |
服务器浏览器中显示的服务器名称。 | A Pterodactyl hosted server |
required|string
必填 字符串
|
||
| 是否公开游戏 | IS_PUBLIC |
切换指示是否为公开或私人游戏。 | 0 |
required|boolean
必填 布尔
|
||
| 空时重装 | RELOAD_WHEN_EMPTY |
确定服务器空闲时模块状态是否持久。 | 0 |
required|boolean
必填 布尔
|
registry.cn-shanghai.aliyuncs.com/pterodactyl-images/installers:debian
bash
#!/bin/bash
# Neverwinter Nights Installation Script
#
# Server Files: /mnt/server
# Download the latest version from the Beamdog website
if [ -z "$NWN_VERSION" ] || [ "$NWN_VERSION" == "latest" ]; then
NWN_VERSION=$(curl -L -s 'https://registry.hub.docker.com/v2/repositories/beamdog/nwserver/tags' | jq -r '[."results"[]["name"] | select(test("\\d*\\.\\d*$"))][0]')
fi
cd /mnt/server
curl -o nwnee.zip -L https://nwn.beamdog.net/downloads/nwnee-dedicated-${NWN_VERSION}.zip
unzip -u nwnee.zip -d .
# Run the server once to generate default files and directories
cd bin/linux-x86 && ./nwserver-linux
# Copy generated files into the volume and update relevant paths
mv /root/.local/share/Neverwinter\ Nights /mnt/server/user
sed -i 's/\/root\/.local\/share\/Neverwinter Nights/\/home\/container\/user/g' /mnt/server/user/nwn.ini
sed -i 's/\/root\/.local\/share\/Neverwinter Nights/\/home\/container\/user/g' /mnt/server/user/nwnplayer.ini
sed -i 's/\/root\/.local\/share\/Neverwinter Nights/\/home\/container\/user/g' /mnt/server/user/settings.tml
echo "Installation complete."
{
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PANEL",
"meta": {
"update_url": "https://eggs.pterodactyl.top/eggs/235/download/egg-neverwinter-nights-enhanced-edition.json",
"version": "PTDL_v2"
},
"exported_at": "2024-06-01T00:16:56+00:00",
"name": "Neverwinter Nights: Enhanced Edition",
"author": "git@robsti.dev",
"description": "在这个畅销的《龙与地下城》角色扮演游戏中重返被遗忘的国度。整合了《无冬之夜钻石版》的全部内容,并加入全新增强功能。包含超过100小时获奖冒险内容,以及供你自行创作的工具!",
"features": null,
"docker_images": {
"registry.cn-shanghai.aliyuncs.com/pterodactyl-images/yolks:debian": "registry.cn-shanghai.aliyuncs.com/pterodactyl-images/yolks:debian"
},
"file_denylist": [],
"startup": "cd bin/linux-x86 && ./nwserver-linux -port $SERVER_PORT -userdirectory '/home/container/user' -servername \"${SERVER_NAME}\" -module \"${MODULE_NAME}\" -publicserver \"${IS_PUBLIC}\" -maxclients \"${MAX_CLIENTS}\" -minlevel \"${MIN_LEVEL}\" -maxlevel \"${MAX_LEVEL}\" -pauseandplay \"${PAUSE_AND_PLAY}\" -pvp \"${PVP}\" -servervault \"${SERVER_VAULT}\" -elc \"${ELC}\" -ilr \"${ILR}\" -gametype \"${GAME_TYPE}\" -oneparty \"${ONE_PARTY}\" -difficulty \"${DIFFICULTY}\" -autosaveinterval \"${AUTO_SAVE_INTERVAL}\" -playerpassword \"${PLAYER_PASSWORD}\" -dmpassword \"${DM_PASSWORD}\" -reloadwhenempty \"${RELOAD_WHEN_EMPTY}\"",
"config": {
"files": "{}",
"logs": "{}",
"startup": "{\r\n \"done\": \"Server: Module loaded\"\r\n}",
"stop": "^C"
},
"scripts": {
"installation": {
"container": "registry.cn-shanghai.aliyuncs.com/pterodactyl-images/installers:debian",
"entrypoint": "bash",
"script": "#!/bin/bash\r\n# Neverwinter Nights Installation Script\r\n#\r\n# Server Files: /mnt/server\r\n\r\n# Download the latest version from the Beamdog website\r\nif [ -z \"$NWN_VERSION\" ] || [ \"$NWN_VERSION\" == \"latest\" ]; then\r\n NWN_VERSION=$(curl -L -s 'https://registry.hub.docker.com/v2/repositories/beamdog/nwserver/tags' | jq -r '[.\"results\"[][\"name\"] | select(test(\"\\\\d*\\\\.\\\\d*$\"))][0]')\r\nfi\r\n\r\ncd /mnt/server\r\ncurl -o nwnee.zip -L https://nwn.beamdog.net/downloads/nwnee-dedicated-${NWN_VERSION}.zip\r\nunzip -u nwnee.zip -d .\r\n\r\n# Run the server once to generate default files and directories\r\ncd bin/linux-x86 && ./nwserver-linux\r\n\r\n# Copy generated files into the volume and update relevant paths\r\nmv /root/.local/share/Neverwinter\\ Nights /mnt/server/user\r\nsed -i 's/\\/root\\/.local\\/share\\/Neverwinter Nights/\\/home\\/container\\/user/g' /mnt/server/user/nwn.ini\r\nsed -i 's/\\/root\\/.local\\/share\\/Neverwinter Nights/\\/home\\/container\\/user/g' /mnt/server/user/nwnplayer.ini\r\nsed -i 's/\\/root\\/.local\\/share\\/Neverwinter Nights/\\/home\\/container\\/user/g' /mnt/server/user/settings.tml\r\n\r\necho \"Installation complete.\""
}
},
"variables": [
{
"name": "游戏版本",
"description": "要安装的游戏版本",
"env_variable": "NWN_VERSION",
"default_value": "latest",
"user_viewable": true,
"user_editable": true,
"rules": "required|string|max:20",
"field_type": "text"
},
{
"name": "模块名称",
"description": "我们要加载的模块名称。官方模块存储在 `~/data` 中,自定义模块需要存储在 `~/user` 中。必须与文件名完全匹配,不包括扩展名。",
"env_variable": "MODULE_NAME",
"default_value": "",
"user_viewable": true,
"user_editable": true,
"rules": "required|string",
"field_type": "text"
},
{
"name": "加载槽位 #",
"description": "启动时加载的存档槽位编号。",
"env_variable": "SAVE_SLOT",
"default_value": "",
"user_viewable": true,
"user_editable": true,
"rules": "nullable|numeric",
"field_type": "text"
},
{
"name": "最大客户端数量",
"description": "连接到游戏服务器的最大连接数。",
"env_variable": "MAX_CLIENTS",
"default_value": "96",
"user_viewable": true,
"user_editable": true,
"rules": "required|numeric|min:1",
"field_type": "text"
},
{
"name": "最低等级",
"description": "访问游戏服务器所需的最低角色等级。",
"env_variable": "MIN_LEVEL",
"default_value": "1",
"user_viewable": true,
"user_editable": true,
"rules": "required|numeric",
"field_type": "text"
},
{
"name": "最高等级",
"description": "访问游戏服务器所需的最大角色等级。",
"env_variable": "MAX_LEVEL",
"default_value": "100",
"user_viewable": true,
"user_editable": true,
"rules": "required|numeric",
"field_type": "text"
},
{
"name": "暂停与播放",
"description": "切换游戏暂停权限。 \n0 = 游戏只能由DM暂停 \n1 = 游戏可以由玩家暂停",
"env_variable": "PAUSE_AND_PLAY",
"default_value": "1",
"user_viewable": true,
"user_editable": true,
"rules": "required|boolean",
"field_type": "text"
},
{
"name": "PvP模式",
"description": "PvP模式已启用。 \n0 = 无 \n1 = 队伍 \n2 = 全部",
"env_variable": "PVP",
"default_value": "2",
"user_viewable": true,
"user_editable": true,
"rules": "required|numeric|in:0,1,2",
"field_type": "text"
},
{
"name": "服务器保险库模式",
"description": "0 = 仅本地角色\n1 = 仅服务器角色",
"env_variable": "SERVER_VAULT",
"default_value": "1",
"user_viewable": true,
"user_editable": true,
"rules": "required|numeric|in:0,1",
"field_type": "text"
},
{
"name": "强制合法字符",
"description": "切换合法字符的强制执行。",
"env_variable": "ELC",
"default_value": "1",
"user_viewable": true,
"user_editable": true,
"rules": "required|boolean",
"field_type": "text"
},
{
"name": "强制物品等级限制",
"description": "切换物品等级限制的强制执行。",
"env_variable": "ILR",
"default_value": "1",
"user_viewable": true,
"user_editable": true,
"rules": "required|boolean",
"field_type": "text"
},
{
"name": "游戏类型",
"description": "设置发布游戏的目标游戏房间。这仅适用于公开游戏。",
"env_variable": "GAME_TYPE",
"default_value": "0",
"user_viewable": true,
"user_editable": true,
"rules": "required|numeric",
"field_type": "text"
},
{
"name": "切换单人队伍",
"description": "切换是否允许多个队伍。",
"env_variable": "ONE_PARTY",
"default_value": "0",
"user_viewable": true,
"user_editable": true,
"rules": "required|boolean",
"field_type": "text"
},
{
"name": "难度",
"description": "游戏难度选择。\n1 = 简单\n2 = 普通\n3 = D&D 硬核\n4 = 非常困难",
"env_variable": "DIFFICULTY",
"default_value": "3",
"user_viewable": true,
"user_editable": true,
"rules": "required|numeric|in:1,2,3,4",
"field_type": "text"
},
{
"name": "自动保存间隔",
"description": "自动保存间隔(分钟)",
"env_variable": "AUTO_SAVE_INTERVAL",
"default_value": "0",
"user_viewable": true,
"user_editable": true,
"rules": "required|numeric|min:0",
"field_type": "text"
},
{
"name": "玩家密码",
"description": "玩家加入服务器需要密码。",
"env_variable": "PLAYER_PASSWORD",
"default_value": "",
"user_viewable": true,
"user_editable": true,
"rules": "nullable|string",
"field_type": "text"
},
{
"name": "私信密码",
"description": "需要密码才能以DM身份加入服务器。",
"env_variable": "DM_PASSWORD",
"default_value": "",
"user_viewable": true,
"user_editable": true,
"rules": "nullable|string",
"field_type": "text"
},
{
"name": "服务器名称",
"description": "服务器浏览器中显示的服务器名称。",
"env_variable": "SERVER_NAME",
"default_value": "A Pterodactyl hosted server",
"user_viewable": true,
"user_editable": true,
"rules": "required|string",
"field_type": "text"
},
{
"name": "是否公开游戏",
"description": "切换指示是否为公开或私人游戏。",
"env_variable": "IS_PUBLIC",
"default_value": "0",
"user_viewable": true,
"user_editable": true,
"rules": "required|boolean",
"field_type": "text"
},
{
"name": "空时重装",
"description": "确定服务器空闲时模块状态是否持久。",
"env_variable": "RELOAD_WHEN_EMPTY",
"default_value": "0",
"user_viewable": true,
"user_editable": true,
"rules": "required|boolean",
"field_type": "text"
}
]
}附属文件
暂无附属文件
Fork 关系
查看关系图暂无 Fork,成为第一个 Fork 的人吧!