翔鹰帝国网|帝国时代论坛|帝国时代系列|神话时代
 找回密码
 注册翔鹰会员(昵称)
搜索
12
返回列表 发新帖
楼主: 老胡V1

[教程] AI攻击的第二种方式——TSA!

  [复制链接]

4

主题

0

精华

61

积分

骑士

耕战
8
鹰币
47
天龙币
0
回帖
13
附庸关系0
发表于 2010-6-25 20:30:07 | 显示全部楼层

(defrule
  (goal attack-goal attacking-now)
  (strategic-number sn-maximum-town-size == 45)
  (not(enemy-buildings-in-town))
=>
  (set-strategic-number sn-maximum-town-size 50)
  (chat-to-all "Town-size-attack: 50")
)
弄进AI里  开始时提示错误2005  attack-goal ?
要怎么样才能成立这个TSA?
回复

使用道具 举报

78

主题

13

精华

2万

积分

圣徒

耕战
2683
鹰币
182
天龙币
0
回帖
1957

二级皇家勋章一级嘉禾勋章二级帝国勋章十字军勋章雄鹰勋章活跃者使者勋章

附庸关系0
 楼主| 发表于 2010-6-25 22:58:55 | 显示全部楼层
attack-goal是之前已经定义过的常数,整个句子意思是要攻击了,可以不要
心烦意乱。静下来吧。
回复

使用道具 举报

16

主题

0

精华

1878

积分

侯爵

耕战
335
鹰币
361
天龙币
0
回帖
468

雏鹰勋章

附庸关系0
发表于 2010-7-3 21:41:15 | 显示全部楼层
我只懂一点AI的性能...............................................
回复

使用道具 举报

32

主题

0

精华

7155

积分

国王

耕战
1303
鹰币
273
天龙币
0
回帖
293
附庸关系0
发表于 2010-7-6 17:35:28 | 显示全部楼层
看到一大堆代码就头晕,不如发个补丁
回复

使用道具 举报

18

主题

0

精华

619

积分

伯爵

耕战
67
鹰币
87
天龙币
0
回帖
63
附庸关系0
发表于 2010-7-28 17:00:49 | 显示全部楼层
找了很久就是这个  看了很久 代码加英文在加中文 看的我头晕 本来似懂非懂  现在是云里雾里 拜求版主直接做成AI发给我好吗
回复

使用道具 举报

18

主题

0

精华

619

积分

伯爵

耕战
67
鹰币
87
天龙币
0
回帖
63
附庸关系0
发表于 2010-7-28 19:33:21 | 显示全部楼层
我又看了很久 请版主看一下是不是这样的
   (defrule
  (goal attack-goal attacking-now)
  (strategic-number sn-maximum-town-size == 40)
  (not(enemy-buildings-in-town))
=>
  (set-strategic-number sn-maximum-town-size 45)
  (chat-to-all "Town-size-attack: 45")
)

(defrule
  (goal attack-goal attacking-now)
  (strategic-number sn-maximum-town-size == 45)
  (not(enemy-buildings-in-town))
=>
  (set-strategic-number sn-maximum-town-size 50)
  (chat-to-all "Town-size-attack: 50")
)

(defrule
  (goal attack-goal attacking-now)
  (strategic-number sn-maximum-town-size == 50)
  (not(enemy-buildings-in-town))
=>
  (set-strategic-number sn-maximum-town-size 55)
  (chat-to-all "Town-size-attack: 55")
)
(defrule
  (goal attack-goal attacking-now)
  (strategic-number sn-maximum-town-size == 55)
  (not(enemy-buildings-in-town))
=>
  (set-strategic-number sn-maximum-town-size 60)
  (chat-to-all "Town-size-attack: 60")
)

(defrule
  (goal attack-goal attacking-now)
  (strategic-number sn-maximum-town-size == 60)
  (not(enemy-buildings-in-town))
=>
  (set-strategic-number sn-maximum-town-size 65)
  (chat-to-all "Town-size-attack: 65")
)

(defrule
  (goal attack-goal attacking-now)
  (strategic-number sn-maximum-town-size == 65)
  (not(enemy-buildings-in-town))
=>
  (set-strategic-number sn-maximum-town-size 70)
  (chat-to-all "Town-size-attack: 70")
)
回复

使用道具 举报

8

主题

1

精华

1560

积分

侯爵

耕战
187
鹰币
129
天龙币
0
回帖
171
附庸关系0
发表于 2010-7-28 23:27:21 | 显示全部楼层
恩恩。。
其实还有改进的地方的。。
正在翻译一篇教程。。
到时候一并发上来
回复

使用道具 举报

2

主题

0

精华

160

积分

男爵

耕战
4
鹰币
150
天龙币
0
回帖
72
附庸关系0
发表于 2010-7-29 11:22:59 | 显示全部楼层
我测试发现,TSA并非万能药。
测试方法是,死亡竞赛模式,我跟一家是用了TSA的人工智能(选的是咱们论坛的2012)对打,我不造兵,建筑只造城墙。
城墙的位置有三个,一是正常城镇范围,偏向敌人一侧,二是起始城镇中心附近,三是离敌人最远处
测试得到不同地图下,的2012AI攻击到这三处城墙所需的TSA尺寸(也就是sn-maximum-town-size的值)
tsa尺寸: 第一个数字是到最近的城墙,第二个是到初始城镇中心,第三个是到地图最远处
          巨型地图 145-155-250
          8人地图 140-170-245
          6人地图 135-145-?
          4人地图 90-105-170
          3人地图 85-100-130
          微型地图 50-65-120

需要说明的是:这些只是一个大概的值,因为地图是一个左右对角线长的菱形,当双方位于地图左右两端时,值会大一些;当双方位于上下两端时,值会小一些。

另外出现的问题是:
1 在某个size处卡住,虽然判断有敌军建筑,但是不进攻,估计是建筑过小,正好处在边界所致
2 有时会越过size,直到最大尺寸250,却没有出现攻击攻击动作,在6人和8人各遇到了一次。看来TSA还是应该跟attack-now配合使用,达到了某个最大值是应该使用attack-now
回复

使用道具 举报

2

主题

0

精华

35

积分

骑士

耕战
4
鹰币
27
天龙币
0
回帖
26
附庸关系0
发表于 2010-8-17 01:33:38 | 显示全部楼层
拜读
请问数值难道要+5 到256???!!!
  (set-strategic-number sn-maximum-town-size xx)
不是很会的人问问
回复

使用道具 举报

8

主题

1

精华

1560

积分

侯爵

耕战
187
鹰币
129
天龙币
0
回帖
171
附庸关系0
发表于 2010-8-18 11:22:01 | 显示全部楼层
其实可以粗略一点,跨步大一些。
回复

使用道具 举报

0

主题

0

精华

1

积分

扈从

耕战
0
鹰币
45
天龙币
0
回帖
5
附庸关系0
发表于 2011-1-22 15:27:12 | 显示全部楼层
压根不懂AI~晕闷死了~想做个战役太难了~LZ我想做一个我守城,电脑攻城的战役~就像科雷西那样的,不过比那个简单多了~用游戏自带的编辑器能做出来?
回复

使用道具 举报

0

主题

0

精华

29

积分

骑士

耕战
0
鹰币
60
天龙币
0
回帖
33
附庸关系0
发表于 2011-4-18 12:32:33 | 显示全部楼层
攻击丝毫没有停顿。那可是相当厉害啊!
回复

使用道具 举报

52

主题

2

精华

2万

积分

圣徒

耕战
4903
鹰币
79
天龙币
0
回帖
1043

翔鹰建站十周年纪念章二级翔鹰勋章三级嘉禾勋章二级帝国勋章

附庸关系0
发表于 2011-5-13 12:03:53 | 显示全部楼层
我想问下:这种攻击方式,能不能理解为:电脑单位不会停止不动,不断寻找目标攻击?
内疚、自责、今生有愧……
回复

使用道具 举报

52

主题

2

精华

2万

积分

圣徒

耕战
4903
鹰币
79
天龙币
0
回帖
1043

翔鹰建站十周年纪念章二级翔鹰勋章三级嘉禾勋章二级帝国勋章

附庸关系0
发表于 2011-5-13 16:39:45 | 显示全部楼层
本帖最后由 jayly15 于 2011-10-22 22:09 编辑

如果我把以下内容当成TSA的AI, 是否正确?是否能达到士兵不断的寻找目标攻击的效果?
(defrule
  (game-time > 600)
  (strategic-number sn-maximum-town-size == 40)
  (not(enemy-buildings-in-town))
=>
  (set-strategic-number sn-maximum-town-size 60)
  (chat-to-all "Town-size-attack: 60")
  (disable-self)
)

(defrule
  (strategic-number sn-maximum-town-size == 60)
  (not(enemy-buildings-in-town))
=>
  (set-strategic-number sn-maximum-town-size 80)
  (chat-to-all "Town-size-attack: 80")
(disable-self)
)

(defrule
  (strategic-number sn-maximum-town-size == 80)
  (not(enemy-buildings-in-town))
=>
  (set-strategic-number sn-maximum-town-size 100)
  (chat-to-all "Town-size-attack: 100")
(disable-self)
)
(defrule
  (strategic-number sn-maximum-town-size == 100)
  (not(enemy-buildings-in-town))
=>
  (set-strategic-number sn-maximum-town-size 120)
  (chat-to-all "Town-size-attack: 120")
  (disable-self)
)

(defrule
  (strategic-number sn-maximum-town-size == 120)
  (not(enemy-buildings-in-town))
=>
  (set-strategic-number sn-maximum-town-size 140)
  (chat-to-all "Town-size-attack: 140")
(disable-self)
)

(defrule
  (strategic-number sn-maximum-town-size == 140)
  (not(enemy-buildings-in-town))
=>
  (set-strategic-number sn-maximum-town-size 160)
  (chat-to-all "Town-size-attack: 160")
(disable-self)
)

(defrule
  (strategic-number sn-maximum-town-size == 160)
  (not(enemy-buildings-in-town))
=>
  (set-strategic-number sn-maximum-town-size 180)
  (chat-to-all "Town-size-attack: 180")
(disable-self)
)


(defrule
  (strategic-number sn-maximum-town-size == 180)
  (not(enemy-buildings-in-town))
=>
  (set-strategic-number sn-maximum-town-size 200)
  (chat-to-all "Town-size-attack: 200")
(disable-self)
)

(defrule
  (strategic-number sn-maximum-town-size == 200)
  (not(enemy-buildings-in-town))
=>
  (set-strategic-number sn-maximum-town-size 220)
  (chat-to-all "Town-size-attack: 220")
  (disable-self)
)

(defrule
  (strategic-number sn-maximum-town-size == 220)
  (not(enemy-buildings-in-town))
=>
  (set-strategic-number sn-maximum-town-size 240)
  (chat-to-all "Town-size-attack: 240")
  (disable-self)
)

(defrule
  (strategic-number sn-maximum-town-size == 240)
  (not(enemy-buildings-in-town))
=>
  (set-strategic-number sn-maximum-town-size 250)
  (chat-to-all "Town-size-attack: 250")
)
内疚、自责、今生有愧……
回复

使用道具 举报

0

主题

0

精华

1

积分

扈从

耕战
0
鹰币
59
天龙币
0
回帖
7
附庸关系0
发表于 2011-6-12 23:40:22 | 显示全部楼层
没看明白,新手
回复

使用道具 举报

7

主题

0

精华

169

积分

男爵

耕战
7
鹰币
81
天龙币
0
回帖
78
附庸关系0
发表于 2011-6-24 23:50:16 | 显示全部楼层
35楼第一句就写错。。
回复

使用道具 举报

52

主题

2

精华

2万

积分

圣徒

耕战
4903
鹰币
79
天龙币
0
回帖
1043

翔鹰建站十周年纪念章二级翔鹰勋章三级嘉禾勋章二级帝国勋章

附庸关系0
发表于 2011-10-22 16:24:07 | 显示全部楼层
粹纳帝国 发表于 2011-6-24 23:50
35楼第一句就写错。。

可以指出来吗,该怎么写才对?
内疚、自责、今生有愧……
回复

使用道具 举报

7

主题

0

精华

169

积分

男爵

耕战
7
鹰币
81
天龙币
0
回帖
78
附庸关系0
发表于 2011-10-22 21:42:18 | 显示全部楼层
回复 jayly15 的帖子

(defrule
  (game-time > 600)
  (strategic-number sn-maximum-town-size == 40)
  (not(enemy-buildings-in-town))(disable-self)这里错。。。汗,需要指出吗
=>
  (set-strategic-number sn-maximum-town-size 60)
  (chat-to-all "Town-size-attack: 60")(disable-self)
)
回复

使用道具 举报

52

主题

2

精华

2万

积分

圣徒

耕战
4903
鹰币
79
天龙币
0
回帖
1043

翔鹰建站十周年纪念章二级翔鹰勋章三级嘉禾勋章二级帝国勋章

附庸关系0
发表于 2011-10-22 22:06:13 | 显示全部楼层
回复 粹纳帝国 的帖子

真没有注意,失礼失礼了
内疚、自责、今生有愧……
回复

使用道具 举报

本版积分规则

排行榜|小黑屋|翔鹰帝国

GMT+8, 2024-4-29 05:50 , Processed in 0.193778 second(s), 204 queries , File On.

Powered by Hawk Studio  QS Security Corp.® Licensed

Copyright © 2001-2023, Hawkaoe.net All Rights Reserved

快速回复 返回顶部 返回列表