- UID
- 18249
- 帖子
- 4898
- 积分
- 28574
- 阅读权限
- 0
- 注册时间
- 2006-4-26
- 最后登录
- 2012-7-23
- 在线时间
- 5960 小时
|
对所有建筑学可过单位的研究
本帖最后由 Neo_ly1983 于 2010-5-15 22:18 编辑
前言:
前几日发现TL的wiki里面已经有了所有单位和建筑的精确大小数据(以像素为单位),
http://wiki.teamliquid.net/starc ... _and_Building_Sizes
虽然以前已经有人讨论过这个问题,但是具体的数据略有出入。为了做一个比较全面的总结,故有此帖。
---------------------
先澄清几个基本概念,如果您已经知道了可以略过:
星际的单位粗略分为大体积,中体积,小体积,但这只是对承受攻击而言(例如爆炸式攻击对小体积减半)。而单位真实的几何体积才会影响到是否能通过一些建筑学。
概念一:所有单位无论形状如何,都是一个方向不变的矩形。
例如zealot,无论他的体位面对哪个方向,他的几何判定都是横向23像素,纵向19像素)
概念二:建筑虽然理论上都是几个标准的方块大小(一个方块是32*32像素),但实际大小是一个和标准方块占据空间之间有间隙的矩形。
例如人族基地,虽然理论上是4*3的方块,也就是128*96像素,但实际大小和上,左,右,下理论边界之间的空隙分别是(7,6,5,6)个像素。可以看到,不仅上下不对称,而且左右也是不对称的。(莫非是为了印证杨老的理论~ lol)
这就是为什么当两个建筑贴近摆放时,中间是有间隙的,这个间隙是这两个建筑在相应方向上和理论占据空间之间的空隙的和。
而单位是否能穿过建筑学,就是看它在垂直于前进方向的宽度是否大于总空隙。(大于则不能过,小于或等于就可以过)
----------------------
以下是TeamLiquid百科上所有建筑的空隙数据: (每列意义分别为 建筑名称,上空隙,左空隙,右空隙,下空隙,理论大小,实际大小)单位:像素
Buiding top <- -> bot box size real size
Terran Command Center: 7 6 5 6 128x96 117x83
Terran Supply Depot: 10 10 9 5 96x64 77x49
Terran Refinery: 0 8 7 0 128x64 113x64
Terran Barracks: 8 16 7 15 128x96 105x73
Terran Academy: 0 8 3 7 96x64 85x57
Terran Factory: 8 8 7 7 128x96 113x81
Terran Starport: 8 16 15 9 128x96 97x79
Terran Science Facility: 10 16 15 9 128x96 97x77
Terran Engineering Bay: 16 16 15 19 128x96 97x61
Terran Armory: 0 0 0 9 96x64 96x55
Terran Missile Turret: 0 16 15 15 64x64 33x49
Terran Bunker: 8 16 15 15 96x64 65x41
Infested Command Center: 7 6 5 6 128x96 117x83
Zerg Hatchery: 16 15 14 15 128x96 99x65
Zerg Lair: 16 15 14 15 128x96 99x65
Zerg Hive: 16 15 14 15 128x96 99x65
Zerg Nydus Canal: 0 0 0 0 64x64 64x64
Zerg Hydralisk Den: 0 8 7 7 96x64 81x57
Zerg Defiler Mound: 0 16 15 27 128x64 97x37
Zerg Greater Spire: 0 4 3 7 64x64 57x57
Zerg Queen's Nest: 4 10 15 3 96x64 71x57
Zerg Evolution Chamber: 0 4 15 11 96x64 77x53
Zerg Ultralisk Cavern: 0 8 15 0 96x64 73x64
Zerg Spire: 0 4 3 7 64x64 57x57
Zerg Spawning Pool: 4 12 7 13 96x64 77x47
Zerg Creep Colony: 8 8 8 8 64x64 48x48
Zerg Spore Colony: 8 8 8 8 64x64 48x48
Zerg Sunken Colony: 8 8 8 8 64x64 48x48
Zerg Extractor: 0 0 0 0 128x64 128x64
Protoss Nexus: 9 8 7 8 128x96 113x79
Protoss Robotics Facility: 16 12 7 11 96x64 77x37
Protoss Pylon: 20 16 15 11 64x64 33x33
Protoss Assimilator: 0 16 15 7 128x64 97x57
Protoss Observatory: 16 4 3 3 96x64 89x45
Protoss Gateway: 16 16 15 7 128x96 97x73
Protoss Photon Cannon: 16 12 11 15 64x64 41x33
Protoss Citadel of Adun: 8 24 7 7 96x64 65x49
Protoss Cybernetics Core: 8 8 7 7 96x64 81x49
Protoss Templar Archives: 8 16 15 7 96x64 65x49
Protoss Forge: 8 12 11 11 96x64 73x45
Protoss Stargate: 8 16 15 15 128x96 97x73
Protoss Fleet Beacon: 0 8 0 7 96x64 88x57
Protoss Arbiter Tribunal: 4 4 3 3 96x64 89x57
Protoss Robotics Support Bay: 0 16 15 11 96x64 65x53
Protoss Shield Battery: 16 16 15 15 96x64 65x33
下面的图直观的展示了建筑的空隙和单位的大小:
于是就可以方便的知道各种建筑的摆放是否能通过特定的单位。
为了总结出所有的需要达到特定目的的建筑学,必须穷举每种建筑的摆放方法,这只能通过程序了。
(具体代码就不写在帖子里了,有兴趣的可以查看下面的附件,程序的目的是检测什么建筑可以通过一种单位的同时挡住另一种单位,有问题欢迎讨论~)
现在举几个比较实用或者有意思的例子:
1. 人族让枪兵通过而挡住狂热者的人族横向建筑学的结果:
TBA TBB
TBA TVS
TBA TVI
TBA TBE
TBA TBT
TBA TBU
TBC TBB
TBC TVS
TBC TVI
TBC TBE
TBC TBT
TBC TBU
TBR TBS
TVF TBS
TBB TBS
TBS TBA
TBS TBR
TBS TVF
TBS TBS
TVS TBC
TVI TBC
TBE TBC
TBT TBC
TBU TBC
The above horizontal combinations can block zealot and pass marine.
The number of all block types is 24
(说明:例如第一个结果"TBA TBB",第一个字母T表明是人族的建筑,后面两个字母是建筑的建造快捷键,结果中的两个建筑在横向摆放时按左右顺序,在纵向摆放时按上下顺序。)
共有24种,但发现有很多不大实用的情况,比如TVA,TVS,TVI,TBA,TBT这些,不会在tvp前期zealot压制的时候就出现,可以在程序的"禁止建筑“数组中加入不想要的这些建筑,于是得到新的结果:
TBC TBB
TBC TBE
TBC TBU
TBR TBS
TVF TBS
TBB TBS
TBS TBR
TBS TVF
TBS TBS
TBE TBC
TBU TBC
The above horizontal combinations can block zealot and pass marine.
The number of all block types is 11
2. 刺蛇可以通过而狂热者不能通过的虫族横向建筑学(刺蛇宽度 小于 狂热者)
ZBH ZBD
ZBH ZVU
ZBH ZBC
ZBD ZBH
ZBS ZBH
The above horizontal combinations can block zealot and pass hydralisk.
The number of all block types is 5
3. 狂热者可以通过而刺蛇不能通过的神族纵向建筑学 (狂热者纵向长度 小于 刺蛇)
PVR PBN
PVR PVC
PVR PBY
PVR PVT
PVR PBF
PVR PVS
PBP PBN
PBP PVC
PBP PBY
PBP PVT
PBP PBF
PBP PVS
PVO PVR
PVO PVO
PVO PBG
PVO PBC
PVO PBB
PBF PBN
PBF PVC
PBF PBY
PBF PVT
PBF PBF
PBF PVS
PVB PBN
PVB PVC
PVB PBY
PVB PVT
PVB PBF
PVB PVS
The above vertical combinations can pass zealot and block hydralisk.
The number of all block types is 29
4. 居然还存在白球可以过大象却不能过的情况(神族横向建筑学)
PBC PVC
PBF PVC
The above horizontal combinations can block ultralisk and pass archon.
The number of all block types is 2
原来大象还要宽一点,呵呵。。
所以可以方便的测试各种需要的情况了。 |
-
1
查看全部评分
-
|