在泰拉瑞亞中,敵怪、小動物、和其他 NPC 會在屏幕之外生成並按照它們的AI進入屏幕區域。敵怪的生成速率、敵怪的最大數量、以及敵怪的生成種類完全取決於一天中的時段、生物群落、地面圖格的類型,以及其他一些因素。
生成速度[ | ]
基礎[ | ]
遊戲中每個嘀嗒都會重新確定一次敵怪生成。[1] 這個處理中會考慮兩個變量:生成速度和最大生成數,生成速度是敵怪在每個嘀嗒生成的幾率,而最大生成數限制此時刻活躍的敵怪數量。[2]
默認的生成速度是 1/600。[3]這意味着每個嘀嗒中,有 1/600 幾率生成一個敵怪。由於 1秒鐘有 60 個嘀嗒,所以在給定的一秒鐘內有 9.52% 幾率生成至少一個敵怪。
默認的最大生成數是 5。[4]這意味着僅當所有當前活動敵怪的 NPC 欄位之和低於 5 時新敵怪才能生成。大部分敵怪都默認佔據 1 個 NPC 欄位;所有具有更高或更低 NPC 欄位的敵怪清單見下表。活動敵怪排除掉了許多被視為同一個敵怪不同部位的敵怪,比如[[Template:worms|]]的身體和尾巴部位,因為一隻巨型蠕蟲就有 6–8 個體節(即:單獨的敵怪),否則他們就要佔用數量不成比例的 NPC 欄位。對於 NPC 生成目的來說,城鎮 NPC 不視為活躍 NPC。不視為活躍的敵怪清單見下表。
已達到最大循環執行次數
|
|
自然生成速度[ | ]
1/x:生成速度 y:最大生成數 |
生成速度和最大生成數有着設定的數值,根據環境而不同。它們是針對下表中提到的環境而正式定義的。未列出的事件採用單獨的機制來控制生成速度;Boss通常會佔用足夠多 NPC 欄位來阻止大多數其他生成。
困難模式之前[ | ]
生物群落/事件/ Boss 戰 |
地表 | 地下 | 洞穴 | 地獄 | ||
---|---|---|---|---|---|---|
白天 | 夜晚 | [5] | ||||
1/600 5 | 1/360 6 | 1/108 10 | 1/300 8 | 1/240 9 |
1/600 10 | |
叢林 | 1/240 7 | 1/144 9 | 1/60 15 | 1/120 12 | 1/96 13 | n/a |
1/390 6 | 1/234 7 | 1/70 13 | 1/195 10 | 1/156 11 | n/a | |
地牢 | n/a | n/a | n/a | 1/90 14 | 1/72 15 | n/a |
[7] | 1/240 5 | 1/144 6 | 1/60 11 | 1/120 8 | 1/96 9 | n/a |
沙塵暴 | 1/540 6 | 1/324 7 | 1/97 12 | n/a | n/a | n/a |
地下沙漠 | 1/120 15 | 1/72 15 | 1/60 15 | 1/60 15 | 1/60 15 | n/a |
哥布林軍隊 | 1/20 10 + 每玩家 1.5 |
n/a | n/a | n/a | ||
[血肉牆|血肉牆]]戰 | n/a | n/a | n/a | n/a | n/a | 1/1800 3 |
神聖之地[8] | 1/600 5 | 1/360 6 | 1/108 10 | 1/300 8 |
1/156 11 |
n/a |
困難模式[ | ]
生物群落/事件/ Boss 戰 |
地表 | 地下 | 洞穴 | 地獄 | ||
---|---|---|---|---|---|---|
白天 | 夜晚 | [5] | ||||
1/540 6 | 1/324 7 | 1/97 12 | 1/243 10 | 1/216 11 |
1/540 12 | |
叢林 | 1/216 9 | 1/129 10 | 1/60 15 | 1/97 15 | 1/86 15 | n/a |
1/351 7 | 1/210 9 | 1/63 15 | 1/157 13 | 1/140 14 | n/a | |
地牢 | n/a | n/a | n/a | 1/72 15 | 1/64 15 | n/a |
[7] | 1/216 6 | 1/129 7 | 1/60 13 | 1/97 11 | 1/86 12 | n/a |
沙塵暴 | 1/216 9 | 1/129 10 | 1/60 15 | n/a | n/a | n/a |
地下沙漠 | 1/108 15 | 1/64 15 | 1/60 15 | 1/60 15 | 1/60 15 | n/a |
1/20 10 + 每玩家 1.5 |
n/a | n/a | n/a | |||
[血肉牆|血肉牆]]戰 | n/a | n/a | n/a | n/a | n/a | 1/1620 3 |
1/540 6 | 1/324 7 | 1/97 12 | 1/243 10 |
1/140 14 |
n/a |
另外,生成速度會受此區域中活躍敵怪數量影響。活躍敵怪越少,新的敵怪就會越快生成:
- 如果所有活躍敵怪的 NPC 欄位總和小於最大生成數的 20%,生成速度的分母會乘以 0.6。
- 如果所有活躍敵怪的 NPC 欄位總和大於等於最大生成數的 20% 且小於 40%,生成速度的分母會乘以 0.7。
- 如果所有活躍敵怪的 NPC 欄位總和大於等於最大生成數的 40% 且小於 60%,生成速度的分母會乘以 0.8。
- 如果所有活躍敵怪的 NPC 欄位總和大於等於最大生成數的 60% 且小於 80%,生成速度的分母會乘以 0.9。
(注意所有乘積會向下取整到最接近的整數。)
下表列出了一些此機制的例子。要按如下方式讀取:如果自然生成速度和最大生成數(按以上描述確定)和所有激活的敵怪的總 NPC 欄位數和頭三列中的數值相等,那麼生成速度就會變更為最後一列的數值。
生成速度 | 最大生成數 | NPC 欄位總和 | 改變後的生成速度 |
---|---|---|---|
1/600 | 6 | 0.8 (最大生成數的 13.3%) |
1/360 |
1/173 | 15 | 10 (最大生成數的 66.7%) |
1/155 |
1/430 | 12 | 10 (最大生成數的 83.3%) |
1/430 |
人工改變生成速度[ | ]
某些物品當其使用或者放置後可以改變生成速度和最大生成數,如下表所示。所有效果都是乘性而非加性的。
物品 | 生成速度因子[9] | 有效生成速度 | 最大生成數 |
---|---|---|---|
水蠟燭(手持亦可) | 1/0.75 | +33% | +50% |
戰鬥藥水 | 1/0.5 | +100% | +100% |
鎮靜藥水 | 1/1.3 | −23% | −30% |
向日葵 | 1/1.2 | −17% (僅限) | −20% |
和平蠟燭(手持亦可) | 1/1.3 | −23% | −30% |
隱身藥水(僅限) | 1/1.2 | −17% | −20% |
這些效果不會自身疊加,也就是說,一支水蠟燭、一支和平蠟燭、或一棵向日葵和多支或多棵的效果是相同的。
水蠟燭和和平蠟燭會互相抵消,雖然它們並不按相同的絕對值來改變生成速度。如果二者都處於活躍狀態,(例如:手持和平蠟燭同時附近放着水蠟燭)則不會施加任何影響。
這有個例外情況:水蠟燭放置(明確地不是手持)在太空中[10]總是會提高生成速度,無論附近是否有和平蠟燭。但是它們的有效性仍取決於附近的和平蠟燭:
物品 | 生成速度因子[9] | 有效生成速度 | 最大生成數 |
---|---|---|---|
水蠟燭放置在太空中 (附近無放置或手持的和平蠟燭)
|
1/0.375 | +167% | +50% |
水蠟燭放置在太空中 (附近有放置或手持的和平蠟燭)
|
1/0.5 | +100% | +50% |
此外,附近的[[仙靈|]]效果與向日葵和隱身藥水相同,有效生成速度會降低 17% 並且最大生成數會降低 20%。
到目前為止,生成速度無法提升到大於 1/60 且最大生成數無法提升到大於 15。二者都將在那個點被截斷。上表中列出的入侵事件的生成速度和最大生成數則不受此限制。生成速度和最大生成數沒有下限。
城鎮 NPC 對生成速度的影響[ | ]
附近存在城鎮 NPC 通常會降低生成速度和最大生成數。此效果在地獄和[[墓地|]]中會有所調整。
附近城鎮 NPC 的數量 | 生成速度因子[9] | 有效生成速度 | 最大生成數 |
---|---|---|---|
1 | 1/1.5 | −33% | −13% |
2 | 1/(9/7) | −22% | −27% |
≥3 | n/a | n/a | −40% |
附近城鎮 NPC 的數量 | 生成速度因子[9] | 有效生成速度 | 最大生成數 |
---|---|---|---|
1 | 1/(50/41) | −18% | −5% |
2 | 1/(15/11) | −27% | −10% |
≥3 | 1/1.8 | −44% | −17% |
附近城鎮 NPC 的數量 | 生成速度因子[9] | 有效生成速度 | 最大生成數 |
---|---|---|---|
1 | 1/1.66 | −40% | −4% |
2 | 1/2.33 | −57% | −7% |
≥3 | 1/3 | −66% | −13% |
當附近有 3 個或更多個城鎮 NPC、或有骷髏商人存在時,不會有敵怪生成。這僅對地獄和墓地以外的區域有效且僅對經典世界有效——在家模中,敵怪依然有每嘀嗒 3.33*1/30 (3.33%) 的幾率會生成。事件的敵怪和 Boss(及其servants)不受此限制約束。
旅行模式[ | ]
在行模中,可以手工調整生成速度,從 0×(禁止生成)到 10× 正常速率。即使將生成速度設為 0×, 也依然會召喚Boss、挖掉墓石依然會導致鬼魂生成,並且某些天界敵怪也能生成。
生成位置[ | ]
遊戲中的每個玩家都會生成自己的敵怪。如果兩個玩家在同一個區域內,怪物會以兩倍於僅一個玩家時的速度出現。最大生成數的限制依然有用,這意味着即使有兩個玩家在同一個地點,你也無法在這地點附近聚集起 30 個普通怪物。(別忘了,蝙蝠計為 1/2,且一些特定敵怪計為 2 或更多。)
選擇一個地方來生成敵怪[ | ]
Verify 當遊戲確認要生成一個敵怪時,首先會在玩家(更具體地說,是包含玩家碰撞框左上角的那個圖格)周圍的矩形區域內隨機選擇一個圖格。能選擇的距離玩家最遠的距離是東面 84 格、西面 83 格、向上 46 格、向下 45 格。如果選中的圖格是實心物塊,會再次嘗試另選一個。被制動的圖格不計為實心。如果選中的圖格有玩家放置的能阻止敵怪生成的牆,也會再次嘗試另選一個圖格。
一旦找到空圖格,就向下移動直到接觸到地面。(注意這可能使得這個圖格在玩家下方超過 45 格。如果它最終位於「活躍矩形」之外,就會即刻取消生成。)如果這個位置有足夠空間可供敵怪生成,這就會是最終選定的圖格。例外情況是當玩家處於能生成鳥妖和很多其他飛行敵怪的區域時。在這種情況下,遊戲不會嘗試尋找地面圖格。
選定的圖格接下來會經過檢查以確保它不在玩家周圍的「安全」區域內。它不能在東西 62 格或上下 34 格內。此外,選定的圖格空間必須完全位於以每個玩家的碰撞框中心點為中心的 2088 × 1172 像素的矩形之外。(如果玩家沒有騎乘坐騎,這個矩形的上邊緣是在前面提到的左上角圖格之上 34 + 3/16 格處,這意味着若玩家站立於半物塊上,NPC 可以在玩家上方正好 35 格處的地面上生成,但若玩家站立於完整的物塊上則不行。)
使用某些物品會導致怪能在比正常更遠的地方生成。當裝備着步槍瞄準鏡或狙擊鏡時,僅當玩家選擇了與此兼容的槍時才會如此,但無論玩家是否縮小了視野均如此。
物品 | 生成範圍 | 安全範圍 | ||
---|---|---|---|---|
水平 | 垂直 | 水平 | 垂直 | |
普通 | 84 | 46 | 62 | 34 |
步槍瞄準鏡(或其派生物) | 114 | 62 | 92 | 50 |
雙筒望遠鏡 | 124 | 68 | 102 | 56 |
狙擊步槍 | 124 | 68 | 102 | 56 |
狙擊步槍加上步槍瞄準鏡(或其派生物) | 132 | 72 | 110 | 60 |
註:如果正在使用深度計、羅盤、或類似的東西,每格等於 2 英尺,所以將所有尺寸翻倍即可得到以英尺為單位的距離
在 Mobile version中,玩家周圍的無生成區域是 68×48 格,生成區域是 112×62 格。另外,敵怪不能在比左右 34 格上下 24 格更近的地方生成,也不能在比左右 56 格上下 31 格更遠的地方生成。
選擇一個敵怪類型來生成[ | ]
所生成的敵怪的類型取決於很多因素,包括但不限於:
- 一天中的時段
- 天氣(例如,憤怒雨雲怪和冰雪巨人要求是雨/暴雪)
- 深度
- 東西方距離(海洋敵怪、火星探測器、哥布林偵察兵等)
- 玩家的當前生物群落(腐化、流星、叢林等,對於大多數特定於生物群落的飛行敵怪)
- 敵怪生成時所在的圖格(叢林草、黑檀石、大理石等,對於大多數biome-specific grounded enemies)
- 玩家背後的牆(叢林蜥蜴磚牆、地牢磚牆等)
- 敵怪的生成位置背後的牆(地牢磚牆的變體種類)
- 特定事件(血月、日食、入侵事件、等等)
- 隨機性
備註[ | ]
- 當站在世界的左邊緣或右邊緣時,敵怪可以在屏幕內生成,只要它們距離玩家至少 62 格遠。屏幕大致是 85 格寬,因此在這種情況下,敵怪可以在最遠處的四分之一屏幕內生成(不一定是這樣,一些玩家的屏幕要更大,寬度高達 120 格)。
- 裝備雙筒望遠鏡會讓活躍矩形變得更大。
歷史[ | ]
- 電腦版 1.4.0.1:
- 將以下敵怪添加到不會被視為活動的 NPC 中:骷髏王之手、機械炮、機械鋸、機械鉗、機械激光、火星飛碟、火星飛碟炮塔、火星飛碟炮、和荷蘭大炮。
- 提高了地牢中的自然生成速度和最大生成數
- 地下層中的生成速度由 1/120(困難模式之前)和 1/97(困難模式)提高到 1/90(困難模式之前)和 1/72(困難模式)。
- 洞穴層中的生成速度由 1/96(困難模式之前)和 1/86(困難模式)提高到 1/72(困難模式之前)和 1/64(困難模式)。
- 地下層中困難模式之前的最大生成數由 13 提升至 14。
- 提高了地下沙漠中的自然生成速度和最大生成數:
- 困難模式之前地表在白天的生成速度由 1/180 提高至 1/120。
- 困難模式之前地表在夜晚的生成速度由 1/108 提高至 1/72。
- 地下層中困難模式之前的生成速度由 1/90 提升至 1/60。
- 洞穴層中困難模式之前的生成速度由 1/72 提升至 1/60。
- 地表的最大生成數提升至 15。舊的最大生成數在白天是 10(困難模式之前)/ 12(困難模式),夜晚是 12(困難模式之前)/ 14(困難模式)。在地下沙漠的最大生成數現在在任何時間和所有條件下都是 15。
- 電腦版 1.2.3: 修正了在土層中點以下時生成速度比任何地方的預期值都高的 Bug。
參考[ | ]
- ↑ A tick is a time unit countable by the software. Most of Terraria's updating logic happens every tick. A tick has the length of 1/60th of a second, hence there are 60 ticks in a second and 3600 ticks in a minute.
- ↑ Information taken from the Desktop 1.4.2.3 source code, method
SpawnNPC()
inTerraria.NPC.cs
. There may be inaccuracies, as the current Desktop version is 1.4.4.9. - ↑ Information taken from the Desktop 1.4.2.3 source code,
Terraria.NPC.cs
中的defaultSpawnRate
字段。 There may be inaccuracies, as the current Desktop version is 1.4.4.9. - ↑ Information taken from the Desktop 1.4.2.3 source code,
Terraria.NPC.cs
中的defaultMaxSpawns
字段。 There may be inaccuracies, as the current Desktop version is 1.4.4.9. - ↑ 5.0 5.1 血月只影響地表以上的生成速度。
- ↑ 6.0 6.1 在雪原生物群落中天氣還會額外影響生成速度和最大生成數。
- ↑ 7.0 7.1 僅當隕石生物群落不和the Dungeon, the Underground Desert,、沙塵暴期間的沙漠、叢林、或邪惡生物群落重疊時才適用。如果它和這些生物群落中的任何一個重疊,則使用重疊的生物群落的生成速度和最大生成數。
- ↑ 如果是人工創建的。
- ↑ 9.0 9.1 9.2 9.3 9.4 分母的乘積會向下取整到最接近的整數。
- ↑ 更準確地說,是在地表線到世界頂部的 65% 高度以上的地方,即,和困難模式之前中會生成太空獨有敵怪的區域是一樣的。參見太空§備註.
zh:NPC 生成