RPG战斗框架包含以下四部分的内容:

一、基本战斗流程

二、战斗角色设计

三、战斗伤害计算

四、技能设计

五、BUFF设计

六、战斗AI

RPG战斗的ai主要用在战斗NPC上

以战斗来看,应该有攻击意向,攻击方式,注重攻击或者防御,如何应对受击,对不同的情况有特定应对方式、如潜行/突袭,追击意向,技能释放意向等等。

其实电脑怪物要智能些,符合策划需求,像玩家一样,会特定时候放技能,血少时候逃跑等

战斗角色要存在ai的功能
class CNpcWarrior(CWarrior):def __init__(self, ai_func):self.m_ai_func = ai_func

AI = 条件 + 行为

一个怪物执行多个AI即可以完成想要的只能效果

比如:

AI1 = 血少时候 + 逃跑

AI2 = 最后一回合时候 + 释放技能

AISet = AI1 + AI2

怪物即可用AISet去实现

条件:

class CLimit(object):m_id = 101m_name = "血量低于指定值"def is_limited(self, warobj, wobj, hp):if wobj.get_hp() < hp:return Truereturn Falseclass CLimit(object):m_id = 102m_name = "非某回合"def is_limited(self, warobj, wobj, bout):if warobj.m_bout != bout:return Truereturn False

行为:

class CAction(object):m_id = 101m_name = "逃跑"def do_action(self, warobj, wobj, *args):wobj.escape()

AI父类:

# -*- coding: utf-8 -*-import ai.limit
import ai.actionclass CAIBase(object):m_id = 0m_name = ""m_opt = ""m_limits = []m_actions = []def __init__(self):lst = []for id in self.m_limits:ob = ai.limit.load_limit(id)lst.append(ob)self.m_limit_objects = lstdef __call__(self, *args):limit_args, action_args, warobj, wobj = argslimit_exp = self.m_optfor i, id in enumerate(self.m_limits):limit_exp = limit_exp.replace("%d" % id, "%s" % ("self.m_limit_objects[%d].IsLimited(warobj, wobj, *limit_args[%d])" % (i, i)), 1)if eval(limit_exp):for i, id in enumerate(self.m_actions):func = ai.action.load_action(id)func(warobj, wobj, *action_args[i])

ai 字类:

class CAI(CAIBase):m_id = 1001m_name = "血少非某回合逃跑"m_opt = "101 and not 102"m_limits = [101, 102]m_actions = [101]

多个ai集合


class CAISetBase(object):m_sid = 0m_ai_list = []def __init__(self):lst = []aiidlst = []for aid, args in self.m_ai_list:func = ai.load_ai_func(aid, *args)lst.append(func)aiidlst.append(aid)self.m_ai_objects = lstself.m_ai_list = aiidlstdef __call__(self, warobj, wobj):for func in self.m_ai_objects:func(warobj, wobj)
# -*- coding: utf-8 -*-class CAISet(CAISetBase):m_SID = 1002m_AIList = [(1001, (((100, 5),), ((None,),))),(1001, (((100, 5),), ((None,),))),]

RPG多人回合制战斗框架设计《六:战斗AI》相关推荐

  1. RPG多人回合制战斗框架设计《五:Buff设计》

    RPG战斗框架包含以下四部分的内容: 一.基本战斗流程 二.战斗角色设计 三.战斗伤害计算 四.技能设计 五.BUFF设计 六.战斗AI 五.BUFF设计 BUFF类似被动技能,存在战斗角色身上,只不 ...

  2. RPG多人回合制战斗框架设计《四:技能设计》

    RPG战斗框架包含以下四部分的内容: 一.基本战斗流程 二.战斗角色设计 三.战斗伤害计算 四.技能设计 五.BUFF设计 六.战斗AI 四:技能设计 被动技能的功能: 1.有这个技能,会有某种功能, ...

  3. 步步为营 .NET三层架构解析 四、Model设计(四种设计方式)

    说到Model设计,我们先谈谈它的作用: Model又叫实体类,model层里面的一个类对应数据库里面的一张表, 类里面的每一个属性对应表里面的一个字段,每个属性都有自己的 GET 和 SET 方法, ...

  4. [新手必备]如何用c#写挂机游戏的回合制角色对战(多人vs多人对战部分)

    前两篇文章中,我们讲了如何用c#搭配unity写出多人回合制游戏, 如果需要参考一下的朋友,可以点击传送门: 1v1部分,点击传送 1v多人部分,点击传送 现在,我们将进行回合制游戏最主要的部分,多人 ...

  5. java模拟回合制游戏大小姐_java – 回合制游戏设计:事件驱动与游戏...

    我用Java创建了我的第一个游戏.这场比赛是垄断.我正在努力设计游戏以模拟其回合制结构(管理玩家转弯).我想允许单个人控和一个或多个AI控制的玩家玩游戏. 我的具体问题是我不知道是否实现游戏循环,这意 ...

  6. java回合制游戏女主牺牲自己_java – 回合制游戏设计:事件驱动与游戏循环

    我用Java创建了我的第一个游戏.这场比赛是垄断.我正在努力设计游戏以模拟其回合制结构(管理玩家转弯).我想允许单个人控和一个或多个AI控制的玩家玩游戏. 我的具体问题是我不知道是否实现游戏循环,这意 ...

  7. 表演的艺术,妖尾回合制战斗系统客户端设计

    妖尾历经几年开发,终于在今年6月底顺利上线,笔者从2017年初参与开发,主要负责妖尾战斗系统开发.战斗作为游戏的核心玩法系统,涉及很多技术点,希望能借几篇文字,系统性总结MMORPG战斗系统的开发经验 ...

  8. java用接口回调回合制游戏_类DOTA游戏如何设计多样化的技能系统?

    这个嘛,我觉得我还是能答的,因为我曾经设计了DOTA2的一款RPG,虽然未完(逃 有道云笔记 有道云笔记 有道云笔记 有道云笔记 当然没翻译完,因为弃坑了233 以上是数据驱动类型的技能,还有脚本驱动 ...

  9. java模拟回合制游戏大小姐_[源码和文档分享]基于java的RPG回合制游戏

    一.工作积累总结 1.1 简介 该项目是一个回合制RPG游戏,讲述了动物主角对抗人类,自逃出动物园开始,一路与人类对抗,提升能力,并寻找新队友组成团体,逼得人类不得不与之谈判,最终与人类达成了和平协议 ...

最新文章

  1. hiernate的锁机制
  2. wincc flexable变量组态
  3. 【Java案例】-Jedis操作redis教程
  4. 142. 环形链表 II golang
  5. vspy如何在图形面板显示报文_设备实时状态监控:如何进行工业生产设备数据采集?...
  6. NotFoundHttpException
  7. memcache 知识点
  8. 你是否需要安全运营中心?
  9. Linux 简单架设防火墙路由器
  10. python 开源爬虫工具 kcrawler 一键爬取 房价 掘金小册专栏
  11. Python 微信自动化工具开发系列05_根据用户信息自动回复(2022年10月可用)
  12. 华硕笔记本进bios按哪个键 华硕手提电脑怎么进bios设置
  13. 微信自定义菜单以及自动回复
  14. 基于中科院-CASIA-GaitDatasetB步态图像轮廓数据库的步态周期检测与步态角度特征MATLAB源码介绍
  15. 通过BOMC制作微码更新介质方法
  16. centos虚拟机桥接网络配置服务器,CentOS7虚拟机桥接网络配置
  17. Python个人学习小结
  18. 华兴资本获高瓴资本与京东金融等多家机构认购
  19. 读刘未鹏《暗时间》有感
  20. OpenCv设置摄像头参数/获得摄像头参数值

热门文章

  1. 常见数据加密与解密方式
  2. 用 Saleae Logic 16 示波器测量并分析 I2C、SPI、串口的信号
  3. 猴子补丁(Monkey Patching)
  4. 逻辑漏洞原理与实践练习题
  5. 牛逼了!最全的互联网公司 Java 面试题及答案开放下载
  6. Unity UI系统--image组件
  7. Windows Server 2008 R2 系统安装视频课程-深博-专题视频课程
  8. 泰勒公式浅谈原理(转) ----- 深度好文, 一点是如何蕴含整个世界
  9. python文件可以执行的环境有哪些呢
  10. c语言3d打印机控制程序下载,ReplicatorG-3d打印机控制软件下载 v0040 中文免费版 - 安下载...