求大神给一个互动结盟式的AI
就是上来不锁定组队,在游戏过程中通过改变外交和进贡比较容易达成同盟的那种。。。 这个理论上是可以实现的(也许论坛已经有了),楼主自己去找找,翔鹰不欢迎伸手党 1999 发表于 2016-7-27 23:12这个理论上是可以实现的(也许论坛已经有了),楼主自己去找找,翔鹰不欢迎伸手党
从第一页一直翻到最后一页都没有见到,网路上用三种不同的关键词关键句搜索了从第一页一直搜索到第四十页也没有相关的。求个AI就伸手党了?唯一相关的就是有人给出结盟的条件和语句
(defrule
(event-detected trigger 1)
=>
(enable-timer 16 1)
(disable-self)
)
(defrule
(timer-triggered 16)
(players-tribute 1 gold > 999)
=>
(set-signal 11)
(enable-timer 17 1)
(clear-tribute-memory 1 gold)
(disable-self)
)
(defrule
(timer-triggered 17)
(players-tribute-memory 1 gold > 999)
=>
(set-stance 1 ally)
(disable-self)
)
(defrule
(players-tribute 1 food >= 100)
=>
(set-stance 1 ally)
)
(players-tribute 1 food >= 100)
(players-tribute 1 wood >= 200)
(players-tribute 1 gold >= 300)
但是没有互动,要不是没时间学帝国的编程语言就自己把这些加进去了。不欢迎正好,我就把帐号删了,反正看了一遍也没找到什么有价值的东西。 lz不要激动,我这么说没有恶意,如果你觉得受不了那我在此说声抱歉{:167:}
如果lz真的很需要这个ai,你可以找一下论坛里的ai大神,让他们教教你~不够你最好还是学一下基本的ai编写,可以看一下这个ai初入 lz别激动啊。。2l人家也不是恶意的
写了个比较简单的互动 就5条规则 理论上加到任何AI里都能用 但是只针对玩家1 如果要联机的话复制8次然后把1改成对应的玩家编号就好了(不知道有没有更简便的写法。。)
每句后面还有注释很好理解的!!
(defrule
(players-stance 1 ally) ;玩家1想和我结盟
(stance-toward 1 enemy) ;玩家1是敌人
(players-tribute-memory 1 gold < 500) ;玩家1还没给过我钱
=>
(set-stance 1 neutral) ;改变外交态度为中立
(chat-to-player 1 "只要进贡500黄金我就和你结盟。")
)
(defrule
(players-stance 1 ally) ;玩家1想和我结盟
(not(stance-toward 1 ally)) ;排除玩家1已经是同盟的情况
(players-tribute-memory 1 gold >= 500) ;玩家1给钱了
=>
(set-stance 1 ally) ;改变外交态度为联盟
(chat-to-player 1 "我们已经是朋友啦。")
(clear-tribute-memory 1 gold)
)
(defrule
(players-stance 1 neutral) ;盟友变成中立
(stance-toward 1 ally)
=>
(set-stance 1 neutral) ;改变外交态度为中立
(chat-to-player 1 "你的行为很可疑,重新进贡500黄金否则我就把你打烂。")
)
(defrule
(players-stance 1 enemy) ;盟友要叛变
(stance-toward 1 ally)
=>
(set-stance 1 enemy) ;改变外交态度为敌对
(chat-to-player 1 "原来你是这种队友,我们的友谊完蛋了!")
)
(defrule
(players-stance 1 enemy) ;中立玩家想打我
(stance-toward 1 neutral)
=>
(set-stance 1 enemy) ;改变外交态度为敌对
(chat-to-player 1 "竟敢挑衅我,我要给你点颜色看看。")
)
嘛~先这样吧 以后有需要还可以拓展
页:
[1]