【Terraria】怪物生成机制与高效刷怪场地建造(PC)

首先,刷怪到底是个什么过程?
在terraria中,怪物,生物和其他NPC们都会生成在一个固定距离外,并且依靠自己的AI进入玩家视线(靠近玩家)。这个过程就是生物的生成(NPC spawning),将这个过程以高效率进行就可以称之为刷怪。
怪物生成的速率,怪物生成的最大数量,生成怪物的种类都取决于时间、环境、深度(背景墙)和其他很多条件。

生成机制一:刷怪范围
当怪物生成程序运行的时候,会以玩家为中心确定一个刷怪范围,怪物会在这个范围内刷新。
这个范围是:左右62~84格,上下35~47格。反之,玩家左右62格内、84格外,上下35格内,47格外就不会进行生成怪物的程序(也就是不会刷怪)。记住这一点和视线范围没有任何关系,但可以以视线范围为参考大致划定刷怪范围。
此处奉上一张经典老图以便各位理解

注:移动版的刷怪范围与pc不同,为左右的31格~56格,左右的24格~34格。
因为刷怪范围与视线范围无关,所以在1920*1080分辨率下,怪物是可以生成在视线范围内的(不过大多数人的分辨率都是1440*900吧)
不过当玩家在地图的左右两边的时候,情况就不一样了。因为怪物生成的范围是以玩家为中心的,当玩家到左右两边时,怪物生成范围的边界就会在视线范围内,所以当在地图边界时,怪物就可以生成在视线范围内了。
1440*900分辨率下,全屏模式横向大概是85格,1920*1080分辨率下大概是120格。
关于刷怪范围,有一点提醒:
关于望远镜和狙击目镜,虽然它们能够增加视距,但是并不能像使用heros或cheatsheet mod那样看到怪物的生成(1920*1080分辨率屏幕除外),使用它们的时候,刷怪范围的中心则是以屏幕中心为准,而非玩家。

机制二:生物消失机制
我们都知道生成机制中有个生成范围,其实也有一个消失范围,顾名思义,生物离开这个范围后将会消失(或者说处于非活跃状态)。
所有的生物(除城镇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中,生物的生成与光照无关

生物生成过程:
图片来自@fly_虫子_
下图需要注意的地方:
1、固体方块和人工背景墙不会影响刷怪效率。所以可以通过填满大部分刷怪区域,只留下一个小空间来控制进行刷怪尝试的位置。
2、不论第一步随机到哪里,总是先移动到正下方的地面再刷怪(高空除外)。换句话说,不管刷怪空间多大,只需要一层地面。
3、第一步随机选择的方块是整个168x94矩形内的,包括玩家附近的安全区域。只是在之后的步骤中,如果下方的地面在安全区域中,刷怪会失败。也就是说,如果安全区域的地面正上方有太多空间,会导致刷怪失败的概率比较大从而影响效率。
4、“地面没有足够空间”是指自然地形中的小坑洼以及岩浆。
5、"*"所指的鹰身女妖是个特例,因为它并不在地面上生成,飞龙也是如此。


机制四:生成速率(spawn rate)
生物的生成速度也被生成速率所影响。
游戏中的每一帧都会根据生成速率的机制概率性生成怪物。
(速率值越大,生成速度越低,反之亦然)
每秒有60帧,所以速率值为600代表每秒有10%的几率生成一只怪物(每秒0.1只怪)
,100的值就代表每秒有45%的几率生成一只怪。(具体环境与生成速率值的对应见下一,二图,其中的max spawn后文会讲到,三图为中文翻译,将spwan rate直接转换为了生成速度—图作者@蒲氏黏盲鳗 )
正常状态下最小(快)的生成速率值为60,最大生成数量为15。



同时,可刷怪范围内怪物数量与所在环境最大生成量的占比也会影响生成速率。
当怪物数量为最大生成量的20%以下时,生成速率值会*0.6。
为最大生成量的65%以下时,生成速率值会*0.8。
为最大生成量的80%以下时,生成速率值会*0.9。
(永远不要忘了生成速率值越大,效率越低)
举个例子:当玩家所在的环境生成速率值为600,最大生成量为10时,只占用两个或更少的生成量时,生成速率值会降到360,直到刷出新的怪物。
这也就是为什么有的时候场地的怪物越多,刷怪的效率越慢的原因。
几个注意点:
NPC的存在大大降低了生物产生的速度,同时也减少了最大生物数量。 当3个或更多NPC或骷髅商人出现时,就不会生成怪物了。 但是史莱姆雨,海盗入侵,月亮事件(月球事件,南瓜月,霜月)等入侵事件会无视这个限制。
确定刷怪速率时,一些环境的刷怪速率会相互覆盖。 如腐化,地牢,陨石坑和丛林环境都是相互排斥的刷怪速率。 地牢环境拥有最高的优先级,然后是丛林,腐化,最后是陨石坑。 例如,如果陨石坑和丛林环境同时存在,这个复合环境将使用丛林的刷怪速率。(总结一下就是—多个环境重合时,将选择刷怪速率高的环境的刷怪速率作为这个复合环境的刷怪率的基准)
入侵事件(包括哥布林,雪人军团,海盗入侵和火星人入侵)和月球事件(月球事件/南瓜月/霜月)是一个特例; 他们无视任何增加刷怪速率或限制刷怪速率或生成量的物品(包括水蜡烛/战争药剂)
下图是能够改变刷怪速率的物品一览:


机制五:最大生成量
当游戏在一个区域内决定怪物的最大数量时,就会依据“最大生成量”(max spawns)这个机制。每个怪物都有自己的生成量的数值(这并不是按照有多少只怪物计算的)。
例如:蝙蝠的生成量数值为0.5,普通怪物为1,稀有怪(小boss,如冰巨人,圣骑士等)的数值通常为3,一个boss的数值为5,但雕像怪,boss召唤出的小怪(如钢铁吞噬者的激光眼,肉山的饿鬼和血蛭)不占用生成量。
注:长直类boss(如世界吞噬者,钢铁吞噬者)的每一节都会算作一个实体,如果你召唤了一个钢铁吞噬者,那么将占用80*5=400的生成量。

机制六:多人模式下的怪物生成
游戏中的每个玩家都会产生自己的敌怪物。 如果两个玩家在同一个区域,怪物的出现速度会比只有一个玩家快两倍。 但最大生成量的规则仍在使用,这意味着即使2名玩家在同一地点,也不能在现场附近收集两倍于最大数量的普通怪物。 (不要忘记,蝙蝠的生成量为1/2,一些特殊的敌人的生成量为2或更多。)

有一个大家可能会认识错误的点:仇恨值
在装备乌龟套,甲虫套,日耀套或血肉指虎的时候,我们会看到简介栏有“吸引敌人”之类的字样,但不要误认为它们会增加刷怪效率,它们的附加属性是增加仇恨值。
仇恨值是什么?当怪物和玩家有距离的时候,仇恨值越大,怪物就会在越远的地方开始主动攻击玩家,反之仇恨值小的话,怪物就会在离的近的情况下也不会攻击玩家,所以这和刷怪效率没有关联。
(但是,如果仇恨值大的话,处在较远的怪物就也会主动攻击玩家而不是游走在原地,这么说来也会略微增加效率,但增加的方式和那些药剂水蜡烛是不一样的)

那么如何建造一个刷怪场地呢?
为了更好的应用刷怪机制,我们可以建造出来刷怪场地,通过在场地内快速生成怪物,快速击杀来达到刷怪的目的。
首先讲述的是最简单,同时效率也很高的一种场地,因为场地范围的形状和刷怪范围一样,我个人称之为矩形场地。
如何建造这种简单的场地呢?首先要明白它的工作原理,这种场地当然很简单啦,上面也都说过了,那就不多说废话了。
(地上场地)
1.首先明确你要刷的怪物所属的环境
2.找到一个合适的地形(以地面平坦为最佳)
3.使用可穿墙的道具探明场地下方20格内有无空洞(有空洞的话怪物会刷在洞内影响效率)
4.确定你的场地的范围(以刷怪范围为准自行确定,一定要将场地的地面控制在可刷怪范围内,否则可是刷不了怪物的)
5.讲场地内的地面\空中的方块挖平坦\挖掉(如果想要美观的话可以敲掉背景墙,但自然背景墙与刷怪效率无关)
6.将其他你不想让它刷怪的区域铺设上岩浆以防刷怪(这是最简单的方式,其实造成的效率损失可以忽略不计)
7.在场地上方建造一个供你站着和保护自己的“据点”(高度的话,保证第四点括号内的要求即可)
附图以供参考




地下环境:
与楼上同理,就是需要查看更大范围的空洞和铺设岩浆



注:产生的敌人类型取决于许多因素,包括但不限于:
1.时间
2.天气(例如,生成愤怒的雨云和冰巨人需要雨/暴雪)
3.深度
4.地图上的相对X坐标(如海洋和其他位置)
5.目前的环境(腐化,流星,丛林等)
6.地面方块类型
7.自然背景墙(如地牢砖墙,神庙砖墙,蜘蛛洞墙等)
8.特别事件(血月,日食,入侵事件等)
9.不同端的不同版本(如pc,pe,3ds,psv,ps4,xbox等)
这些都是你建造场地时应该考虑到的条件
刷怪机制应用一:多环境刷怪场
原作者已不可考,参考图片来自@hongzhilili (感谢)
什么叫做多环境刷怪场呢?就是只在单个场地里可以刷多个环境的怪物,但可以不是同时刷(其实也很难做到),只要在一个场地里能够刷多个环境的怪物就可以称之为多环境刷怪场。(见下图1,2)
原理:所刷怪物的所属环境还有另一个判定标准,在玩家附近的所有可刷怪区域,如果这些区域下方的地面全部是同一环境的环境方块的话(也可能允许少量其他环境方块存在),那么就会刷所属环境的怪物,而不需要达成构成环境所需的方块数量。(前提除地面周围的方块不能构成环境干扰,最好是不能构成环境的方块)
所以我们就可以在一个场地内的地面铺设多层如上所述的环境方块,然后全部虚化,当想刷对应环境的怪物时再实化相应方块,以达到刷多个环境的目的(见图三)



此场地的各环境效率测试(刷神圣环境的时候会有bug无法出怪,原因未知)





刷怪机制应用二:刷钱厂(图片来自@us_danger 感谢)
效果:约50s一铂金(视运气好坏而定)
视频介绍:
1.http://tieba.baidu.com/p/5685447124
2.

原理:通过召唤物不断地攻击怪物,因为幸运金币(贪婪指环)的效果,每次攻击都有几率额外掉落钱币(不论伤害大小),所以可以使用史莱姆法杖(伤害最低),召唤一些召唤物(保证攻击频率不会太低进而降低效率),在一个刷怪场地里刷怪从而快速赚钱。
装备:贪婪指环,史莱姆法杖,召唤3~4个召唤物
场地:选择地图两侧海洋的中心的上方,紧贴海面搭建平台,下面再搭建3~4层平台(海面以下),间隔两格,长度20格左右。平台上方建造一个丛林环境,人物站在水中(一个两格的水坑就可以)。如果想兼刷钥匙的话可以在玩家两边搭建由腐化/血腥冰块构成的环境。
注意事项:
1.贪婪指环由海盗入侵中掉落的幸运金币和金指环合成,最好要佩戴贪婪指环,否则捡不全钱币
2.史莱姆法杖的后缀要求最差的,选择的饰品/防具也要尽量不加攻击,以免召唤物对怪物破防造成更多伤害以降低刷钱效率
3.一定要保证海底距你的距离在可刷怪范围内
4.人物所站的平台或是平台上的方块不能搭建到海面以下,以防平台/方块边缘的怪被卡住进入不到玩家下方,降低效率
5.丛林环境至少需要80格丛林方块(覆盖丛林草的淤泥或神庙砖)
6.之所以选择丛林环境的水池,是因为这个环境只会刷鱼(大部分为巨骨舌鱼),而鱼的AI(或者说活动方式)最为简单,而巨骨舌鱼的血量和防御也很适合刷钱
7.这个装置的成功与否在于是否能够生成巨骨舌鱼,如果不能,那么这个场地的效率会很低



刷怪机制应用三:与电路的结合
①.传送器:因为生物和玩家一样,都可以被传送,所以我们就可以在刷怪场地内摆放传送器,让怪物生成后被传送到一个你指定的地方,这样就可以增加你刷怪的效率。(注:怪物在场地内都是在最下面一格生成,然后才会移动到别的地方,所以只在最下面摆放传送器即可达到传送所有生物的目的)你还可以搭配由故障逻辑门构成的递次电路来依次传送。
②.半砖:生物和玩家一样,都可以被半砖推动,所以可以使用半砖与传送器一样来移动怪物。它还可以用来将怪物推离传送器以防被连接到高频驱动的传送器不停的传送器。你还可以使用半砖将一个区域内的怪物都移动到一个空间内(如岩浆池),在松露蠕虫农场或其他蠕虫农场中半砖也可以用来推动爬行速度缓慢的蠕虫。
图片来源:us_danger,本人在b站的搬运视频


刷怪机制应用四:刷怪保护装置
视频:(原作者@Cirnegefive )

在刷怪过程中,我们时常会被怪物攻击(花后地牢尤其是),有时候甚至会被怪物杀死,这就对我们的刷怪效率产生影响,为了更愉快的进行刷怪,进一步保证人物的安全,实现全自动刷怪,我们需要一个刷怪保护装置。(后面介绍原理)在刷怪过程中,我们时常会被怪物攻击(花后地牢尤其是),有时候甚至会被怪物杀死,这就对我们的刷怪效率产生影响,为了更愉快的进行刷怪,进一步保证人物的安全,实现全自动刷怪,我们需要一个刷怪保护装置。(后面介绍原理)
所需物品:蜂蜜梳,电路装置(最主要的是弹射物压力板)


主要原理:(此处略讲,原理和装置建造源视频中有详细介绍)
首先,将自己围在封闭空间内可以防御非穿墙伤害,当人物受到穿墙伤害时,因为蜜蜂梳的被动效果,会释放出小蜜蜂,由于这个小蜜蜂会被判定为弹射物,所以它能触发弹射物压力板,而后弹射物压力板会激活人物下方的传送器将玩家传送至远处。因为怪物的消失机制,之前对玩家造成伤害的怪物由于离玩家过远而被刷掉。在等待陷阱延时装置再次发出信号将玩家传送回去的时候玩家可以回复生命,而后被传送回去继续刷怪。(这一过程是全自动的)
刷怪机制应用五:天梯神教
在1.3以及1.3.1版本更新了棱镜以及传送带后,这个神教就应运而生了。顾名思义,这个神教就是通过将怪物聚集在一条线上,然后用棱镜击杀,用传送带像梯子一样不断的运输战利品。这个装置的威力可不容小觑。它能在晚上9点之前到达南瓜月15波并一个晚上赚取超过200白金!
视频:

帖子源链接(详细讲解)https://forums.terraria.org/index.php?threads/showcase-pumpkin-moon-coin-farm-255-platinum-coins-in-a-night.44661/


附:如何高效刷怪
在运用刷怪机制建造出有足够刷怪效率的刷怪场地后,我们就要想:如何才能快速杀死生成的怪物呢?
你可以选用如下方式:(多种方法配合效率更高,在怪物不被骗伤的情况下)如果不能及时杀死堆积的怪物的话,会严重影响效率。
①.自己使用武器:这个方法需要使用可以自动攻击而不是需要点一次才能攻击一下的武器。可以保证伤害(击杀效率),但是要保证你能攻击到怪物。
②.召唤物:可保证效率,但会使玩家扛不住伤害,需要更好的保护。还需要保证召唤物的仇恨一直在怪物上。
③.陷阱:效率较低,但可完全解放双手,更加安全。(可使用岩浆,无限TNT等来增加伤害)注:1.3版本以后陷阱无法造成暴击
④.矿车:用矿车撞击怪物或用机械矿车的激光击杀怪物,虽可免疫击退但因为近身攻击易死亡。

最后附上原贴地址:https://tieba.baidu.com/p/5672519216?pn=3(原作者为本人)