【方核解析】鱼淹死了,早期文案
大家好,我是山药,这篇文章是我去年九月份还是十月份的时候(具体啥时候我忘了QAQ)写的方核解析视频:“鱼为什么不会淹死”的文案,没错,这个系列是我去年开的【捂脸】。今年重新开始制作的时候有了新的制作思路和更多的考虑,所以整个系列的风格和视频文案上也修改了一些地方。
去年的文案对于普通观众来说,其实还是有一些“相对有点专业性的东西”在里面的(有,但只有一点点 XD),我自己也觉得就这样放在那里吃灰有点可惜,就放出来给大家看看吧,也不枉我去年的努力(反正也不费事嘿嘿)
众所周知,MC中,鱼在水里是不会淹死的,这就很神奇,为什么鱼不会给淹死呢?Hello大家好,我是乾山瑶,欢迎来到方核解析,有人可能会说,废话你见过会淹死的鱼嘛?诺(出现一只鱼,然后它被淹死了)。(山药按:现在看看开头,tnnd怎么这么像个营销号(x))
在上期视频中我们介绍了数据驱动这一概念,了解到在基岩版里很多原版内容都实现了数据驱动,其中就包括了我们的鱼,同时在上期节目中,我们还提到了个组件的概念,组件决定了游戏中事物的一些属性,同样的,作为实现了数据驱动的游戏内容中的一员,鱼也拥有着各种各样的组件,其中,让鱼能在水中“呼吸”的,就是我们的breathable组件,breath是呼吸的意思,而-able后缀则是可、可以的意思,连在一起直译过来,breathable在这里大致就是可呼吸的意思,从名字上我们就可以看出这个组件是决定了与实体呼吸相关的各种属性。
在MC中,鱼有很多种,但打开这些鱼的行为文件,从中找到名为breathable的组件,你会发现,它们都是一样的,其中前面的minecraft是它的命名空间,这里我们不用在意。仔细观察,我们会发现鱼的breathable组件设置了四个属性。
total_supply属性
其中,total_supply属性决定了鱼在不可呼吸的环境中憋气能憋多久,单位为秒。totoal supply直译过来就是总供应,或者总供给的意思,结合上下文我们可以把它理解为是:供应鱼的“呼吸养料”,也就是在环境无法提供呼吸条件的前提下,鱼体内的呼吸养料能供应多长时间。
当然这是帮助各位理解的说法,这个所谓的呼吸养料也只是杜撰出来的,游戏中真正的运作方式不是这样的,真正表现在游戏具体行为中是,鱼离开它可以呼吸的环境后,过了多长时间以后才会进入窒息状态,这里的值是15秒,也就是说鱼离开它的可呼吸环境后,要过了15秒才会进入窒息状态,当然我们可以给它改得长一些,比如我们改成11451.4。
这时候鱼离开可呼吸环境后需要过11451.4秒才会进入窒息状态,大约相当于3.18个小时,这个时间就很长了啊,或者我们给它改得短一些,比如改成0,这时候鱼一离开它的可呼吸环境就会立马进入窒息状态,不会有任何挣扎与折磨,走得非常安详。
suffocate_time属性
接下来是suffocate_time,直译过来是窒息时间的意思,在这里这个属性是指实体在窒息状态下每隔多久会受到一次伤害,单位为秒,默认值为-20,也就是说,如果不特别设定,某个实体在窒息状态下默认是每隔20秒受一次窒息伤害的,你没看错啊,这个属性的值要求是负值。
而对于鱼来说它的suffocate_time值是0,这意味着鱼在处于窒息状态时,每隔0秒钟会受到一次窒息伤害,当然,实际在游戏中会有大概0.5秒的间隔。当该属性值大于0时,效果同值为0时一致。
我们也可以给它调大一些,比如调成-114514,这时候,鱼在窒息状态下需要经过114514秒也就是大概31.8小时才会受到一次窒息伤害,而一般情况下,一条正常的鱼要受到三次窒息伤害才能死亡(山药按:当时测试的时候确实是要受三次窒息伤害才能死亡,结果今年重新开始做的时候,发现新版本(我用的1.18.31.4版本)的鱼只需要受两次窒息伤害就会死亡了(鳕鱼倒是还是三次),当时这个音频已经录好了,出于无奈(懒狗心态 x)就直接删了这段了),因此这时候这条鱼将可以在这里蹦跶114514秒乘以3也就是大约95.4283小时,才会咽下最后一口气,让我们祝它成功。
breathes_air属性
再之后是breathes_air,顾名思义,这个属性决定了实体能否在空气中呼吸,可以看到这里的值为false也就是假的意思,这意味着鱼不能在空气中呼吸。
除去false外,这个属性的值还可以设置为true也就是真,与之前介绍的两个属性不同,这个属性只可能设置为true或false两个值中的一个,原因也很简单,一个生物,要么能在空气中呼吸,要么就不行,只有这两种情况,因此这里使用true和false两个值来表示是再恰当也不过了。
这时候如果我们把鱼的breathes_air设置为true,那么鱼也就可以在空气中呼吸了,于是乎,路游器诞生了(x)
breathes_water属性
同样的,对于breathes_water来说,顾名思义,这个属性决定了实体能否在水中呼吸,可以看到,这里值是true,也就是说,鱼是可以在水里呼吸的,这也是鱼为什么不会淹死的奥秘所在,如果我们把它设置成false,那么这一类鱼就会做出一个违背祖宗的决定:它将失去在水中呼吸的能力,成为一条会被水淹死的鱼。
视频结语
结语
这个系列去年因为各种因素没能开成,但最终在一年后的今天开始更新了,emmm怎么说呢,本来我都打算靠走量撑起来这个系列的了,所以第一期视频能有现在这个数据我还是很吃惊的,这也给了我很大的动力,感谢大家的支持吧,我也会更加努力更新下去的,没啥好说的了,做下期视频去了(爬了.png)