跳到正文

Sleeping Overhaul 2

作者:CosmicDan

睡觉时不再直接跳到白天,而是播放时间流逝效果,还加入了更多内容!

收藏

介绍

介绍由机器翻译自 Modrinth 原页面,仅供参考。

️💤 关于

Sleeping Overhaul 2 全面改进了 Minecraft 中与睡眠相关的各种体验。主要功能包括:将跳过时间改为延时摄影、允许玩家躺在床上休息而不睡觉,以及可选移除各种限制(例如允许在下界放置床)。

🐌 延时摄影很慢?试试 Lithium(适用于 NeoForge)或 Canary(适用于 Forge),以提升服务器性能。

如需更多性能优化建议,以及值得尝试的模组,请参阅“常见问题 / 故障排除”部分。

📜 更新日志(更新历史)

展开

[✨ = 新功能;🛠️ = 修复或更正;❗ = 其他改动

2.1.0

[✨] 新增对模组添加的自定义床的支持(例如 Comforts 和 Sleep Tight 中的吊床),详情请参阅“兼容性与已知问题”部分;

[✨] 新增在任意维度睡觉,以及在任意维度设置重生点的支持,两项功能默认均已禁用;

[✨] 床上休息现在可以抵御中毒、凋零或饥饿(药水效果)的影响(可配置,默认均已启用);

[❗] 配置项“sleepAttackedAction”已更名为“timelapseSleepersDirectDamageAction”;鉴于新增了中毒、凋零和饥饿免疫选项,该设置现在专门用于控制延时摄影期间玩家受到的直接伤害;

[❗] 现在,玩家在床上休息或进行延时摄影时,只要受到任何伤害,就会离开床;

[🛠️] 修复延时摄影在某些情况下不会停止的问题;

[❗] [1.19.4+] 改进床上休息或延时摄影期间的键盘和聊天功能。现在,玩家必须按 Ctrl+Tab 才能切换聊天框的焦点(避免与方向键和 Tab 键冲突);也可以点击聊天框重新聚焦;

[🛠️] 修复床上休息期间按下“睡觉”后聊天框无法获得焦点的问题;

[✨] 现在可以随时退出延时摄影(按 Escape 或点击始终显示在屏幕上的“离开床铺”按钮)

[✨] 移植至 1.21.1(已改用 NeoForge);

[🛠️] [MP] 延时摄影现在会正确遵循睡眠投票游戏规则,并在正确的时间向玩家发送消息(而不是在床上休息期间);

[❗] 床上休息时屏幕会部分变暗(可调整或禁用);

[❗] 将“现在无法执行”提示改为更通用的内容,不再显示“仅限白天/雷暴天气”(这样对于时间规则不同的模组新增床铺,不会那么令人困惑);

[🛠️] [Forge] 修复模组在某些特定 Forge 版本上无法运行的问题(显然是 jarjar 的一个 bug,MixinExtras 需要它);

[❗] 移除对 1.20.1 版 NeoForge 的支持(该版本已不再存在);

[❗] SleepAction“SkipToDay”已更名为“SkipTime”,以免造成混淆;

[✨] 新增俄语翻译,感谢 GitHub 用户 mpustovoi;

[❗] 重新整理了 Mixin,并将其列入 JSON 文件,名称也更易识别,方便整合包作者在不需要特定功能时禁用整个 Mixin;

[🛠️] 修复了其他兼容性问题并进行了改进;

[❗] 因技术原因移除 Fabric 支持(原因请参阅模组介绍中的常见问题);

2.0.2

  • 新增 Fabric 和 NeoForge 版本,支持 1.19.2、1.19.4 和/或 1.20.1
  • 新增客户端配置项,用于设置延时摄影类型;重新调整了地表环绕视角,并将其设为默认
  • 修复某些情况下延时摄影结束后手部消失的问题(希望已修复)
  • 新增玩家在延时摄影期间死亡时的死亡消息
  • 进行了多项小幅性能优化和兼容性改进

2.0.1

  • 新增若干与延时摄影相关的配置项:“sleepAttackedAction”和“sleepPreventMagicDamage”
  • 修复某些情况下延时摄影镜头未关闭的问题(例如玩家在睡觉时死亡)
  • 简化延时摄影镜头
  • 进行了杂项代码优化,以便后续开发

2.0.0

  • Sleeping Overhaul 2 首次发布

⭐ 主要特色

⏩ 让夜晚在快进中度过,而不是直接跳到白天

这是模组的主要功能,但可选(可以改回直接跳到白天,或设为“Nothing”完全关闭睡觉行为)

Animation of the Timelapse cinematic

……这并非模拟——你的电脑会以最快速度运行世界!

🛏️ 随时在床上休息

玩家可以随时躺到床上,然后只需按下按钮或回车键才会尝试入睡(如有需要可禁用)。

Animation of player entering a bed and pressing Sleep

……默认情况下(可配置),卧床休息会防止中毒、凋零和饥饿(实际减益效果)影响玩家。如果你对卧床休息有更多想法,欢迎分享!

⭐ 还有更多!

🌏 可选:能够在任何维度休息/睡觉,包括下界——床不会爆炸(注意:可能不适用于模组添加的自定义床);

🪦 可选:如果启用了上述功能,还可以在其他维度设置重生点(同上,可能不适用于模组添加的自定义床);

🏘️ 兼容多人游戏!playersSleepingPercentage 游戏规则将被完全遵守,即使在快进期间也是如此。保持清醒的玩家(默认情况下)在快进期间将无法移动并暂时无敌;

💬 [1.19.4+] 修复了床上聊天界面的方向键/制表键导航错误,还允许通过鼠标点击重新聚焦聊天框。完整详情请参阅配置注释(可以禁用,以防万一);

🏷️ 所有功能与配置

本模组力求尽可能可配置,一切都可以禁用或配置。以下是截至 2.1.0 版本的所有配置及其描述性注释。

sleepingoverhaul-server.toml:

服务器配置是全局的(适用于所有玩家)。注意:在 Forge(而非 NeoForge)下,此配置会在加载进入存档/世界文件夹后生成于其中的“serverconfig”下。

剧透

[general]

模组的通用功能。

sleepAction:

  • 当所有玩家都在睡觉时执行的操作。
  • 可以是“Timelapse”(默认)、“SkipToDay”(原版)或“Nothing”(什么也不发生)。

resetWeatherOnWake:

  • 如果为 true,玩家醒来时若正在下雨将重置天气。适用于 Timelapse 和 SkipTime。默认值为 false。

[timelapse]

Timelapse 睡觉操作的功能

logTimelapsePerformanceStats:

  • 如果为 true(默认),性能统计将在快进结束时写入日志(平均 TPS、总时间、总刻数)。

timelapseSleepersDirectDamageAction:

  • 快进期间,正在睡觉的玩家受到直接伤害(非药水/效果)时执行的操作。不适用于卧床休息。
  • 可以是“NoChange”(默认)、“InstantKill”或“Invincible”。

noDamageToNonSleepers:

  • 用于多人游戏。如果为 true(默认),未睡觉的玩家在快进期间将无敌。

noMovementDuringTimelapse:

  • 用于多人游戏。如果为 true(默认),未睡觉的玩家在快进期间将无法移动。

disableNaturalSpawning:

  • 如果为 true(默认),快进期间将禁用自然生成。提供小幅速度提升。

disableLivingEntityTravel:

  • 如果为 true,LivingEntity 类型的生物在快进期间无法移动。提供小幅速度提升。
  • 默认禁用,因为这可能导致不希望的损失,例如生物溺水。
  • 注意这不适用于玩家,关于阻止玩家移动请参阅 noMovementDuringTimelapse。

[bedRest]

在此切换和自定义卧床休息功能

bedRestEnabled:

  • 允许玩家在不睡觉的情况下躺在床上休息,并在“离开床铺”旁添加“睡觉”按钮。默认为 true。

bedRestScreenDimValue:

  • 躺床休息时屏幕的变暗程度。数值低于 10 左右时,基本相当于禁用变暗效果。
  • 此项不能设为客户端选项,因为服务端也会使用该数值。
  • 默认值为 30,变暗效果较轻但清晰可见;范围为 1 到 98

[bedEffectsAndDamage]

自定义躺床休息或时间流逝期间的伤害/效果修饰。请注意,只要允许玩家受到任何伤害,就会将其踢下床。

bedEffectNoPoison:

  • 启用后,玩家在躺床休息或时间流逝期间不会受到中毒伤害。

bedEffectNoWither:

  • 启用后,玩家在躺床休息或时间流逝期间不会受到凋零伤害。

bedEffectNoHunger:

  • 启用后,玩家在躺床休息或时间流逝期间不会受到饥饿效果影响。

[features]

其他功能

featureAllowAnyDimension:

  • 设为 true(默认未启用)后,允许在任意维度休息/睡觉。使用床时也不会引发爆炸。
  • 重要提示——此设置仅适用于原版及类似原版的床!除非同时启用 featureSetSpawnAnyDimension,否则不会更改其他维度的重生点。

featureSetSpawnAnyDimension:

  • 启用后,在非主世界的床上休息/睡觉也可以将重生点设为该床。
  • 重要提示——此设置会覆盖主世界的重生点;不会为每个维度分别设置重生点!
  • 请注意,此选项可能与不同于 Minecraft 原版床的模组自定义床发生冲突,也可能不会。这意味着,启用此配置时,模组添加的自定义床可能仍会通过自身配置阻止此功能;禁用时,模组添加的床也可能仍允许设置重生点。

sleepingoverhaul-client.toml:

多人游戏中,客户端配置按玩家分别设置。

折叠内容

[clientGeneral]

客户端通用设置。

timelapseCameraType:

  • 时间流逝期间使用的镜头效果
  • 可设为 “SurfaceOrbit”(默认)、”SurfaceRotation” 或 “None”。

timelapseDimValue:

  • 时间流逝期间屏幕的变暗程度。默认值 0 会关闭屏幕变暗效果。
  • 范围为 0 到 100

bedRestWithChatEnter:

  • 设为 true(默认)后,在“床上聊天”界面中聊天框为空时按 Enter,也会触发“睡觉”按钮。
  • 需要在服务端配置中启用 bedRestEnabled;否则此设置无效。

inBedChatFixes:

  • 仅限 1.19.4 及以上版本:增强并修复“床上聊天”界面的键盘导航问题。具体包括:
  • 点击聊天框即可重新将焦点切回聊天框;
  • 防止方向键将焦点从聊天框移走;改用 Ctrl+Tab 切换焦点;
  • 只有聊天框获得焦点时,按 Enter 才会发送聊天消息;
  • 焦点位于按钮而非聊天框时,按 Enter 也能正常操作。

由于我们会在界面中添加按钮,建议保持启用;若与其他模组冲突,也可以将其禁用。

✔️ 兼容性与已知问题

仅适用于最新版本(请确保已更新至最新版本)。问题可能会在未来版本中修复,也可能不会;这取决于其他模组的复杂程度或特殊情况。

Comforts

  • Sleeping Bags 在所有版本中都兼容时间流逝功能,但不兼容床上休息(除非是夜晚);
  • Hammocks 兼容床上休息和时间流逝;
  • Hammocks 不支持在任意维度使用:它们被硬编码为在下界爆炸(请注意,Sleeping Bags 只会无法使用,不会爆炸);

Sleep Tight

  • Hammocks 兼容床上休息和时间流逝;
  • 它有自己的床上休息功能——如果保持启用,你会先看到它自己的界面,然后才会看到这个界面。因此,如果你想使用 Sleeping Overhaul 的床上休息功能,可能需要禁用 Sleep Tight 的休息功能;
  • Hammocks 不支持在任意维度使用:它们被硬编码为在下界爆炸;

一般信息

  • 如果启用了床上休息功能,却在不合适的时间尝试睡觉,你会看到通用提示“你现在无法在这里睡觉”,而不是更具体的提示。由于无法查询自定义床的适用睡眠时间,这是目前能做到的最好效果;
  • 床上休息和时间流逝应该兼容任何模组添加的床,除非它们与原版床差异很大。如果不兼容,请在这里反馈,我会看看能否支持;
  • 在任意维度睡觉或设置重生点的功能很可能与许多模组添加的床不兼容——对此我大概无能为力,不过欢迎反馈,我还是会检查一下;
  • 如果启用允许在任意维度睡觉/休息的功能,你就可以随时在下界睡觉——但仍会在第二天早晨醒来。如果你希望有选项可以禁用这一点,请告诉我。我本来就会添加这个选项,但实现起来有点复杂,而且不确定大家是否介意;

……还有其他问题吗?欢迎提问或在评论区留言!我确实会尽力在所有版本中测试每项功能,但人无完人,我可能会遗漏一些问题——欢迎反馈,所有反馈都很有帮助。

⁉️ 常见问题 / 故障排除

问:时间流逝有多快/多慢?能让它更快吗?

答:据我所知,不能。速度取决于你的电脑性能,以及世界里的活动有多繁忙。不过,你可以试试以下方法,顺序大致从最简单到最麻烦:

  • 安装模组 Lithium(适用于 NeoForge)或 Canary(适用于 Forge);
  • 试试 UsefulMods 列表中的其他性能优化模组,尤其是针对“服务器”性能的模组(请记住,即使是单人游戏也有集成服务器,因此也能受益于服务器性能优化模组);
  • 在配置文件中设置一些“禁用器”选项,这些选项可以跳过一些你在时间流逝期间可能并不需要的游戏逻辑;
  • 降低视距/模拟距离(在适用的 MC 版本中,起作用的是模拟距离;在更早的 MC 版本中,模拟距离与视距相同);
  • 超频 CPU 和/或 RAM(这方面我帮不了你,涉及的内容很多);
  • 升级你的电脑。

问:我可以在整合包中使用这个模组吗?

答:当然可以!只要你愿意反馈模组兼容性问题,也欢迎提出功能或配置请求 😁

问:你能翻译成 X 语言吗?

答:我只会英语,欢迎你创建并提交任何语言的译文,或修正现有译文(你不需要学习 GitHub;只要下载最新的英文语言资源文件 这里,编辑后在评论区分享给我即可)——谢谢!

问:为什么停止支持 Fabric 了?

A. 出于技术原因。遗憾的是,尝试修复 Bug 并在 Fabric 上支持所有功能,正是 2.1.0 更新耗时过长的原因。技术层面的解释是,这源于 Fabric 对 Mixins 的依赖——虽然 Mixins 的本意是比 (Neo)Forge 的代码注入方式侵入性更小,但在实际应用中,对于那些需要在 Fabric 自身也使用 Mixins 的相同代码区域上使用 Mixins 的 Fabric 模组来说(比如 Sleeping Overhaul 中与睡眠相关的事件),它最终反而更具侵入性。抱歉!

常见问题

Sleeping Overhaul 2 支持哪些 Minecraft 版本?

Sleeping Overhaul 2 支持 Minecraft Java 版 1.18.2–1.21.1,共 5 个版本,可用的加载器:Fabric / Forge / NeoForge。下载时注意选择和你游戏版本一致的文件。

Sleeping Overhaul 2 怎么安装?

先用 PCL2 或 HMCL 启动器安装对应版本的 Fabric / Forge / NeoForge,再把下载的 .jar 文件放进游戏目录的 mods 文件夹,重新启动游戏即可。开启了版本隔离的,mods 文件夹在 versions/版本名 下面。运行环境:客户端和服务端都要装。

评论

登录后评论和评分

CosmicDan 的其他作品

查看全部 →