[閒聊] 怪物的體積&生怪需要的空間
怪物有他的"體積",
在生怪的時候會撿差要生成位置的空間,會檢查有沒有被有體積Block、生物、液體阻擋
至於生成的位置呢?
自然生怪:(最少要兩格高沒有普通方塊,不詳細敘述,這是先決條件)
假設是要選定在(x,y,z)生成
怪物的位置會是在(x+0.5,y,z+0.5)生成,即該block中心底部如下圖
▋▍ ▄▄
▋▍ ▃▃ ▎█▊
▋▍ ▎▊ ▆ ██ ▎█▊
█ ■█■ █ ■█■ ■█■
寬度不足1 寬度1.4高度0.9的蜘蛛 史來姆 Tiny 0.6 需1x1x1
高度1.8(大部分) (結果上需要3X3方塊空間) Small 1.2 需3x2x3
高度>2Enderman Big 2.4 需3x3x3
凋零骷髏 洞穴蜘蛛跟※魚這種高寬都小於1的就只需要1x1x1
生怪磚生成地點: Ghast 體積4x4x4需要..5x4x5
假設生怪磚座標是(x,y,z) ████
x += 4 * (1 ~ -1) /* nextDouble()-nextDouble() */ ████
z += 4 * (1 ~ -1) /* x,z可為+4~-4之間任意值非整數 */ ████
y += 1 , 0 , -1 /* 中心的區域機率較高 */ ████
/* 垂直位置為跟生怪磚同高度以及下兩層底部 */ ■■█■■
檢查怪物數量上限是,生怪磚水平延伸 2*半徑4、垂直延伸4的範圍
如下圖所示(黃色為生怪位置,粉紅為檢查上限生怪區域)
垂直圖 水平圖
↑ □□□□□□□□□□□□□□□□□
□□□□□□□□□□□□□□□□□
□□□□□□□□□□□□□□□□□
________________ y+1 □□□□□□□□□□□□□□□□□
________■______ y 9 □□□□■■■■■■■■□□□□□
________________ y-1 □□□□■■■■■■■■□□□□□
↑↑↑↑↑↑↑↑↑ □□□□■■■■■■■■□□□□□
-4-3-2-1X+1+2+3+4 □□□□■■■■■■■■□□□□□
↓ □□□□■■■■■■■■□□□□□
← 17 → □□□□■■■■■■■■□□□□□
□□□□■■■■■■■■□□□□□
□□□□■■■■■■■■□□□□□
由於生怪水平位置是在這個平面上 □□□□□□□□□□□□□□□□□
各個位置都能夠分布,不像自然生怪 □□□□□□□□□□□□□□□□□
只有在Block中心位置分布 □□□□□□□□□□□□□□□□□
所以需要的空間理論上需要 □□□□□□□□□□□□□□□□□
□□□□□□□□□□□□□□□□□
水平擴展怪物的寬度一半(假設選到最邊緣邊線上的時候
即普通怪寬度0.6需要8.6x8.6 (即10x10)//少數怪物稍微寬一點,請參考後述生物體積表
蜘蛛 寬度1.4需要9.4x9.4 (即10x10)
不過實作上通常普通怪物只建造8x8空間,正好水流距離8,在加一排水道(8x9or9x9)
(邊緣部分:距離邊緣0.6的口區域選道其實會沒辦法生怪,
不過選道邊緣的機率其實比較低,你非常講究的話才弄成10x10)
蜘蛛生怪磚實作上通常會往外在拓展一圈(10x10)
畢竟蜘蛛比較寬水道也需要兩格寬,正好是水流距離8+兩格寬水道
垂直部分,普通怪高度2,所以生怪區域的上層還需要在往上挖空一層
如上垂直圖藍綠色部分
---
生物體積表 ※表有自然生成 ◎表生怪磚生成
寬 高
※ EntityCreeper 0.6 1.8
※◎ EntitySkeleton 0.6 1.8
※ └WitherSkeletion 0.72 2.16
※◎ EntitySpider 1.4 0.9
◎ EntityCaveSpider 0.7 0.5
EntityGiantZombie 3.6 10.8
※◎ EntityZombie 0.6 1.8
※◎ EntityPigZombie 0.6 1.8
※ EntityEnderman 0.9 2.9
◎ EntitySilverfish 0.3 0.7
※◎ EntityBlaze 0.6 1.8
※ EntityWitch 0.6 1.8
EntityWither 0.9 4.0
※ EntityPig 0.9 0.9
※ EntitySheep 0.9 1.3
※ EntityCow 0.9 1.3
※ EntityMooshroom 0.9 1.3
※ EntityChicken 0.3 0.7
※ EntityWolf 0.6 0.8
※ EntityOcelot 0.6 0.8
EntityVillager 0.6 1.8
EntityPlayer 0.6 1.8
└屍體、睡覺狀態 0.2 0.2
※ EntitySquid 0.95 0.95
EntitySnowman 0.4 1.8
EntityIronGolem 1.4 2.9
※ EntitySlime(Tiny) 0.6 0.6
(Small) 1.2 1.2
(Big) 2.4 2.4
※ EntityMagmaCube (同上)
※ EntityGhast 4.0 4.0
※ EntityBat 0.5 0.9
EntityDragon 16.0 8.0
├Head 6.0 6.0
├Body 8.0 8.0
├Tail1 4.0 4.0
├Tail2 4.0 4.0
├Tail3 4.0 4.0
├Wing1 4.0 4.0
└Wing2 4.0 4.0
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.38.245.146
※ 編輯: jeffffliu 來自: 114.38.245.146 (01/02 21:57)
推
01/02 22:16, , 1F
01/02 22:16, 1F
推
01/02 22:38, , 2F
01/02 22:38, 2F
※ 編輯: jeffffliu 來自: 114.38.245.146 (01/02 22:59)
※ 編輯: jeffffliu 來自: 114.38.245.146 (01/02 23:32)
推
01/03 01:44, , 3F
01/03 01:44, 3F
→
01/03 10:42, , 4F
01/03 10:42, 4F
※ 編輯: jeffffliu 來自: 114.38.245.146 (01/03 10:43)
→
01/03 13:14, , 5F
01/03 13:14, 5F
※ 編輯: jeffffliu 來自: 114.38.245.146 (01/03 14:46)
→
01/03 14:46, , 6F
01/03 14:46, 6F
Minecraft 近期熱門文章
PTT遊戲區 即時熱門文章
-25
52