谷甚论拍手游戏其AI
  • 板块灌水区
  • 楼主Lion_Li
  • 当前回复3
  • 已保存回复3
  • 发布时间2021/2/4 11:51
  • 上次更新2023/11/5 03:47:22
查看原帖
谷甚论拍手游戏其AI
82565
Lion_Li楼主2021/2/4 11:51

尝试把拍手游戏的电脑算法调成了AI算法,虽然能用不过感觉训练效率有点低

这是安装包游戏规则与代码

主程序是用python写的,算法的核心是用数组存储个变量以及在该情况下出的技能,然后赢的一方计数。之后使用技能时一半随机一半通过之前存下的数据加权

if(player[i].Ep < 18 and player[a].last_Ep < 18):
                    #                    print(player[i].HP,player[i].last_skill,player[i].Ep,player[a].HP,player[a].last_skill,player[a].last_Ep)
                    ta = ai[player[i].HP-1][player[i].last_skill][player[i].Ep][player[a].HP-1][player[a].last_skill][player[a].last_Ep]
                    s = sum(ta)
                    ss = 0
                    for x in range(17):
                        ss += ta[x]
                        if ss >= s * player[i].skill / 17:
                            player[i].skill = x
                            break

处理程序见Deal.cpp

不过七位数组有亿点大(30mb)中间浪费了不少空间,而且预处理读入还得十多秒

所以请教一下有没有什么高效的算法,大伙玩玩也给些体验意见

之前的帖子

2021/2/4 11:51
加载中...