在《泰拉瑞亚》中,游戏自然不可能是一帆风顺的,会有这许许多多的怪物来干扰玩家的游戏进程,这些怪物的刷新遵循着一些机制与规则,今天小编就带大家详细的了解一下怪物的生成机制,一起来看看吧。
首先,刷怪到底是个什么过程?
小编温馨提醒:本站只提供游戏介绍,下载游戏推荐89游戏,89游戏提供真人恋爱/绅士游戏/3A单机游戏大全,点我立即前往》》》绅士游戏下载专区
在terraria中,怪物,生物和其他NPC们都会生成在一个固定距离外,并且依靠自己的AI进入玩家视线(靠近玩家)。这个过程就是生物的生成(NPC spawning),将这个过程以高效率进行就可以称之为刷怪。
怪物生成的速率,怪物生成的最大数量,生成怪物的种类都取决于时间、环境、深度(背景墙)和其他很多条件。
生成机制一:刷怪范围
当怪物生成程序运行的时候,会以玩家为中心确定一个刷怪范围,怪物会在这个范围内刷新。
这个范围是:左右62~84格,上下35~47格。反之,玩家左右62格内、84格外,上下35格内,47格外就不会进行生成怪物的程序(也就是不会刷怪)。记住这一点和视线范围没有任何关系,但可以以视线范围为参考大致划定刷怪范围。
此处奉上一张经典老图以便各位理解
因为刷怪范围与视线范围无关,所以在1920*1080分辨率下,怪物是可以生成在视线范围内的(不过大多数人的分辨率都是1440*900吧)
不过当玩家在地图的左右两边的时候,情况就不一样了。因为怪物生成的范围是以玩家为中心的,当玩家到左右两边时,怪物生成范围的边界就会在视线范围内,所以当在地图边界时,怪物就可以生成在视线范围内了。
1440*900分辨率下,全屏模式横向大概是85格,1920*1080分辨率下大概是120格。
机制二:生物消失机制
我们都知道生成机制中有个生成范围,其实也有一个消失范围,顾名思义,生物离开这个范围后将会消失(或者说处于非活跃状态)。
所有的生物(除城镇NPC和游商外)当远离玩家一定距离时都会消失。这个距离是以玩家为中心的横向左右共504格,纵向上下共283.5格(左右各252格,上下各146.75格),这个范围是1920*1080分辨率下全屏模式的屏幕面积的17.64倍。
也就是说,当一个生物(上面说的特例除外,还有BOSS)与玩家的距离大于这一范围时会消失;一次刷怪的尝试最终落在这个范围以外,那么也不会生成怪物。
Wiki上有一个“the inner rectangle”的概念:
它为一个内部矩形(在此称为计时区域),一个120*67.5格的区域(以玩家为中心),约等于1920×1080分辨率的屏幕区域的大小。 当一个生物在这个区域之外时,一个计时机制开始倒计时一段时间(默认情况下它是750ticks,或12.5秒,但是存在很多例外); 当它达到零时,生物会消失,不管它是否被视为活跃状态。生物 重新进入玩家的计时区域内会重置这个倒计时,这意味着这个计时区域内的生物永远不会消失。 较大实体的分段(长直类生物),只要头部保持活跃状态,如世界吞噬者,就不受这些计时机制的限制。
Wiki原文:
The inner rectangle, here referred to as the Timer region, is considerably smaller at 120 blocks wide by 67.5 blocks high, equal to a 1920x1080 screen region plus the size of the entity. While an NPC is outside this region, a timer begins to count down for a period of time (by default it is 750 ticks, or 12.5 seconds, but there exist a lot of exceptions); when it reaches zero, the NPC will despawn, no matter whether it is counted as active. Reentering a player's Timer region will reset this timer, meaning that NPCs that remain within this region will never despawn. Segments of a larger entity, such as the Eater of Worlds, are not subject to these timers as long as the head remains active.
如何理解生成范围、消失范围和计时区域之间的关系呢?
举个例子:
A在以你为中心的可刷怪范围内生成了,但A在计时区域之外,所以过了12.5s, A就会消失。
如果A到了消失范围之外,那么A就会立刻消失,不论计时区域外的针对A的倒计时是否结束。
如果A在计时区域之内,那么A就永远不会消失,对A的计时也停止,直到A离开计时区域才会重新开始对A计时。
如果A在倒计时期间进入的计时区域,那么倒计时会暂停并清零,A离开计时区域时会重新开始倒计时。
机制三:影响刷怪的条件和生物生成过程
先说一个概念:关于刷怪—地图中每秒都会进行很多次生物生成的尝试程序,但并不是每次尝试都能成功。
有许多条件可以影响一次刷怪尝试的成功与否和刷怪的效率高低:
(熟记所有影响条件并合理利用可以最大限度增加场地效率)
1.生物不会在实体方块中生成
2.生成尝试不会在人工放置的背景墙区域内进行(意味着如果你把一片放置了人工背景墙的区域封闭起来,那么这片区域就不会刷怪)
3.当一次生成尝试落在岩浆(需要实体岩浆)上时,这次生成尝试就会被判定为失败,不会生成怪物(这与1,2条不同,前面的是生成尝试不会在那里进行,而这里是这次尝试不会生成生物,是变相的略微降低了刷怪效率)
4.生成一个生物需要比它的体积(碰撞箱)更大的区域才能正常生成。我们知道,terraria中最小生物也需要占用一格空间,所以我们就可以通过不断隔开一格高的空间来同样达到防止刷怪的目的。(示意图见下图)
注:在terraria中,生物的生成与光照无关
生物生成过程:
上图需要注意的地方:
1、固体方块和人工背景墙不会影响刷怪效率。所以可以通过填满大部分刷怪区域,只留下一个小空间来控制进行刷怪尝试的位置。
2、不论第一步随机到哪里,总是先移动到正下方的地面再刷怪(高空除外)。换句话说,不管刷怪空间多大,只需要一层地面。
3、第一步随机选择的方块是整个168x94矩形内的,包括玩家附近的安全区域。只是在之后的步骤中,如果下方的地面在安全区域中,刷怪会失败。也就是说,如果安全区域的地面正上方有太多空间,会导致刷怪失败的概率比较大从而影响效率。
4、“地面没有足够空间”是指自然地形中的小坑洼以及岩浆。
5、"*"所指的鹰身女妖是个特例,因为它并不在地面上生成,飞龙也是如此。