有用符文石

创作者: sighsorry
已更新:2026-06-24 23:24:02
308KB

关于此 MOD

符文石和维格维斯尔的探索奖励:从无标记的符文石中揭示带权重的全局地图标记,提供基于生物群系的维格维斯尔增益效果并带有冷却时间。

有用的符文石

有用的符文石将英灵神殿的符文石和维格维西尔转化为可配置的探索奖励。


符文石有几率像维格维斯尔一样标记配置好的地点!


符文指引可以根据生物群系为玩家提供短时增益。
所以即使你已经知道boss的位置,vegvisir还是有点用的。

精彩亮点

  • 让无插槽符文石将已配置的世界地点揭示为已保存的地图标记。
  • 为每个目标位置提供自定义图钉名称和图钉图标。
  • 使用加权概率,让符文石可以揭示一个目标或什么都不揭示。
  • 在专用服务器上解析全局标记,然后仅将结果发送给交互客户端。
  • 按目标限制或扩展有效的符文石来源生物群系。
  • 按生物群系给予加权的维格维斯状态效果奖励。
  • 将生物群系专属奖励表与一个 全部 桌子。
  • 每个已加载的维格维西尔保留一个已选奖励和每玩家冷却状态。
  • 进行可选共享 特效_, 音效_,或 特效_ 获得奖励时的预制体。
  • 使用 ServerSync 将 YAML 同步到客户端,并在游戏运行时重新加载。
  • 安装 Expand World Data 后,支持自定义生物群系名称。

为何使用实用符文石

实用符文石专注于小型的世界互动奖励,让探索更有实用价值:

  • 现有符文石无需编辑地点预制体,即可为玩家指向已配置的地标。
  • 服务器所有者可以调整目标权重以及不显示密码的概率。
  • 维格维斯可以变成带有生物群落特色的奖励点数,而不仅仅是一次性的首领指引。
  • 冷却时间按每个已加载的维格维斯和每位玩家分别追踪,因此共享服务器既能奖励探索,又不会提供无限增益。
  • YAML 保持足够精简,便于手动维护。

生成文件

该模组创建:

BepInEx/config/UsefulRunestones.yml BepInEx/config/sighsorry.UsefulRunestones.cfg

服务器管理员应在服务器或主机上编辑YAML。完整的YAML文本会自动同步到客户端。

符文石全局标记

符文石全局标记 行使用此简写:

符石全局标记:- 商人_黑森林,0.5,哈尔多,图标3 - 沉没墓穴4,0.25,沉没墓穴,图标3,[沼泽]

字段:

位置名称,概率,标记名称,标记类型,来源生物群系

字段行为:

  • 位置名称目标 区域系统 位置预制体/名称。
  • 机会:该目标的最终加权概率。省略值时默认为 1.
  • 引脚名称:已保存的地图标记名称。省略该值时将使用目标地点发现标签,然后是子传送进入文本,接着是 位置名称.
  • 引脚类型维尔海姆 小地图.标记类型. 省略值默认为 图标3.
  • 生物群系:额外的符文石来源生物群系,可以揭示此目标。

若筛选后的目标几率合计为 1 或更少,剩余概率表示没有钉子。如果总数超过 1,UsefulRunestones会将目标权重归一化,因此只能选择一个目标。

当 生物群系 如果省略或为空,则符文石只能从目标地点自身所在的生物群系揭示目标。当您希望一个生物群系中的符文石揭示另一个生物群系中的目标时,请添加来源生物群系。

选择生命周期

  • 单人游戏和主机自身的交互会为每个已加载的符文石对象保留一个结果。重新创建该对象(例如区域卸载后)会允许重新随机。更改图钉定义也会允许重新随机。
  • 远程客户端向服务器请求。服务器根据符文石生成一个可重复的掷骰结果 16米XZ电池、引脚定义,以及插件加载期间持续存在的密钥。高度不是单元格的一部分。这不是基于世界种子或已保存世界的结果。
  • 同一单元格内的附近符文石共用一次百分比掷骰,但目标不一定相同:服务器会为每个请求解析符合条件的候选位置及最近地点。因此,可用位置的变化可能会影响结果。
  • 引脚定义顺序、名称、图标、概率和来源生物群系都会参与选择键。编辑显示字段也可能改变掷骰结果。重启游戏/服务器会创建新的密钥;在不卸载插件的情况下切换世界则不会。

因此,在服务器插件保持加载的情况下,卸载区域不会重新随机决定远程客户端的百分位数值,但这并不保证该世界位置会永久固定或永不固定。本地和远程策略有意保持不变。

维京罗盘全局效果

导航符全局效果 按生物群系分组显示行:

vegvisirGlobalEffects: - 全部: - 休息中, 240, 480, 1, vfx_HealthUpgrade - 黑暗林山: - GP_Eikthyr, 120, 600, 0.5

奖励字段:

状态效果, 持续秒数, 冷却秒数, 权重, 效果预制体

字段行为:

  • 状态效果:状态效果预制体名称。
  • 持续秒数:可选覆盖。省略该值则使用预制体持续时间。
  • 冷却秒数:可选冷却时间。省略该值则使用预制体冷却时间。
  • 重量:可选选择权重。省略值默认为 1.
  • 效果预制体:可选的共享视觉/音效。必须以 特效_, 音效_,或 特效_.

冷却时间数值:

  • 0: 无冷却
  • 以下 0每个玩家每次加载的维格维西尔一次
  • 上方 0:每位玩家的冷却时间(秒)

清除状态 是内置的未命中奖励,可清除当前状态效果并显示配置的清除状态消息。

奖励和每个玩家的冷却时间归属于本地玩家客户端上每个已加载的Vegvisir对象。重新创建该对象会允许新的奖励选择并重置冷却时间;奖励不会按世界位置保存。更改有序候选键、权重、有效冷却时间、持续时间覆盖或特效也会在下次交互时重置选择和冷却时间。仅本地化更改不会重置它们。

本地化

可选本地化字段:

你已收到{name}
你被耍了
增益冷却 {seconds}秒
已激活 {name}

支持的占位符:

  • {name} 用于状态效果名称。
  • {seconds} 持续冷却秒。

兼容性

有用的符文石旨在与其他独立模组并存:

  • 对生物掉落、物体战利品、生成器和世界生成表使用DropNSpawn。
  • 使用BossRules来管理Boss祭坛、Boss石、被遗忘者之力、Boss消失和Boss驯服压力。
  • 使用有效符文石获取无钉符文石全局标记和维格维斯奖励。

如果另一个模组拥有相同的符文石或维格维西尔交互,请在BepInEx配置中禁用重叠的UsefulRunestones功能。

开发者验证

当前兼容目标为 Valheim 1.0.7(Windows 客户端版本 25185596 / 专用服务器版本 25185644)。版本引用使用原始游戏程序集,而非公开副本。内嵌的 ServerSync 适配及其来源记录于 Libs/ServerSync.NOTICE.md.

使用本地路径 环境.道具 配置、构建并将最终合并的插件 DLL 复制到游戏中,然后在全新的 Windows PowerShell 5.1(.NET Framework)进程中运行托管冒烟检查:

dotnet build UsefulRunestones.sln -c Debug -p:DeployToGame=true powershell.exe -NoProfile -ExecutionPolicy Bypass -File Tests/SmokeTests.ps1 -Configuration Debug

使用 -p:DeployToGame=false 跳过游戏 DLL 复制。Debug 构建不会创建 Thunderstore 包。冒烟检查会加载已构建的模组、原版 Valheim/Unity 程序集以及已安装的 Harmony;请使用 -游戏管理路径 <原始托管目录> 在独立进程中检查专用服务器快照。已安装的 Harmony 运行时下,此测试框架不支持 PowerShell 7。该脚本本身不会启动 Valheim、部署模组或创建包。通过测试并不验证 Harmony 补丁激活或游戏 Mono 运行时中的私有成员访问。正常的 Release 构建会创建分发包,并需要明确的发布请求。

发布前,还需测试单人模式、监听主机加远程客户端以及专用服务器:固定/非固定交互、重复请求、重新连接、区域卸载/重载、YAML重载、Vegvisir冷却与冲突状态效果,以及安装和未安装Expand World Data的情况。重置地点的世界编辑模组需要单独进行兼容性检查。

固定 RPC 名称和 v1 负载保持不变。此模组的全局固定 RPC 会在分发/中继之前,根据声称的发送者检查实际连接。无效或受限的请求不会收到响应;即使没有固定,被接受的角色仍会发送正常的无固定响应。请在服务器和客户端上都安装更新后的模组:客户端无法独立验证由旧版服务器中继的流量的原始发送者。

GitHub

https://github.com/sighsorry1029/UsefulRunestones

Valheim: 英灵神殿 的热门 MOD

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

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