/stratgy_games

为学习机器人决策(状态机、行为树、强化学习等)的同学而开发,包含多种策略游戏,使用pygame开发

Primary LanguagePython

策略游戏组

为学习机器人决策(状态机、行为树、强化学习等)的同学而开发,包含多种策略游戏,使用pygame开发。

1. pat_pat

  • 游戏:拍拍
  • 规则:
    • 动作:
      • 聚气:每聚气一次可以增加一个能量(可根据玩家修改增加能量个数),该状态相当于无防御状态
      • 攻击:攻击需要消耗能量,可以选择每次攻击消耗的能量,最少为1个,没有上限
      • 防御:防御消耗能量 0 - n ,可根据需要进行选择,对应可抵御的最大攻击强度(敌方攻击消耗的能量)为 (n + 1) * 3
    • 信息:
      • 场上所有玩家的历史动作信息
      • 当前所有玩家的血量和能量
    • 补充说明:
      • 若玩家使用的能量超过其所拥有的数量,该次动作无效,本轮无动作,不减少能量,但会受到一次攻击
      • 默认所有玩家血量为1
      • 每次攻击无需指定玩家,会对所有玩家产生效果
      • 如果多方使用攻击,攻击能量按照最大攻击能量计算
      • 双方使用了能量相等的攻击,会相互抵消,攻击者不受伤害,但是其他玩家会受到伤害;若攻击玩家的攻击小于最大攻击能量,攻击会被击散,受到最大攻击能量玩家的攻击
  • 用户:
    • 用户实现interface中的UserInterface接口,实例化后传递给Game,即可完成策略调用
    • 实现了实时策略选择用户类,用户可以实时选择策略
    • 实现了用户类远程代理,可通过代理实现远程策略调用