登陆注册
66052300000163

第163章 如何看懂调试界面 ③

在上一章中,作者提到了调试界面左边第二阵第四行之后的内容,在1.13.2到1.16.5版本期间发生了极大的变化。这一章,我们就要了解,到底发生了什么变化?

在1.16.5版本,第五行已经不是Biome了。这一行得和下面一行,即第六行一起看:

Client Light:光照强度(天空光照强度 sky,方块光照强度 block)

Server Light:光照强度(天空光照强度 sky,方块光照强度 block)

不难发现,新版本是将Light一行拆成了客户端光照强度(Client Light)和服务端光照强度(Server Light),实际作用和原本的Light一样,只不过分成了两端。比较奇怪的是,当你并没有在玩服务器而是在单人游戏时,Server Light还是会显示,只不过会显示成:

Server Light:(与上一行的天空光照强度一样 sky,与上一行的方块光照强度一样 block)

嗯,所以说为什么Mojang不直接把它给隐藏掉呢?

第六行下面的第七行CH和第八行SH,是新版本新添加的一对兄弟,也需要一起看:

CH S:xx M:xx

SH S:xx O:xx M:xx ML:xx

这两行的作用差不多,其用处都是显示玩家当前位置(X和Z坐标)最高的特定方块的Y坐标信息,区别就在于一个是客户端的信息(Client Highest)一个是服务端的信息(Server Highest)。

CH和SH都有S和M这两个参数。S的作用是显示玩家当前所处位置(X和Z坐标)最高的非空气方块的方块的Y坐标信息。M是显示玩家当前所处位置(X和Z坐标)最高的任意液体或会挡住你的方块的Y坐标信息。

M这个参数可能会比较难以理解。那就举个例子:

假设一个服务器的腐竹,由于服务器没人玩,很无聊,就用蜘蛛网从地上一直搭(创造模式)搭到Y坐标为212的地方。此时如果有一位玩家路过这个服务器,并且从蜘蛛网下面走了过去,那么在穿过蜘蛛网的时候,它的CH一行会显示为:

CH S:212,M:64

因为蜘蛛网并不会挡住玩家,它本身也不是个液体,导致并不会被M参数算到。但蜘蛛网并不是个空气方块,S参数便记录了它的坐标,所以最终得出了这个结果。

SH在CH的基础上还有O和ML这两个参数(1.18版本还多了个东西在S和O之间,只不过目前在预览版中显示为null:xx),但这两位并不适合单独介绍,而是应该和刚才那两位,搞一个表格(建议电脑或平板上观看):

参数名/方块类型——空气方块—挡人方块—液体—树叶—其他

S——————————×————√———√——√——√

O —————————×————√———×——√——×

M—————————×————√———√——√——×

ML—————————×————√———√——×——×

可能这仍然有些难以理解,但好在,这位腐竹又搞了两个奇怪的塔:

蜘蛛网--- 67

水--- 66

树叶--- 65

草方块---64

蜘蛛网--- 67

树叶--- 66

水--- 65

草方块--- 64

如果此时有一位管理大大从正上方路过,那么它的调试面板SH这一行将会显示:

①——SH S:67 O:65 M:66 ML:66

(因为蜘蛛网不是空气方块,所以S是67;因为蜘蛛网和水都不会挡住玩家,但树叶可以,所以O是65;因为蜘蛛网和水都不会挡住玩家,但水是液体,所以M和ML都是66)

②——SH S:67 O:66 M:66 ML:65

(因为.....所以S是67;因为树叶会挡住玩家,但蜘蛛网不会,所以O和M都是66;因为蜘蛛网不会挡住玩家,树叶不属于ML的计算范围,水是液体,所以ML是65)

理解了吧?不理解就再看一遍。

第九行和第十行即Biome(生物群系)和Local Difficultly(区域难度)。

第十一行,即SC一行,是在1.16版本中新加入的一行参数,作用是显示生物生成的详细信息:

SC:xx——当前可以生成生物的区块数量,似乎与渲染距离没有关系

M:xx——当前所有已生成的生物中,敌对生物的总数量

C:xx——当前所有已生成的生物中,动物的总数量

A:xx——当前所有已生成的生物中,环境生物(比如蝙蝠)的总数量

W:xx——当前所有已生成的生物中,水生动物的总数量

M:xx——当前所有已生成的生物中,其他类型的生物的总数量

最后一行,也就是Sounds行:

Sounds:xx/xxx + x/x(Mood xx%)

Sounds一行主要是关于游戏声音。Minecraft的游戏声音大致可以分为三类:

普通音效、环境音效、背景音乐

普通音效——游戏中的大部分声音是普通音效,比如放置方块、怪物/动物发出声音、脚步声等都算普通音效

环境音效——环境音效一般是指在特定场景下播放的声音,说白点就是你在挖矿的时候听到的怪声(晚上玩怪恐怖的)。环境音效除了在洞穴里有,还有在水下和在下界的环境音效。

背景音乐——不用多说,C418的音乐真好听。

加号的左边即是普通音效,具体是:

当前正在播放的普通音效数量/可以播放的普通音效数量上限

右边是环境音效,只不过此环境音效还包括了唱片机播放的音乐和游戏背景音乐(或者更准确的来讲应该使用英文Minecraft Wiki的streamed sounds):

当前正在播放的环境音效数量/可以播放的环境音效数量上限

在这一串参数后面,还有一个:

Mood xx%

这个东西目前中文Wiki上没有说明。作者将这东西放进百度生草机里搅拌了一下,得出来了:

情绪 xx%

生草机出来的东西准不准不知道,但这东西绝对跟你的情绪有关。

这东西的百分比后面有一个算法:Mood algorithm

Mood 算法大致的代码(伪)是这样的:

updateMood(mood):

tickDelay = 6000

maxLightLevel = 15

block = select a random block in a 17×17×17 block cube centered around the player

skyLight = block.getSkyLightLevel()

if (skyLight > 0):

mood = mood -(skyLight / maxLightLevel)* 0.015

else:

blockLight = block.getBlockLightLevel()

mood = mood -(blockLight - 1)/ tickDelay

if (mood ≥ 1.0):

player.playSpookySound()

mood = 0.0

else if (mood < 0):

mood = 0.0

翻译:

声明“更新情绪”方法(情绪):

设定变量“游戏刻延迟”值为6000

设定变量“最大光照等级”值为15

在以玩家为中心的17×17×17的立方体中随机选定一个方块

获取该方块的天空光照等级

如果(天空光照等级大于0)

设定变量“情绪”的值=情绪-(天空光照等级÷ 最大光照等级)× 0.015

否则

获取该方块的方块光照等级

设定变量“情绪”的值=情绪-(方块光照等级- 1)÷游戏刻延迟

如果(情绪大于等于1.0)

执行玩家类方法“游戏里诡异的声音”

设定变量“情绪”的值为0.0

否则如果(情绪小于0)

设定变量“情绪”的值为0.0

为了让你能够真正理解这算法是怎么算的,我们来举个栗子。

假设此时你正在矿洞里挖矿。在上一游戏刻中,你的情绪值为0.9999999999999232(Mood 99%),如果此刻游戏随机到了你正前方五格的方块,那么:

游戏通过执行block.getSkyLightLevel这个方法(Java语言中的方法类似于Minecraft中的函数,将一串代码包起来成为一个方法,需要执行的时候再调用),获取到了这个方块的天空光照等级为0。

因为这个方块的天空光照等级是0,所以游戏又执行了block.getBlockLightLevel这个方法,获取到了这个方块的方块光照等级,发现也是0。

于是游戏做了一个简单的运算:

mood = 0.9999999999999232-(0-1)÷6000

=0.9999999999999232-(-1)÷6000

=0.9999999999999232-(-0.0001666666666666)

=0.9999999999999232+0.0001666666666666

=1.0001666666665898

此时游戏发现1.0001666666665898大于1,所以执行了player.playSpookySound方法,然后你就听到了一辆地铁驶过的声音(Cave 11)。

但如果这个方块的方块光照等级大于等于1,或者这个方块的天空光照大于0,那么mood值反而会减少一些或不增不减,因为如果仔细观察上面的代码,你会发现计算mood时都是减法,要让mood增加,必须要让减数为负数,各种情况下,只有天空和方块光照等级都为0的情况下才能得出负数。

Mood算法每游戏刻都会执行一遍,每次执行最多增加1/6000。也就是说,在极端的情况下,即你完全置身于黑暗之中,Mood也需要每五分钟才能够轮回一次。

说了这么多,那么这个Mood xx%到底有什么用?

看一下上面的假设就知道了,当Mood到100%也就是你的情绪达到了顶峰时,游戏就会突然给你随机放一个环境音效,把你吓一跳。

嗯.......不愧是Mojang,把玩家的情绪拿捏得明明白白的。

到这儿。左边的第二方阵算是彻底研究完了,但本章还没有结束。

1.8.2版本,左边新出现了个第三方阵,这个第三方阵主要是关于调试本身的信息,它长这个样子:

(1.14版本之前)

Debug:Pie [shift]:hidden FPS [alt]:hidden

For help:press F3 + Q

(1.14版本之后)

Debug:Pie [shift]:hidden FPS + TPS [alt]:hidden

For help:press F3 + Q

第一行Debug主要是一些关于调试界面的参数。Pie指的是饼图,这东西可以通过按shift + F3显示(visible),默认是隐藏(hidden)。

什么?你说按了没用?

哦,这东西得这样按出来:

第一步,按住shift,由于和游戏按键冲突,按住时会蹲下或向下飞行。如果此时调试界面已打开,请先关闭调试界面。

第二步,继续按住shift,同时另一个手指按住F3。

第三步,两个手指同时放开。看,饼图出来了!(这饼图小得字都看不清啊)

FPS(1.14版本之后还有一个TPS,即Ticks Per Second每秒传输刻数)指的是帧(刻)生成时间柱状图,可以按alt + F3显示。在1.14版本之前,这儿只有一个柱状图。这个柱状图有两条参考线,一个参考线在最上面,代表30fps;另一个在中间,代表60fps。这个柱状图的柱子越低,即代表每帧运算的时间越快,FPS越高。

在1.13版本之前,这个柱状图很简陋,但相对于之后的版本,多了一个东西:

xx MB/s

作者猜测这可能跟读写速度有关,可能是内存的读写速度。

1.13版本更新后,这个柱状图就好看多了,首先它变大了,其次它有更丰富的颜色了——柱子越矮越绿,越高越红。

1.14版本更新后,这儿又多了个TPS的生成时间柱状图,看法和FPS的柱子差不多。同时,柱状图上面会显示当前最低和最高计算用时,单位为毫秒。

上面所述的两个附加调试图在关闭调试界面后,如果再打开调试界面,那么将会又一次隐藏。你可能以为我要说如何保持它默认开启,但可惜不是,因为没有这个功能。我要说的是:如何一次性将两个图表都打开。

你只需要按下shift + alt + F3即可。

第二行For help相信大家都看得懂,这就类似于软件中的“获取帮助”,这一行就是提醒你按F3 + Q可以了解更多东西。

具体有什么东西如下:

[?~]F3 + A:重新加载所有区块

[1.8~]F3 + B:打开或关闭实体的碰撞箱(白色线条)、朝向(蓝色线条)和生物的视线高度(红色线条)信息。

[?~1.13~]F3 + C:短按以/execute指令的形式复制玩家本身的坐标、旋转角度信息[1.13及之后]:

/execute in minecraft:overworld run tp @s......

长按10秒以使Minecraft游戏本身强制性崩溃

[1.13.1~]Ctrl + F3 + C:按住10秒以使Java本身强制性崩溃(有些键盘需要使用右Ctrl)

[?~]F3 + D:清空聊天记录,但仍然可以通过上下键查看之前输入过的指令和消息

[1.9~]F3 + F:使客户端渲染距离+1(范围为2~32)

[1.9~]F3 + shift + F:使客户端渲染距离-1(范围为2~32)

[1.10~]F3 + G:打开或关闭区块边界(红色,玩家所处区块为黄色)、玩家所处区块区段边界(蓝色)信息

[1.4.2~]F3 + H:打开或关闭高级提示框(即显示物品详细信息,如物品ID、NBT标签)

[1.13~]F3 + I:将玩家所注视的方块或实体在服务端的信息复制下来,具体如下。

方块:/setblock 坐标信息,方块ID[方块状态]

实体:/summon 实体ID,实体坐标,实体NBT

[1.13~]shift + F3 + I:将玩家所注视的方块或实体在客户端的信息复制下来。

[?~1.12.2|1.17~]F3 + L:Wiki上说是“生成、保存性能分析数据”。在1.12.2版本,按住F3 +L会显示“正在加载可见区块”,但实际啥也没有发生。

[1.9~1.16~|需要执行/gamemode权限]F3 + N:在上一个游戏模式和旁观模式切换[1.15之后]在创造模式和旁观模式中切换[1.15及之前]

[1.4.2~]F3 + P:开启或关闭当Minecraft窗口没被选中时自动暂停的功能

[1.9~]F3 + Q:显示帮助列表

[?~1.9]F3 + S:重新加载声音

[?~]F3 + T:重新加载所有资源包(包括原版资源包)和声音

[1.16~|需要执行/gamemode权限]F3 + F4:在四种模式中切换,可以使用鼠标选择或按F4下一个,松开F3即切换到选定模式

[1.14.1~]F3 + Esc:暂停游戏而不显示菜单,多人模式无法暂停

[1.2.4~]shift + F3:显示饼状图

[1.8.2~]alt + F3:显示柱状图

[1.8.2~]shift +alt + F3:我全都要显示

到这里,调试界面左边这一栏才算介绍完成。

本章到此结束。

同类推荐
  • 网游之顶尖高手

    网游之顶尖高手

    Jk君,“勇者”顶尖高手。俱乐部宣布其退役,继而ID改名,引来了一场轩然大波。……离去的痛,悄然隐藏,失去的,要亲手夺回来。吾的荣耀,谁人能夺!下一次,我必定会把阴谋踩在脚下。…游戏背景,格斗类操作网游《艾尔之光》新书急需推荐票和收藏,拜托了,嫌少先收藏!群号:160215298
  • 网游之传奇里的道士

    网游之传奇里的道士

    不怎么会写大家可以先看看,已经想好了怎么结局,在完善细节内容绝不太监。
  • 我的基地

    我的基地

    《创世纪》开幕了!财团,创投,社团,公会,基金,等等无数群狼巨鳄虎视眈眈,战局一触即发!创世纪——用心创造快乐~
  • 我把未来世界做成游戏

    我把未来世界做成游戏

    唐宇穿越到100多年以后,世界因为灵气复苏,变得大不一样,处处充满危险。好在这里有一座基地,唐宇成了指挥官,可是这座基地完全是空壳,连个手下都没有。在这种情况下,唐宇依靠基地能够联系两个时空,把未来世界做成一款游戏,召唤玩家、制作任务,努力把未来变成一个和谐、美好的新世界。唐宇:“大佬都是隐居幕后的,我绝对不会冲到第一线!做事要从心,生活才美好。”
  • 网游之末日游龙

    网游之末日游龙

    江浩在击败了对手夺得神魔时代第一高手的荣耀时刻,却被神秘代码从游戏中劫持到了一个和游戏设定极为相似的世界之中。原本已经接受现实的他,正准备一展所长,在这个世界打下一片属于自己的天空,却发现这个世界竟然有着他曾经的痕迹……是阴谋还是奇遇?是拯救还是灭亡?摆脱命运的束缚,由我带你前行……
热门推荐
  • 关系网

    关系网

    本书介绍了掌握关系要领的五大核心问题:读懂关系、修炼关系、发展关系、掌控关系、善用关系。在此基础上,深入分析了搞定关系的28个成功定律:抓命脉、识人性、读心术、定军规、潜规则等。
  • 今天请你吃大碗面

    今天请你吃大碗面

    从鞋子被弄脏到饭店吃面的一路描写,小说其实一直在写心情,小饭店服务员的手指插到面碗里,一次次在换,一次次的手指还是插在面碗里,到最后这情绪演变为一场杀人游戏……
  • 邻人的犯罪

    邻人的犯罪

    隔壁家的小狗吵死人了。我们只是想偷偷溜进去把它弄走,没想到不但没惹上官司,天上还掉下了馅饼。
  • 冰语雪雪言冰

    冰语雪雪言冰

    书中具不符实,全当娱乐。喜欢的加入书架呦~
  • 倾城执念

    倾城执念

    一座城,是命运的眷顾,是欲望的源泉。他们从世界的各个角落来到这里,他们是命运的宠儿,他们是世界的巅峰。心中的执念,是他们毕生追寻的执着,还是沦为命运的一场游戏。
  • 考古寻踪:穿越人类历史之旅

    考古寻踪:穿越人类历史之旅

    这是一部普及型著作,向广大读者介绍考古学和考古研究成果。书中按照人类历史发展的顺序,比较系统地概括了世界范围内各国考古工作者,尤其着重介绍了德国考古工作者所取得的最新重大考古发现和研究成果,是对英、法、美等国家同类著作的重要补充。《考古寻踪:穿越人类历史之旅》语言生动、通俗易懂,概括了人类从旧石器时代猿人几百万年的生理进化和物质文化的漫长发展,经过新石器时代的农耕、畜牧和定居生活,以及青铜器和铁器时代在冶炼加工金属的基础上逐渐出现劳动分工和贫富分化,最终产生社会阶层,出现世界文明古国,一直描述到包括第二次世界大战在内的近现代历史。作者恰到好处地抓住了人类各个历史时期的特点,简明扼要地介绍了人类社会的演变发展进程,同时突出了考古学在研究各历史时期的卓越贡献。
  • 天行

    天行

    号称“北辰骑神”的天才玩家以自创的“牧马冲锋流”战术击败了国服第一弓手北冥雪,被誉为天纵战榜第一骑士的他,却受到小人排挤,最终离开了效力已久的银狐俱乐部。是沉沦,还是再次崛起?恰逢其时,月恒集团第四款游戏“天行”正式上线,虚拟世界再起风云!
  • 黄金猎手

    黄金猎手

    被家里的老头调教了25年集医术和武术一身的凌风在这一天终于被赶出家门了。出门的时候,老头很正经的说:“要想证明自己不是个废物,就出门去办一件事,办好了,我就能实现你发梦都笑醒过来的最伟大的两个理想——一个是你以后在家都不用放牛了,另一个是让你取了你师姐……”凌风知道要替死老头办的事绝对不会那么简单,甚至有丢掉小命的可能,但为了理想,好吧,忍了。于是,为了一生中最伟大的两个理想而奋斗的放牛娃凌风终于走出了他人生辉煌的道路。
  • 绝世保安

    绝世保安

    陈天被甩,遭遇车祸,奇迹苏醒,脑细胞发生变化,人生就此迎来转折点。随后因为一次机遇,成为了苏颜公司的保安,兼职苏颜保镖。
  • 妖临异域

    妖临异域

    她,是来自异世的一缕幽魂,却在此地体验到了前世从未有过的爱恨情仇,任他风起云涌,且看我九蝉问天!