AI专业系统设计.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
AI系统 1 怪物战斗状态 -触发AI条件,此状态跟战斗行为无关。 进入战斗状态条件 怪物受到攻击 怪物攻击目标 被动触发(当怪物每次受到攻击时,使一定范围内全部怪物进入战斗状态)。 结束战斗状态状态条件(同时满足) 处于战斗状态怪物 5秒内受到攻击 处于战斗状态怪物5秒内不攻击目标 处于战斗状态怪物5秒内不受被动触发。 函数设置 Bool BattleState(MonsterID) //0代表编号为MonsterID怪物未进入战斗状态,1代表处于战斗状态 2 AI系统架构 简单串行AI系统架构(每个循环内选择一个行为) 注: HYPERLINK 数据初始化见下面说明。 3 数据库统计(DataBase) 怪物属性表 字段名 数据类型 说明 Attack_type Int 攻击类型 见攻击类型说明 AI0 Int AI类型 AI类型说明 AI1 Int AI2 Int AI3 Int 攻击类型字段说明 十位:攻击目标选择参数,攻击对自己伤害最高目标(0)或轮番攻击视野内目标(1)。 个位:攻击类型选择参数,选择攻击力最高攻击类型(0)或依据目标最低防御选择攻击类型(1)。 AI类型说明 AI类型 说明 HYPERLINK 10X 条件:在计时器上一个循环内受到伤害 实施:召唤周围X类型怪物帮助攻击目标 HYPERLINK 11X 条件:在计时器上一个循环内未受到伤害,而且有X类型怪物呼叫其帮助攻击 响应视野范围内最近X怪物召唤帮助其攻击目标 AI类型字段说明 百位为1代表帮助攻击型AI 十位代表呼叫(0)或响应(1) 各位代表呼叫和响应怪物类型,全部怪物(0),L1类怪物(1),L2类怪物(2)。 4 AI类型实现 AI计时器相关函数设置 Bool MonsterCall(MonsterID) //怪物呼叫帮助攻击 MonsterCall(MonsterID)==0 //怪物编号(CMap管理)为MonsterID怪物未呼叫帮助攻击 MonsterCall(MonsterID)==1 //怪物编号(CMap管理)为MonsterID怪物呼叫帮助攻击 Int MonsterBeAtk(MonsterID) //怪物受到伤害值 MonsterBeAtk(MonsterID)==n //怪物编号为MonsterID怪物受到累积伤害n 数据初始化:AI实施后或无AI实施但未结束战斗时,对于每个怪物以上数据清零。 AI类型(10X,11X)处理步骤 10X部分 受到伤害:检测在计时器上个循环内怪物自己是否受到伤害。 呼叫帮助攻击:呼叫视野范围内怪物帮助攻击目标。 11X部分 未受伤害:检测在计时器上个循环内怪物自己是否未受伤害。 视野内怪物呼叫:检验缓存中是否存在怪物呼叫信息。 呼叫和响应类型相同:对比两个怪物数据库AI字段最终一位匹配关系,确定可匹配怪物。 确定离自己最近怪物:可匹配怪物内,查询离自己最近怪物。 变更攻击目标:将自己攻击目标变更为要帮助怪物攻击目标。 5 AI表现样例 角色 怪物A,B:L1类 AI字段为 AI0=100 //受攻击时召唤全部怪物帮助攻击 AI1=111 //未受攻击时,响应L1类怪物呼叫帮助其攻击目标 AI2=110 //未受攻击时,响应全部怪物呼叫帮助其攻击目标 怪物C:L2类 AI字段为: AI0=100 //受攻击时召唤全部怪物帮助攻击 AI1=112 //未受攻击时,响应L2类怪物呼叫帮助其攻击目标 玩家P1,P2 玩家行为 时间轴(秒) 玩家行为 0 C发觉P1,攻击P1,P2无动作 1 P1攻击C,P2无动作 2 P1,P2攻击C,P2对C伤害高出很多 3 P1攻击C,P2攻击B 5 P1攻击A,P2攻击B 怪物表现 假定定时器一个循环为2秒,6秒内全部怪物不死亡。 行为详解: 时间轴(秒) 怪物 表现 0 A 和平状态 B 和平状态 C 进入战斗状态,主动攻击P1 1 A C受击,触发A进入战斗状态 B C受击,触发B进入战斗状态 C 继续攻击P1 2 A AI0,1条件不满足,满足AI2条件,帮助C攻击P1 B AI0,1条件不满足,满足AI2条件,帮助C攻击P1 C AI0条件满足,呼叫全部怪物,依据伤害值选择P2 3 A 继续攻击P1 B 受到P2攻击,攻击P2 C 依据伤害值,选择攻击P1 4 A AI0条件不满足,满足AI1条件,帮助B攻击P2 B 满足AI0条件,呼叫全部怪物,攻击P2 C 满足AI0,呼叫全部怪物,攻击P1 5 A 依据伤害值,选择攻击P1 B 继续攻击P2 C 继续攻击P1 6 A 满足AI0,呼叫全部怪物,继续攻击P1 B 满足AI0,呼叫全部怪物,继续攻击P2 C 全部

文档评论(0)

159****9606 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档