作者jeffffliu (女子 食我 口阿)
看板Minecraft
标题[闲聊] 怪物的体积&生怪需要的空间
时间Wed Jan 2 21:54:38 2013
怪物有他的"体积",
在生怪的时候会捡差要生成位置的空间,会检查有没有被有体积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)
1F:推 Foremanytz:专业推 生怪房知识+1 01/02 22:16
2F:推 yshinri:蠹 ㄉㄨˋ 01/02 22:38
※ 编辑: jeffffliu 来自: 114.38.245.146 (01/02 22:59)
※ 编辑: jeffffliu 来自: 114.38.245.146 (01/02 23:32)
3F:推 mabikerry:蠢 ㄔㄨㄣˇ(误) 而且那怪很讨厌 所以骂它蠢没问题的(? 01/03 01:44
4F:→ jeffffliu:其实我比较想要打英文 只是单纯不想打那个字 01/03 10:42
※ 编辑: jeffffliu 来自: 114.38.245.146 (01/03 10:43)
5F:→ Nuaaukw:淫鱼……更正,银鱼。 01/03 13:14
※ 编辑: jeffffliu 来自: 114.38.245.146 (01/03 14:46)
6F:→ jeffffliu:水平图少话一排_a 01/03 14:46