时间控制

创作者: DrummerCraig
已更新:2026-06-22 06:09:13
69KB

关于此 MOD

用简单的倍率调整英灵神殿昼夜循环的长度。

时间控制

A BepInEx 5 插件 用于 Valheim 用一个倍率调整游戏内昼夜循环的长度。

默认情况下,《英灵神殿》的一个完整昼夜循环大约相当于现实中的30分钟。TimeControl可以让你拉长(或压缩)这个时间——例如 4.0 倍率将一整天缩短为约2小时现实时间。

工作原理

英灵神殿在每个物理帧中根据单个字段推导出一天中的时间, 环境管理器.一天时长秒:

dayFraction = (worldClockSeconds mod m_dayLengthSec) / m_dayLengthSec

联网世界时钟以固定速率推进,即1现实秒对应1游戏秒,因此延长一天只需增加 每日时长(秒)。TimeControl 会捕获 Valheim 的原始数值一次,然后乘以你配置的倍率。白天和夜晚会一起缩放;它们的比例由 Valheim 固定,并会保持不变。

变化立即且平滑地生效——太阳不会跳跃。

屏幕时钟

TimeControl在屏幕顶部中央显示一个小时钟,以单个词的形式显示当前一天中的时间—— 午夜, 夜晚, 黎明, 早上, 正午, 下午,或 黄昏这个词源自 Valheim 自身的每日时间分段,因此它与现实中日出(0.25)、正午(0.5)和日落(0.75)在周期中的位置一致。它仅用于显示且按客户端独立运行——读取你的本地时钟,不产生任何网络流量,也不需要 Harmony 补丁。

时钟的外观可以自定义(颜色、自定义十六进制颜色、大小、样式和字体);参见 时钟外观 下面的选项。时钟的样式和字体只会在你更改设置时重建,因此不会增加可测量的每帧开销。

配置

配置文件: BepInEx/配置/drummercraig.time_control.cfg

章节 按键 默认 描述
通用 日长倍率 4.0 原版一天时长的倍率。 1.0 = 原版(每天约30分钟)。 2.0 两倍长。范围 0.1–100.
通用 显示时钟 真 显示屏幕上的时间词时钟。
时钟外观 文本颜色 白色 时钟文本的调色板颜色。在以下情况时忽略 文本颜色十六进制 已设置为有效值。
时钟外观 文本颜色十六进制值 (空) 作为可选自定义颜色 #RRGGBB; 覆盖 文本颜色 当有效时。为空时使用调色板。
时钟外观 字号 16 字体大小(预设尺寸下拉菜单:12、14、16、18、20、24、28)。
时钟外观 字体样式 加粗 普通, 加粗, 斜体,或 粗体斜体.
时钟外观 字体 默认 字体族。 默认 = 内置游戏界面字体;其他条目是常见的跨平台字体,如果你的机器上未安装,则会回退到默认字体。

你可以在游戏内的配置管理器(如果已安装)中实时编辑这些内容;更改会立即生效。

多人游戏

白天时长秒数 是 客户端本地 field — 原版 Valheim 从不在网络上发送它。为了让所有人保持同一时间,TimeControl:

  1. 需要模组版本完全一致。 当客户端连接时,服务器和客户端会通过自定义RPC交换各自的TimeControl版本。如果两者不完全匹配——或者其中一方根本没有安装该模组——连接将被拒绝,并显示Valheim原生的“不兼容版本”界面。这复用了原版游戏本身用来拒绝不匹配客户端的同一机制(网络通信对等节点信息 这 连接状态.错误版本 代码);未捆绑任何第三方配置同步库。

  2. 服务器设置获胜。 握手后,服务器立即推送其生效的 白天长度倍率 服务器会将其用于会话。已连接的客户端在连接期间会忽略自身的本地配置,因此所有玩家始终共用服务器的时钟。在单人游戏或作为主机时,客户端的本地值将重新生效。

在服务器和每个客户端上安装相同版本的 TimeControl。

建筑

需要带有 .NET Framework 4.8 引用程序集的 Mono。TimeControl 会 不 不要提交任何游戏或 BepInEx 的 DLL 文件;它会从你本地的英灵神殿安装中引用这些文件,因此始终会针对你实际运行的版本进行构建。

首次设置:

  1. 复制 Directory.Build.props.示例 至 生成属性文件 并将这两条路径设置为你的安装目录的 …/托管 文件夹和 …/BepInEx/core 文件夹。(Directory.Build.props 被 gitignore 忽略。)这就是 .csproj / IDE 使用。
  2. 引用的游戏程序集是 程序集_valheim.dll (完整的约2 MB托管程序集)。执行 不 参考 Assembly-CSharp.dll 在macOS上——该文件是一个微小的AOT存根,不包含任何游戏类型。

然后:

./build.sh

build.sh 从同一路径解析出 瓦尔海姆 和 BepInEx核心 环境变量,回退到本地 macOS Steam“testing”安装的默认值。覆盖它们以针对不同安装进行构建:

VALHEIM_MANAGED="/path/to/.../Managed" BEPINEX_CORE="/path/to/.../BepInEx/core" ./build.sh

这很合辑 TimeControl.dll 进入 bin/Release/ 并且(当存在本地 Steam 测试安装时)将其复制到该安装的 BepInEx/plugins/ 目录。

许可证

查看仓库。

Valheim: 英灵神殿 的热门 MOD

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

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