设为首页收藏本站

八达网

 找回密码
 注册
查看: 398|回复: 36
打印 上一主题 下一主题

用移动阻挡你的敌人——从一个简单的星际运行原理到第11大核心竞争力 zz from ps

[复制链接]

289

主题

3

好友

5万

积分

光明执政官

跳转到指定楼层
1
发表于 2008-11-17 14:53 |只看该作者 |倒序浏览
用移动阻挡你的敌人——从一个简单的星际运行原理到第11大核心竞争力
这个标题中的“第11大”只是戏谑的自称,吸引眼球,请大家不必当真。

多年以前我就注意到一个现象,这个现象估计很多人有过隐约的感觉,但我从未看见大家讨论过。也许是我没看见这些讨论,那此文权当复习。如果的确是大家未曾讨论过的东西,则它确实可以带给你一点帮助。

关于这个现象的隐约感受就是:“作战时,一边打一边微调最前方的部分的走位,似乎可以对自己有利。”不过这太笼统了,有的人的感受更具体一点:“微调最前方的部队的走位,似乎可以延缓对方的冲锋,即使我只是在胡乱地微调。”

例证之一,就是用雷车阻挡zelot。TVP阵地决战,有的人似乎有很好的“雷车阵型”,但雷车都站住不动,似乎很容易就被插入坦克阵,zelot会冲过那些细小的缝隙向坦克近身。而如果你毫无目的地扯动一下雷车,即使看上去雷车之墙空隙更大了,那些zelot却傻傻地被卡住,容易在近身前就被消灭。

这是为什么呢?让我们做一个小实验。两个SCV排成一条横线,让左边的SCV走到右边SCV的右边空地:
SCV甲    SCV乙    目的地
我们会发现,SCV甲将会灵活地绕开SCV乙,到达目的地。视距离和方向的不同,SCV甲可能会直接向上一小格,然后横向移动到目的地上方,再下一格;或者先接近SCV乙,然后贴着SCV乙绕开,再下到目的地,等等。无论电脑为你选择哪一种走法,整个过程都是流畅的,没有任何停顿。

实际上,当SCV甲被下达MOVE指令的同时,电脑已经算好了全部的行走路线。之后,它只是按照预定路线移动罢了。在计算路线的时候,阻挡的SCV乙和其他诸如河流、高地一样,成为地形的一部分。因此,算好的路线已经避开了SCV乙。

有的朋友要问了:“但是一个SCV和一块高地不同,SCV乙是活动单位,你都按照下达MOVE指令时SCV乙的位置来计算地形,那到时候SCV乙走掉了了,这个路线不是就不够优秀了?本来可以走直线,还是要走弯路。”

您问得好,可以猜想,的确会走弯路。不信再做一个实验:选择那种SCV甲会贴着SCV乙绕开的路线,在SCV甲到达SCV乙身前之前,就把SCV乙移走,看看SCV甲怎么动?不出所料,SCV甲还是走他的预定路线,绕开了一个不存在的SCV乙的身位,,就好像那里有个隐形的SCV乙一样!

为什么会这样设计呢?Blizzard为什么不做得更好,让它走直线呢?(解决办法:SCV甲每走一格都重新集算路线,就可以在SCV乙让开以后,走上直线的幸福道路了)

这是因为,计算路径是一个非常耗时间的运算。(题外话:计算精确的最优路径是一个NP问题,实际一般是用近似的最优路径的A*算法。即使你认为现在电脑比当时快得多,是否可以采用计算精确路径的算法,答案也是不可能,这超出了计算机的计算能力。即使是采用近似算法,这个计算也不怎么快。)

既然非常耗时,那我们就要节约计算资源了。所以,我们一旦计算了一条路线,就会坚定的让它走下去。(再顺便一提,move到一个指定空地和move到一个活动单位的位置不同。比如你用狗追scv,狗的目的地就是不断变化的。但是由于计算路线很慢,所以不可能每当scv移动一点点都去重新计算路线,而是要间隔一定时间才重新计算路线。这就是为什么scv不断转向的时候狗会犯傻,从而活得更长久的原因,也是为什么要手动操作狗才能更好的追scv的原因。)

Ok,目前为止,我们验证了:一个单位会走计算好的预定线路,即使线路上的阻挡单位消失了。
接下来才是真正的问题:“刚才的问题还好办,最多是SCV甲没有走最短的线路。可是万一有单位挡在了他预定的线路上,那可怎么办呢?”

简单,让我们再次实验。在SCV甲尚未接近SCV乙时,向上移动一点SCV乙,挡住他的预定路线!

这时我们终于看到了这一幕:SCV甲被卡住!他似乎失去了方向,迟缓了下来,经过一番停顿之后,才重新启动,再次绕开SCV乙,并最终抵达目的地。

很明显,游戏逻辑是这样的:SCV甲每走一步之前,要看看这一步到底能不能走(换言之,又没有出现新的东西挡住下一步的位置)。能走的话最好,不能走怎么办呢?那就——停下,重新计算路线!

此时我们终于可以回到前文所述的“隐约感受”上来了:为什么扯动的雷车可以延缓zelot的冲锋?因为zelot不停地在被迫做这件事情:预定路线受阻、停下、重新计算路线!预定路线受阻、停下、重新计算路线!预定路线受阻、停下、重新计算路线!预定路线受阻、停下、重新计算路线!预定路线受阻、停下、重新计算路线!预定路线受阻、停下、重新计算路线!预定路线受阻、停下、重新计算路线!预定路线受阻、停下、重新计算路线!预定路线受阻、停下、重新计算路线!

整个理论终于解释清楚了,让我们看看一些简单应用:

一个probe不停在drone前方晃动,阻挡drone;

雷车定时横向扯动,阻碍zelot冲锋;zelot定时重新点击坦克,在被迫停顿之前,人为重新加算路线,从而绕开雷车阻挡!(重新点击坦克时的重新计算路线不是因为遇到阻挡才发生,所以不会停下;而整个双方操作的目的,就是比对方更晚下达命令,从而得到正确的路线计算!)

龙骑zelot冲锋时,zelot在龙骑开始交火时要重新A或移动,避免被自己龙骑卡住(同样,比龙骑停下的时间更晚下达命令,从而绕开阻拦)


全文完

230

主题

1

好友

8万

积分

仲裁者

gg复gg,只为日ziyi

2
发表于 2008-11-17 15:04 |只看该作者
很强大。。这么多字。
回复

使用道具 举报

小兹 该用户已被删除
3
发表于 2008-11-17 15:16 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

0

主题

0

好友

1万

积分

航母

航空母舰

4
发表于 2008-11-17 15:20 |只看该作者
大致看了下 很猛
操作基本靠A,意识基本靠吹……银河第一P--------------------------------------------------------------------哥玩的是星际,释放的是寂寞
回复

使用道具 举报

0

主题

0

好友

897

积分

龙骑士

5
发表于 2008-11-17 15:21 |只看该作者
很好的文章
回复

使用道具 举报

5

主题

0

好友

2万

积分

大和

翻译组菜鸟

6
发表于 2008-11-17 15:22 |只看该作者
/..................

拍不死你丫的!
回复

使用道具 举报

0

主题

0

好友

9111

积分

大象

7
发表于 2008-11-17 15:26 |只看该作者
技术贴啊 顶了
回复

使用道具 举报

1159

主题

11

好友

11万

积分

黑暗执政官

真心熊蜜

战队
GP).
联赛ID
GP).WeirDo
种族
Zerg

2012年度八达十大水友 2008年度八达十大杰出青年 2009年度八达十大水友

8
发表于 2008-11-17 15:27 |只看该作者
水晶 +100

【老汉推车的定制礼品淘宝店,8DAER价格你懂的~点击文字进入哈~】

------------------------------------------------------------------------------------------------------------------------
      
回复

使用道具 举报

4

主题

1

好友

2万

积分

大和

9
发表于 2008-11-17 15:32 |只看该作者
有研究,顶下
回复

使用道具 举报

1

主题

0

好友

4万

积分

光明执政官

【8Da翻译组】客座叫兽~

10
发表于 2008-11-17 15:37 |只看该作者
NB。。。这个纯技术帖啊!丁页!
回复

使用道具 举报

116

主题

3

好友

6万

积分

仲裁者

每天睡到自然醒

2008年度八达十大杰出青年 2007年度八达十大杰出青年

11
发表于 2008-11-17 15:45 |只看该作者
好帖
回复

使用道具 举报

2

主题

1

好友

3万

积分

大和

12
发表于 2008-11-17 15:49 |只看该作者
a星算法的确不错
回复

使用道具 举报

431

主题

0

好友

6万

积分

仲裁者

红狼

13
发表于 2008-11-17 15:51 |只看该作者
hao tie。
红色忠诚赞歌
回复

使用道具 举报

头像被屏蔽

0

主题

0

好友

1277

积分

禁止发言

14
发表于 2008-11-17 15:52 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽
回复

使用道具 举报

头像被屏蔽

0

主题

0

好友

8098

积分

禁止访问

15
发表于 2008-11-17 15:57 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

5

主题

1

好友

2万

积分

大和

16
发表于 2008-11-17 16:08 |只看该作者
楼主的意思是在XX向坦克攻击时,用雷车去尽量挡住他预算好的路线?感觉有点超过了人的操作极限。不知道过多久会有人能运用好。
让你成熟的,是经历和磨难;
让你幸福的,是宽容也博爱;
让你心安的,是理解与信任;
回复

使用道具 举报

1

主题

0

好友

9082

积分

大象

我本善良

17
发表于 2008-11-17 16:15 |只看该作者
欠钱不还者,烂JJ
回复

使用道具 举报

0

主题

0

好友

2万

积分

大和

18
发表于 2008-11-17 16:17 |只看该作者
NP 问题,A*算法。。。这都出来了   
...
回复

使用道具 举报

69

主题

0

好友

5万

积分

光明执政官

我又SB过去了.....

19
发表于 2008-11-17 16:46 |只看该作者
原帖由 elffkdx 于 2008-11-17 16:08 发表
楼主的意思是在XX向坦克攻击时,用雷车去尽量挡住他预算好的路线?感觉有点超过了人的操作极限。不知道过多久会有人能运用好。

不是,是比如200冲锋的时候,xx有3队吧,那么肯定不可能全挡住,但是干扰7,8个的可能性是很大的,毕竟前方冲锋的路线比较单一,还是比较容易打乱既定路线的

先天下之勃起而勃起,后天下之高潮而高潮

回复

使用道具 举报

0

主题

0

好友

6万

积分

仲裁者

安全第一,不显示签名

2007年度八达十大水友 2008年度八达十大杰出青年 2009年度八达十大水友

20
发表于 2008-11-17 16:50 |只看该作者
问题是你如果右键移动的话,你的雷车实际上是和zealot在互相阻挡,然后你雷车的火力也输出不了。
上士闻道,勤而行之;
中士闻道,若存若亡;
下士闻道,大笑之。
不笑不足以为道。
回复

使用道具 举报

2443

主题

3

好友

3万

积分

大和

低调高手

21
发表于 2008-11-17 16:56 |只看该作者
知识贴~
安得网吧一两间 战遍天下玩家俱欢颜
我就是那个传说中的高高高高高高手
回复

使用道具 举报

kkk1234486 该用户已被删除
22
发表于 2008-11-17 17:02 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

头像被屏蔽

13

主题

0

好友

4118

积分

禁止发言

23
发表于 2008-11-17 17:02 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

0

主题

0

好友

3222

积分

飞龙

24
发表于 2008-11-17 17:03 |只看该作者
LZ在进行独立思考,不错!
看yfx185打星际,是你这一生中最快乐的时光。
回复

使用道具 举报

0

主题

0

好友

3808

积分

飞龙

25
发表于 2008-11-17 17:07 |只看该作者
很好很强大
回复

使用道具 举报

341

主题

0

好友

3万

积分

大和

26
发表于 2008-11-17 17:08 |只看该作者
222222222
回复

使用道具 举报

14

主题

3

好友

1万

积分

版主

Rank: 7Rank: 7Rank: 7

27
发表于 2008-11-17 17:19 |只看该作者
很好
很实用
应该加分
向所有组织和参与战队联赛的玩家致以崇高的敬意,特别的,O老师和黑JJ老师辛苦了!
回复

使用道具 举报

5

主题

0

好友

1万

积分

航母

8DA美男子

28
发表于 2008-11-17 17:23 |只看该作者
精华帖
回复

使用道具 举报

50

主题

2

好友

6万

积分

仲裁者

29
发表于 2008-11-17 17:26 |只看该作者
需要的就是这种肯钻研的人才
回复

使用道具 举报

1

主题

0

好友

6967

积分

大象

30
发表于 2008-11-17 17:30 |只看该作者
个人认为此帖技术含量远高于之前十个看不清的核心竞争力 顶
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

手机版|Archiver|八达网    

GMT+8, 2025-12-2 17:11

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部