守护结界

创作者: shudnal
已更新:2023-07-17 12:41:05
305KB

前置 MOD

使用 守护结界 时将自动安装

关于此 MOD

服务器同步的领地访问控制与PvE基地保护:按领地独立设置、允许玩家管理及密码访问、相连领地网络、受保护交互、到期时间、被动保护与献祭。

防护结界

logo

可配置的结界保护、访问控制、基地被动支持、服务端隐私工具、倍率以及《英灵神殿》的主动献祭。

保护结界主要面向公共PvE服务器设计。它有助于防止未经许可的玩家随意使用、拿取、移动或更改其他玩家结界基地内的物品。它并非用于PvP突袭系统。

需求

  • BepInExPack 英灵神殿
  • 约顿 2.29.1 或更新的兼容 2.x 版本
  • YamlDotNet 16.3.0

该模组使用了Jotunn 人人必备模组 网络兼容性。在多人游戏中,必须安装在服务器和每个客户端上。游戏性设置由服务器同步;仅客户端的视觉设置已标记 [未与服务器同步].

功能

  • 每病区范围、视觉设置、访问策略、允许玩家管理、公会绑定及可选密码访问;
  • 可配置保护,适用于容器、门、传送门、站点、载具、驯服生物及其他可交互对象;
  • 已连接病区网络,支持多种访问共享模式;
  • 圆柱形或球形结界覆盖范围;
  • 可选:通过在外入口设置结界,保护地牢内部;
  • 附近没有获准玩家时的离线/后台保护;
  • 未激活守卫过期与废弃规则;
  • 病房建造限制和服务器验证的管理命令;
  • 被动修复和自动关门;
  • 伤害、消耗与生产速度倍率;
  • 当前提供的祭品,包括瓦尔基里通道旅行。

访问模型

  • 直接访问:守卫创建者,直接许可的玩家,绑定公会的成员,有效 允许所有人,或配置管理员绕过。
  • 已连接/有效访问:根据所选连接访问模式,通过重叠的激活守卫继承的访问权限。
  • 所有权豁免:对某些对象有少量例外,即外部结界不应困住玩家自己的财产,例如墓碑、马鞍和先前控制的载具。
  • 允许所有人:复制到每个新病区后,可在其中独立编辑。 每守卫 模式。

敏感操作和控制台命令由服务器验证。服务器在应用更改前会检查请求者身份、目标结界ZDO、访问权限和请求状态。

每病区设置

结界设置 / 结界设置模式 有两个值:

  • 每眼 是默认值。已授权的玩家可以打开设置窗口,每个守护区的存储范围、视觉和访问值将会被应用。
  • 服务器控制 隐藏结界设置操作,阻止UI及其服务器RPC,并使用全局配置值而非结界存储的值。存储的结界值会被保留,并在返回后重新生效 每守卫.

当创建一个守卫区域时,其范围、视觉和访问权限值会从当前的全局配置复制到它的ZDO中。在 每守卫 模式设置后,那些存储的值便相互独立;全局配置更改只影响未来的守卫,不影响现有的。

  1. 禁用结界。
  2. 按下 备用放置 + 使用 (左Shift + E 默认情况下)。
  3. 更改范围、访问设置,或调整光晕、球体和结界圈的控制选项,在 守卫视觉效果 页。
  4. 使用主 访问 添加在线玩家昵称的区域,并打开 允许的玩家 查看或删除已存储条目的页面。
  5. 应用主页面的设置。
配置 含义
守卫设置 / 守卫设置模式 每守卫 启用结界设置界面,并使用每个结界已存储的数值。 服务器控制 隐藏并阻挡界面,并使用全局配置值。
结界设置 / 仅创建者可编辑结界设置 只有创建者可以编辑守护,而非任何有访问权限的玩家。忽略于 服务器控制 模式。
病房设置 / 管理员可以编辑病房设置 已被接受的玩家 结界管理权限,或通过该区的有效 允许所有人 值,可以编辑任何病房。在以下情况中忽略: 服务器控制 模式。

设置界面会显式存储每一个可编辑的值;没有 使用默认值 控制。该 访问设置 页面包含 允许所有人 和 允许的玩家可以切换守卫后者默认关闭,为某个领地启用后,已拥有领地访问权限的玩家可通过常规的“使用”交互来激活或停用它,而不会改变谁可以编辑领地设置。这些按领地设置的访问值在以下情况下会被忽略: 服务器控制 模式。

范围 / 守卫范围限制 定义有效半径的最小值(x)和最大值(y),单位为米,默认值为1和200。与其他服务器配置项一样,该配置由服务器控制并通过Jotunn同步。限制适用于UI输入、服务器端写入、已保存的值、默认半径、连接访问和后台保护。更新限制后会立即刷新已加载的守卫和覆盖缓存。无效的端点将使用其默认值;顺序颠倒的端点将被重新排序。

主要访问部分可以通过精确或唯一匹配的昵称添加在线玩家。 允许的玩家 页面以每页十条的形式显示病房的明确许可名单,并允许授权编辑者移除已存储的条目,即使这些玩家离线。服务器在更改名单之前会重新验证请求者身份、目标病房ZDO和编辑权限。

结界悬浮提示会概括有效权限,避免过长名单占据悬浮内容。当名单合并文本不超过30个字符时显示具体名称;更长名单则替换为玩家数量。活跃公会和密码权限会附加在同一行。有效 允许所有人 仅显示为 允许:所有人.

公会入口

当服务器和客户端上安装了 Guilds 时,并且 结界设置模式 是 每守卫, 访问设置 页面可将一个公会绑定至守卫区。

  • 绑定公会 存储请求者当前公会并启用公会访问权限。
  • 启用公会访问权限 可以暂时禁用或重新启用已存储的绑定。
  • 解除公会绑定 完全解除绑定。
  • 当前公会成员在保持成员身份期间,享有与普通许可同等的访问权限。
  • 公会成员资格会根据当前服务器同步的数据进行检查,并由服务器验证;成员不会被复制到守护区的许可名单中。
  • 公会访问权限是叠加的,不会移除创建者、明确许可、密码或管理员访问权限。

结界同时存储公会ID和名称。重命名公会后需重新绑定结界。

结界密码保护

一个结界可以选择允许未获准的玩家通过输入该结界的密码加入其许可名单。每个结界的密码访问功能默认关闭,直到在该结界的设置中明确启用后才会生效,并且在以下情况下会被忽略: 结界设置模式 是 服务器控制.

  1. 关闭结界并打开其设置,使用 替代放置 + 使用.
  2. 使用 密码保护 在……上组队 访问设置 页。
  3. 设置密码并启用密码访问。
  4. 未获许可的玩家可以靠近激活或未激活的守卫,按下 使用,输入密码,经服务器验证后即可直接加入该病房的许可名单。

输入密码不会获得已连接网络的所有权或管理员权限。它仅将玩家添加到所选病房的普通允许列表中。

配置/数值 默认 含义
结界密码保护 / 密码字段模式 = SetNewPasswordOnly 是 当前密码不会显示。新密码仅在以下情况下更改 设置新密码ZDO 存储的是随机盐和 PBKDF2 哈希,而非可读密码。
病房密码保护 / 密码字段模式 = 可编辑密码 不 显示一个普通密码字段,并将其与结界设置一起保存。为此,可读密码也会存储在结界ZDO中。之前以仅哈希模式创建的密码无法恢复或显示;在被替换之前,它仍然有效。
守护密码保护 / 修改密码权限 = 仅创建者 是 只有结界创建者才能更改或移除密码。已配置的结界管理员以及受该结界有效范围覆盖的玩家 允许所有人 值仍可编辑它。
守护密码保护 / 密码修改权限 = 创建者及授权者 不 创建者及拥有同等直接权限的玩家(包括明确授权的玩家和绑定公会成员)可以更改或移除密码。

密码校验和允许列表更改均在服务器上针对目标领地 ZDO 执行。密码区分大小写,且限制为 64 个字符。仅存储哈希值可防止密码被直接读取,但弱密码仍可能被任何能够查看并复制领地 ZDO 数据的人猜出。

守卫覆盖

配置/数值 含义
结界设置 / 保护区形状 = 圆柱体 默认。使用水平XZ距离,忽略高度。
结界设置 / 保护区形状 = 球形 使用与守卫的完整3D距离。
结界设置 / 通过结界入口保护地牢内部 启用后,若其外部受到保护,内部也将继承该保护 传送 入口在一间启用中的病房内。

室内物体永远不会在其高海拔地牢位置与结界进行匹配。该模组解决了外部 位置,无视其 内部变换 层级系统会找到外部入口并改为检查该位置。

背景保护有意对可移动的船只、推车和驯养生物保留水平检测,这样波浪和物理效果就不会因为垂直位移而将它们移入或移出保护范围。

连接病房通道

已连接访问权限分别针对普通交互、后台保护和过期刷新进行配置。

模式 含义
关闭 仅接受对保护该物品的守卫区域的直接访问。
仅限同一创作者 仅当拥有同一创建者的视野守卫范围重叠时,才共享视野。
互信 只有当重叠守卫区域的创建者互相允许时,权限才会共享。
任意已连接 进入任意病房即可通过连接网络通行;适用于共享基地或单方服务器。

访问保护

这 禁止未获许可的玩家进入病房 在有效守卫内阻止群体控制交互。

支持的原始类别包括容器、门、植物、食物与盛宴、掉落物品、船只、推车、驯养动物、生产与制作站、物品与盔甲架、传送门、地图桌、壁炉、护盾发生器、湮灭器、炮塔、床、投石车、箭靶、理发台、陷阱和未激活的守卫石。安装EpicLoot后,其附魔台会通过相同的制作站访问设置被作为制作站处理。

通用交互物 是可选的广泛兼容层,适用于原版或模组 可交互 未专门处理的实现。默认情况下禁用,因为涉及所有权的对象使用专门补丁更安全。

传送门访问模式

模式 含义
全部允许 未获许可的玩家可以使用并重命名传送门。
仅允许传送 默认。允许传送,但禁止更改传送门标签。
全部格挡 传送和重命名已被阻止;源和目标均在服务器端进行验证。

物品拾取模式

模式 含义
全部允许 所有非消耗品掉落物均可拾取。
允许非玩家掉落 默认。允许普通战利品/世界掉落,但玩家丢弃的物品受保护。
全部格挡 在保护区域内,所有非消耗品的拾取均被禁止。

载具使用最后操控者追踪:将船只或拖车驶入其他区域的玩家可以重新取得控制权或将其分离,而不会让创建者或其他玩家获得同样的豁免权。

背景保护

该 附近无许可玩家的守卫 队伍会在没有获准进入或有效进入权限的玩家在场时,保护不活跃的公开PvE基地。它使用服务器追踪的结界ZDO集合,而不需要已加载的结界场景实例。

允许的玩家存在模式

模式 含义
允许靠近保护区 获准玩家必须位于受保护对象配置的水平半径范围内。
允许进入连接区域 连接结界区域内的任意一名获准玩家会使背景保护失效。
允许在线 允许联机的玩家在线就足以禁用后台保护。

后台保护模式

模式 含义
关 没有广泛的结构背景保护。
禁止非允许玩家伤害 阻止未经允许的玩家造成的直接结构伤害。
附近无友军时格挡所有伤害 在无允许/有效玩家在场时,阻挡所有来源的结构伤害。

其他设置可以要求玩家建造的最少部件数量、防止建筑受到火焰伤害、保护驯养的生物/船只/推车、安抚驯养生物、阻止驯养生物破坏建筑,以及禁止未经许可的建造或拆除。玩家始终可以拆除自己的部件。

未激活的守卫过期

过期功能默认禁用,在多人游戏中于服务端生效,在单人游戏中则被忽略。

结界到期 / 过期分钟数 设置无操作时间; 0 禁用该功能。过期的守卫不会被删除。它们的许可列表仍被保留,但会有意表现得像已禁用的守卫一样,以便废弃区域能通过正常的守卫行为被重新认领。

到期刷新模式

模式 含义
直接允许 创建者、直接许可玩家、绑定公会成员,生效 允许所有人,或者管理员绕过可能会刷新结界。
有效访问 默认。连接病房权限也可能根据以下内容刷新它。 过期连接访问模式.

到期重新激活模式

模式 含义
手动交互 默认。访问玩家必须与已失效的结界互动。
自动登录 服务器在定期检查时,若有具有权限的玩家在附近,可能会重新激活结界。

旧守护在启用过期时会获得当前时间戳,因此现有世界不会立即失去所有守护。对于每一个有效 允许所有人 值已启用。

结界管理

结界管理权限

模式 含义
关 管理员无法绕过结界检查。
管理员 服务器管理员和主机可绕过守卫检查。
管理员上帝模式 默认。管理员仅在上帝模式激活时绕过结界检查。

病房准入 / 允许所有人 被复制到新建的病房中。在 每守卫 每个结界模式各保留自己的值;启用值会绕过该结界对所有玩家的归属限制,同时保留其存储的许可列表。在 服务器控制 模式直接使用全局配置值。此配置从 守护管理员;现有已启用的值必须在新组中再次启用。

外部结界指令

命令由以下控制: 病房管理 / 启用外部病房控制命令 和 病房管理/外部病房控制指令范围.

指令 别名 描述
<玩家名>通行许可 守卫通行证 <player name> 将一名独特匹配的在线玩家添加到最近的病房。
取消权限 <玩家名称> <玩家名称>未获守卫许可 从最近守卫存储的名单中移除一名匹配的玩家;该玩家可能处于离线状态。
启用密码 启用结界 启用最近的守卫。需为创建者或已配置的守卫管理员。
禁用密码 禁用结界 禁用最近的守卫。需为创建者或已配置的守卫管理员。
密码设置已过期 守卫设置已过期 将最近的守卫标记为已过期。仅限管理员。
设置未过期密码 守卫设置未过期 清除过期状态。仅限管理员。

所有命令都会在服务器端重新验证。许可类命令需要病房权限;过期类命令需要 结界管理权限 或所选病房的生效 允许所有人 值。

守护管理 / 每位玩家的守护建造上限 每名拥有者的守卫数量限制。 0 禁用此限制。已存在的守卫不会被移除;仅当新放置的守卫会超出限制时,该新守卫会被摧毁。

全面保护与被动保护

结界保护 选项可以保护野猪和母鸡、建筑免受雨水侵蚀、船只免受特定伤害、植物、火炉免受踩踏伤害、玩家免受自己的陷阱伤害,以及坐在点燃的火堆旁的玩家免受突袭。

被动选项包括每10秒在相连区域修复一件物品、可选修复非玩家位置建筑、可选制作站需求,以及自动关门。

倍数

领地范围倍率涵盖造成/承受伤害、建筑与船只伤害、坠落伤害、炮塔射速、食物/耐力/技能/燃料/耐久消耗,以及熔炼/烹饪/发酵/采汁速度。

1 保持原版行为。数值低于或高于 1 根据配置说明减少/增加相关效果或减慢/加快进程。

有效祭品

玩家已解锁的献祭品会显示在英灵神殿图鉴的 守护与祭品如果原版结界文本不可用,则玩家学会结界配方后仍会添加该话题。 杂项 / 悬停时显示祭品 默认启用,同时控制简短的守卫悬停提示和此图鉴条目;仅客户端生效。

所有主要供奉类型默认启用。供奉1-9使用固定贡品、数量和效果;其各自的 祭品 布尔值用于启用或禁用它们。瓦尔基里通道的目的地、价格、数量和消耗规则有额外设置。

祭品配置 默认贡品 默认状态 效果与配置
1 - 用焰灵核心献祭修复所有部件 焦炭核心 x1 已启用 立即修复所有相连守卫区域内的受损棋子。若无可修复的棋子,核心不会消耗。
2 - 用黑核祭品强化所有部件 黑核 x1 启用 增强所有相连区域的结构部件,提高其最大生命值。当没有部件可修复或增强时,核心不会被消耗。
3 - 通过供奉食物为所有盟友恢复生命,持续3分钟 任意食物 x1 已启用 消耗一份食物,为相连区域内的玩家和驯服生物开启三分钟的被动治疗。食物品质越高,治疗效果越强。每个结界拥有独立的治疗生效期;当结界已在治疗时,不会消耗食物。
4 - 通过献祭蜜酒将蜜酒效果分享给所有玩家 任意可用的蜂蜜酒 x1 已启用 与相连区域中符合条件的玩家共享蜂蜜酒效果。当没有玩家能获得该效果时,蜂蜜酒不会被消耗。
5 - 献上雷石,召唤托尔之怒,降临你的敌人 雷石 x1 启用 攻击相连区域内的敌人。即使未对目标造成伤害,雷石也会被消耗。
6 - 献祭奖杯消灭所有同类敌人 任意生物奖杯x1 已启用 击杀相连区域内与所献祭品匹配的生物。若没有匹配的生物受到影响,祭品不会被消耗。
7 - 通过献祭尤弥尔之肉种植所有植物 尤弥尔之肉 x1 已启用 使相连区域内的健康植物瞬间生长。当没有植物可生长时,该物品不会被消耗。
8 - 通过献祭5个艾特尔,无视条件种植所有植物 精炼埃特尔 x5 已启用 即使不满足植物正常生长环境或种植条件也能种植。当无植物可生长时,不消耗埃特尔。
9 - 通过献祭龙蛋激活Moder力量 龙蛋 x1 启用 消耗龙蛋,并在摩德被击败后,对连接区域内的玩家施加摩德的遗弃之力。
10 - 使用不同物品往返飞行至远处地点 特定目的地 启用 启用瓦尔基里传送系统。每个目的地、价格、数量和消耗规则均在下方出租车组中配置。

祭品 / 防止未经允许的玩家破坏 是 默认禁用禁用时,访客可以使用已启用的供品。启用时,服务器需要直接或已配置的连接结界访问权限。

女武神通道祭品

主开关位于 献祭 / 10 - 用不同的物品献祭,往返于遥远的点位默认启用。

目的地/配置 默认贡品 默认启用 默认消耗 可配置值
献祭之石 一个首领奖杯 是 否 献祭石传送点; 献祭石传送消耗首领奖杯
哈尔多,未发现 金币 ×2000 是 是 启用状态、物品预制体/标识符/本地化名称、未发现价格、已发现价格及消耗标记
哈尔多,已发现 金币 ×500 是 是 相同的Haldor设置
希尔迪尔宝箱路线 任意希尔德任务宝箱 是 绝不 希尔德出租车 并分离 希尔德宝箱出租车 开关;宝箱始终保留
希尔德物品路线 亚麻线 x50 是 是 启用状态、物品、数量和消耗标记
沼泽女巫 呕吐莓 x20 是 是 启用状态、物品、数量和消耗标记
赤鹿祭坛 奖杯鹿 x10 不 是 每座祭坛的启用状态、物品、数量和消耗标记
长者祭坛 远古种子 x6 否 是 每个祭坛的启用状态、物品、数量和消耗标记
骨髅祭坛 枯骨 x30 不 是 每个祭坛的启用状态、物品、数量和消耗标记
中等祭坛 冰冻腺 50倍 否 是 每个祭坛的启用状态、物品、数量和消耗标记
亚格鲁斯祭坛 哥布林图腾 x10 否 是 每个祭坛的启用状态、物品、数量和消耗标记
女王祭坛 矮人钥匙 x1 否 是 每个祭坛的启用状态、物品、数量和消耗标志
渐变祭坛 贝尔 ×1 不 是 每个祭坛的启用状态、物品、数量和消耗标志

出租车物品设置接受物品预制体名称,例如 金币,一个本地化标记,例如 金币,或在ObjectDB和本地化数据可用时使用本地化物品名称。

其他出租车配置 默认 含义
祭品 - 出租车 / 飞回所需秒数 120 返航前的延迟; 0 使旅程变成单程。
祭品 - 出租车 / 返程等待秒数 600 等待玩家准备返回的最长时间; 0 禁用此超时。
祭品 - 出租车 / 主动通道处理 拒绝新篇章 在通道激活期间拒绝新的祭品,或先停止旧通道。
其他 / 最大滑行速度 60 客户端最大飞行速度。

飞行途中, 替换放置 + 使用 (左Shift + E 默认情况下)请求立即丢弃并取消返程取件。

玩家不会负重且必须可传送,但携带的希尔德宝箱不计入此检查。目的地必须存在且距离至少200米,才能消耗物品。

安装与配置

使用模组管理器安装,或将 保护结界.dll 在 BepInEx/插件对于多人游戏,请在服务器和每个客户端上都安装。

推荐的配置管理器:

服务器同步设置在配置管理器中仅限管理员使用。

本地化

创建 保护结界 或 保护结界.LanguageName.json 内部 BepInEx/配置。游戏启动和语言更改时会加载配置文件夹中的文件;否则将使用嵌入的本地化内容。打包的 保护结界 是可以复制到配置文件夹中作为外部覆盖使用的示例。

兼容性

专用补丁用于对象具有特殊归属或交互逻辑的情况。可选的通用可交互保护有意设计得较为宽泛,在模组较多的服务器上应谨慎启用。

可选集成在运行时检测,无需捆绑它们的 API 程序集:

  • 公会:服务器验证的当前会员资格可授予对一个守护分区所绑定公会的许可等效访问权限。
  • 史诗战利品:附魔台跟随 禁止未授权玩家使用守卫权限 / 制作站.

链接

GitHub

捐赠

请我喝杯咖啡

Discord

加入服务器

Valheim: 英灵神殿 的热门 MOD

探索适用于 Valheim: 英灵神殿 的最佳MOD,带来新功能、升级画面,以及令人兴奋的方式来改变您的游戏体验。

使用 Xmod 解锁 Valheim: 英灵神殿 的全部潜力 — 今天就探索这些顶级 MOD!