HearthBuddy ai调试实战

期望通过ai的调试,来搞明白出牌的逻辑。

ailoop1

deep 0 len 8 dones 0
cut to len 8

ai计算了8个单次操作【根据反馈,风怒其实还可以给敌方随从的,这个直接被HearthBuddy排除了】

start print 8 actions startIndex = 0,endIndex = 1
a.print(); start
play id 34 target 55 pos 1 操作1,风怒给无面投火者
a.print(); end

a.print(); start
play id 34 target 63 pos 1 操作2,风怒给恐狼前锋
a.print(); end

a.print(); start
play id 36 pos 3 操作3,使用卡牌,自动漩涡打击装置
a.print(); end

a.print(); start
attacker: 55 enemy: 13 操作4,无面投火者攻击空灵召唤者
a.print(); end

a.print(); start
attacker: 55 enemy: 64 操作5,无面投火者攻击术士
a.print(); end

a.print(); start
attacker: 63 enemy: 13 操作6,恐狼前锋攻击空灵召唤者

a.print(); end
a.print(); start
attacker: 63 enemy: 64 操作7,恐狼前锋攻击术士
a.print(); end

a.print(); start
useability 操作8,使用英雄技能,召唤图腾
a.print(); end

end print 8 actions startIndex = 0,endIndex = 1,

ailoop2 在ailoop1的基础上,计算后续单次操作

start print 5 actions startIndex = 0,endIndex = 8  所以这里会循环8次,这里的8上ailoop1的8个操作

ailoop1里的8个单次操作,每个对应的后续可能单次操作分别为

 5+7+5+5+5+5+5+4 =41

 但是这里有一个PlayField的complete属性判断,需要弄明白这里是什么情况。

本来41个操作,但是经过这里就变成38个操作了。

 

startEnemyTurnSimThread1  对应ailoop1里面的操作1:风怒给无面投火者,剩下1费

a1.print(); start
attacker: 55 enemy: 13   操作1,投火无面者攻击空灵召唤者
a1.print(); end

a2.print(); start
attacker: 55 enemy: 64  操作2,投火无面者攻击术士
a2.print(); end

a3.print(); start
attacker: 63 enemy: 13   操作3,恐狼前锋攻击空灵召唤者
a3.print(); end

a4.print(); start
attacker: 63 enemy: 64  操作4,恐狼前锋攻击术士
a4.print(); end

a5.print(); start
useability              操作5,使用英雄技能
a5.print(); end

end print 5 actions startIndex = 0,endIndex = 8,

猜你喜欢

转载自www.cnblogs.com/chucklu/p/11434356.html