爽身粉 发表于 2017-10-20 16:53:23

通过使用AI进贡发送AI信号来达到进贡触发剧情的目的

比如最简单的一个情况:游戏开始玩家到达指定地点后,玩家2要求玩家1进贡650石头,玩家2城堡所有权改变为玩家1.
我的AI代码如下:
(defrule
                   (event-detected trigger 71)
                   (players-tribute-memory1 stone>= 650)
=>
                   (acknowledge-eventtrigger 71)
                   (clear-tribute-memory 1 stone)
                   (set-signal 72)
        (disable-self)
)
信号71:玩家到达指定目的后发送AI信号
信号72:AI收到石头后发送信号通知触发改变所有权。

我的 问题是:这么写有错误没?
因为我不能保证到达目的后第一时间进贡石头,所以我担心AI信号71发送过后就失效了;但是我个人觉得是71发送一次后,在acknowledge-event 执行前event-detected trigger 71是一直成立的。

捕影侠 发表于 2017-10-20 17:31:37

>=那里是不是少个空格呀{:158:}

爽身粉 发表于 2017-10-20 17:33:52

捕影侠 发表于 2017-10-20 17:31
>=那里是不是少个空格呀

其他的有没有问题呢?{:152:}

捕影侠 发表于 2017-10-20 18:06:28

爽身粉 发表于 2017-10-20 17:33
其他的有没有问题呢?

这里不用担心,在注销事件信号前该条件event-detected会始终成立。但你在此处还要考虑玩家之前的进贡记录要全部清除,也就是你可以在收到AI信号之后先清除进贡记录,然后再用AI中的计时器用来开启以上代码,这样就排除了这个bug

鲁大师漂流记 发表于 2017-10-20 19:14:14

老哥要不要进群讨论?

爽身粉 发表于 2017-10-23 10:17:15

捕影侠 发表于 2017-10-20 18:06
这里不用担心,在注销事件信号前该条件event-detected会始终成立。但你在此处还要考虑玩家之前的进贡记录 ...

好的,谢谢;另外你知道现在什么类型的战役玩得人最多吗?

爽身粉 发表于 2017-10-23 10:19:44

鲁大师漂流记 发表于 2017-10-20 19:14
老哥要不要进群讨论?

什么群?
页: [1]
查看完整版本: 通过使用AI进贡发送AI信号来达到进贡触发剧情的目的