解读在mc“睡觉”不会下雨的底层逻辑!
MinecraftJava版21w44a发布!本次快照新内容主要是,让旧存档区块中的Y=0层按照1.18新世界地形来生成。
然而,在一项更改中提到:玩家只有在下雨时睡觉才会重置天气周期。这句话是什么意思呢?所以对于此,我们就展开对于《我的世界》玩家睡觉和天气规则的探讨。
01
这要从一个BUG开始聊起:
《我的世界》现在只有在下雨/雷暴的时候睡觉,才会重置天气周期,跳过下雨或者雷暴天气。很多人会疑惑:这个变化究竟是什么意思?
我们又要从一个BUG开始聊起了:其实早在JAVA版1.7.10的年代,就有细心的玩家发现一个奇怪的现象,你只要在Minecraft中每天按时睡觉,似乎就永远见不到下雨天。
于是大佬们查看代码发现,造成这一现象的原因是《我的世界》只要是在睡觉时就会重置天气周期,被重置的包括rainTime(下雨)和thunderTime(打雷)的时间周期。于是这就导致了一个比较严重的后果,如果说你每晚都在Minecraft正常睡觉,那可能你这辈子都见不到下雨和打雷的天气。
02
“睡眠和天气变化”背后的深层逻辑:
我们先从《我的世界》天气变化的规律开始聊起。Minecraft的天气看似随机但其实有一定的规律。例如同一个种子中,游戏会在固定的时间随机执行不同的天气,会在下雨、雨停两个天气状态中不停的切换。一场雨的持续时间是在3-13分钟,但雨停的时间会持续10-150分钟。
所以核心问题来了,睡眠会100%导致系统重置雨量计数器,也就是说雨停的时间将从0开始重新计算,持续10-150分钟。所以从你睡醒开始计算,下一场雨最快也要10分钟后来临,而mc的白天刚好只有10分钟。如果你一到傍晚就睡觉的话,那雨停的时间会不断地被重置,导致你此生都再也不可能在《我的世界》见到下雨。所以这是个很严重且不科学的BUG!
但现在这个问题被解决了,并且这个BUG将在《我的世界》1.18彻底消失。
03
解读:今后的mc会发生什么?
现在的《我的世界》只会在你下雨的时候睡觉,才会重置下雨的时间周期。我们来举个简单的例子:如果你在晴天的夜晚入睡,那可能你刚醒1分钟后,就迎来了下雨天,因为下雨的时间周期没有被重置。
而如果是在下雨天入睡,雨量计数器从0开始计数,当你醒来后最快也要10分钟之后,最慢150分钟后才会遇见下雨。
所以未来《Minecraft》可能会出现一个很奇怪但又很现实的现象,原本的大晴天入睡,一觉醒来阴雨连连~
所以你不得不承认,Minecraft变得越来越科学了!
标签: