自动升级的策略性

今天加了好多功能,代码量增加了将近一倍。这都要感谢星期六,还有那位每天坚持不懈的玩家。

 

 

之前写的程序,仅仅是升级资源建筑。现在看来不够了,我需要它能够自动对村庄内的建筑进行升级。

 

对村庄内的建筑进行升级有几个难点:

1、建造位置大都不是固定的,集结点除外。

2、有被完全拆掉的可能,拆掉后要找地方重新建起来,而资源建筑位置是固定的。

3、建筑有依赖性,比如没有集结点就不能造兵营。

 

为了村庄内外两方面的升级能够统一进行,我制定了这样的策略框架:

首先定义村庄内建筑的“最小需求”:

自动升级的策略性

 

如果当前有建筑低于最小需求,则优先建造需求的建筑。这些需求满足了之后,再去升级资源建筑。

如果出现资源或人口不足(那就表示被打得很惨了),程序就会跳过最小需求,然后还是会去升级资源建筑。

资源建筑的升级策略很简单,就是捡级别最低的来升级。

 

现在,不论村庄被打的多惨,TravianDaemon 也能很快将其恢复成基本的样子。毕竟前几级建筑造起来还是很快的。

 

我还打算实现自动造兵,以后再说。

 

另外,我还实现了“邮件命令”。TravianDaemon 运行在公司机器上,只要我通过手机发送 email 到公司邮箱, TravianDaemon 就会执行指定的命令。

 

你可能感兴趣的:(框架)