機制二:生物消失機制
我們都知道生成機制中有個生成範圍,其實也有一個消失範圍,顧名思義,生物離開這個範圍後將會消失(或者說處於非活躍狀態)。
所有的生物(除城鎮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離開計時區域時會重新開始倒計時。
來源:遊俠網