游戏开发九宫格战斗架构解析详解



战斗部分总模块划分

一,战斗单机版框架

细分框架包含如下系统和技术点:

1,地图循环系统;

2,精灵系统(2方向4动作);

1),精灵动作状态机,总精灵父类,玩家精灵子类,怪物精灵子类;

2),动作组装器(帧动画封装);

3),方向计算器(根据不同点位移计算精灵朝向);

4),效果动作组装器(移动,旋转,放大缩小,赛贝尔曲线等动作组装);

5),精灵BUF,光环,状态控制器(精灵BUF状态,脚下光环,纹理状态控制);

6),精灵触摸区域;

7),精灵血条控制器;

3,特效系统;

1),普通特效;

2),技能特效;

2,精灵模型(Model层);

3,侠客阵列;

4,怪物阵列;

5,九宫格精灵连线系统(9Role-Connection);

1),九宫格连线系统(根据颜色相同补位连接算法);

2),引导连接(黑线引导连接及取消连接的算法,还包含夹角计算,位移更新弧度等算法);

3),连接取消(已连接阵法按原路线取消已连接的算法);

4),精灵阵法光环颜色(为精灵脚底添加颜色阵法)

6,精灵普通攻击;

1),精灵移动(动作);

2),普通攻击

3),精灵攻击&怪物被攻击&技能攻击特效&抖动

4),侠客精灵移动返回,怪物恢复站立;

7,补阵系统(12个精灵的补阵条件:1,不重复,2,按照从左到右,再从上到下规律补阵)

1),补移位算法(补数据模型model,补精灵视图view);

2),补齐后重置算法(重置当前序列TAG,注此处我是根据精灵坐标来重置当前阵法的序列);

以上一个攻击循环+补阵就是一个可以循环跑起来的单机版战斗框架;

二,战斗接模型正式数据后,普通攻击模块;

1,关卡信息展示;

2,地图切换,角色跑动等组合战斗场景特效;

3,精灵模型数据正式化;

0),玩家9个模型,好友/游侠(3个模型)。

1),侠客攻击,血量,恢复;

2),侠客属性(金木水火土,恢复);

3),怪物模型:攻击,血量,回合数,弱点属性;

4),精灵血条控制器;

4,侠客精灵普通攻击(细化)

1),单个精灵攻击:

侠客(移动,攻击,跑回)

怪物(被攻击,攻击特效,数值特效,连击特效,恢复站立)

2),多个精灵攻击,处理连招序列节奏;

5,回合定时控制器;(处理每个回合“玩家主动连线攻击一次/1回合”后检测当前战斗场景的回合状态,和所有精灵状态):

1),视图检测;

2),精灵检测;

3),怪物死亡检测;

6,怪物精灵攻击侠客:

1),根据回合控制器检测怪物0回合时进行攻击;

2),怪物攻击序列处理;

3),单个怪物攻击序列处理:

怪物随机选定攻击目标;

怪物攻击状态;

侠客精灵被攻击,被攻击特效,玩家扣血效果,扣血数值特效;

精灵恢复常态;

怪物攻击完更新回合数;

7,精灵补阵时根据策划数值需求添加必中BUFF几率;

8,玩家侠客总血量条(12个精灵血量之和);

9,怪物精灵死亡:

1),死亡检测;

2),死亡特效;

10,怪物攻击时,判定怪物技能的攻击侠客数目:

1),攻击单个;

2),攻击多个;

文章参考:www.yxkfw.com 游戏开发网,最好的编程开发技术网站。

三,普通招式攻击模块

1,数据模型侠客招式数据获取;

1,侠客精灵怒气触发;

2,侠客精灵怒气效果制作;

3,在精灵普通攻击基础上重构招式攻击:

1),精灵变红色;

2),精灵位移;

3),位移时制作残影效果,渐隐效果;

5),假碰撞制作(节奏控制);

6),怪物被攻击效果,连击特效,数值连击特效(多次嘣数值),怪物扣血效果;

7),侠客,怪物恢复

4,侠客精灵普通攻击时按几率触发普通招式;

四,九连击大招攻击模块

1,9连构成条件

2,9连攻击:

1),先进行就连判定

2),判定成功,前8位侠客精灵执行原有BUFF及攻击操作(涵盖普通招式,普通攻击)

3),最后一位精灵为必杀技技能释放:

屏幕放大,

最后一位角色精灵超大CG闪现,

最后一位精灵原地释放全屏大招,

全屏怪物进行扣血操作。

4),所有精灵恢复

五,怪物加护盾模块

1,怪物普通攻击的同时增加护盾

2,护盾增加条件查询

3,怪物攻击加护盾:

0),选定目标个数,随机选定目标;

1),镜头跟随怪物放大效果;

2),怪物原地攻击;

3),怪物播放技能招式;

4),精灵侠客原地被攻击,玩家扣血效果,显示数字;

5),查询怪物增加护盾数,护盾类型;

6),增加护盾

4,破解护盾

0),破解护盾条件;

1),达成破解护盾的侠客攻击,将移除更新怪物护盾;

2),怪物护盾更新;

六,玩家死亡

1,玩家死亡判定;

2,死亡后弹出接关提示(是否接关?);

3,不接关,显示退出战斗提示;

4,接关,接关提示框消失,消耗复活石,进行接关:

购买复活石弹框,使用复活石

5,复活后,战斗回合为1;

七,关卡信息保存

1,打完每波怪物后进行地图切换

2,切换时显示关卡进度信息,如(2/3波);

3,切换关卡是通讯服务器进行数据保存,告诉服务器这波的情况;

八,战斗退出

1,弹出战斗退出框;

2,确定取消操作;

3,显示战斗失败弹框;

4,loading处理数据清理之后,进行对应跳转;

九,战斗总结算(该关卡,所有波次打完,进行总结算)

1,请求服务器,申请结算数据;

2,给服务器发送该关卡信息;

3,拿到服务器数据,解析;

4,显示该关卡的掉落,掉落什么东西,更新本地数据;

5,显示战斗胜利

6,loading处理数据清理之后,进行对应跳转;

时间: 2024-10-17 16:26:38

游戏开发九宫格战斗架构解析详解的相关文章

Android游戏开发之旅 View类详解

自定义 View的常用方法: onFinishInflate() 当View中所有的子控件 均被映射成xml后触发 onMeasure(int, int) 确定所有子元素的大小 onLayout(boolean, int, int, int, int) 当View分配所有的子元素的大小和位置时触发 onSizeChanged(int, int, int, int) 当view的大小发生变化时触发 onDraw(Canvas) view渲染内容的细节 onKeyDown(int, KeyEvent

nginx学习三 nginx配置项解析详解及代码实现

nginx配置项解析详解及代码实现 0回顾 在上一节,用nginx简单实现了一个hello world程序:当我们在浏览器中输入lochost/hello ,浏览器就返回:hello world.为什么会这样呢,简单一点说就是当我们请求访问hello这个服务,nginx就会看配置文件中是否有,如果有,根据具体的handler处理后把处理的结果返回给用户,没有就返回not found. location /hello { test_hello ;//无参数的配置 这其实是一个简单的配置.这节我们来

IA-32指令解析详解

IA-32指令解析详解 0x00 前言 这段时间忙于考试,信息论和最优化,还有算法分析,有点让人头大.期间花了几天看SEH机制,能明白个大概,但是对于VC++对于SHE的包装似乎还是不是很明白,发现逆向工程核心原理对于这段写的太简单,至于加密与解密则是模棱两可,软件加密技术内幕倒是详解了,可是太老了,代码又是汇编写的总是编译不通过.真是让人难受!本来想写一篇SEH详解,但是基于以上原因暂时搁置.这两天看了逆向核心原理关于IA-32指令解析的内容,发现还是挺有意思,遂记录下来. 0x01 何谓IA

asp.net 三层架构图文详解

什么是三层架构? 先说说饭店中的三层结构 服务员:待客/提交菜单 厨 师:取材/炒菜/交菜 采购员:采购 三层结构分析 (1)表示层 为用户提供交互式操作界面. (2)业务逻辑层 负责关键业务的处理,负责与表示层和数据访问层的数据传递. (3)数据访问层 实现对数据的保存和读取操作. 三层结构各层间的依整关系 -----高层依赖低层 三层结构各层间的数据传递关系 ---高层请求低层.低层响应高层 三层结构搭建方法 1.搭建表示层(创建一个Windows应用程序) 2.搭建业务逻辑层(类库) 3.

ini格式数据生成与解析详解

ini格式数据生成与解析详解 1.ini格式数据长啥样? 2.ini格式数据简介 INI文件的命名来源,是取自英文"初始(Initial)"的首字缩写,正与它的用途--初始化程序相应. 有时候,INI文件也会以不同的扩展名,如".cfg".".conf"(在Linux系统中也常用到).或是".txt"代替(从辨识度的角度,不建议使用). 3.ini格式数据适用场景 INI文件是一个无固定标准格式的配置文件.它以简单的文字与简单

优佳贝开发优佳贝模式详解

优佳贝开发优佳贝模式详解(微or电 158.1500.1390 小凡团队)优佳贝系统开发,优佳贝模式定制,优佳贝软件开发,优佳贝app开发,优佳贝模式系统开发. 互联网颠覆了传统的商业模式,创造了庞大的商业机遇,更改变了世界财富的分配定律!互联网已经无国界,已经引申到世界每一个角落.互联网与电子商务的结合,必将创造一个又一个新奇迹!在历史发展的当今世界.21世纪,整个世界经济发生了巨大的变化!21世纪更是一个移动互联网经济占据鳌头的市场!谁抓住了互联网市场趋向谁就抓住了,在互联网一体化的今天,信

android Json解析详解

JSON的定义: 一种轻量级的数据交换格式,具有良好的可读和便于快速编写的特性.业内主流技术为其提供了完整的解决方案(有点类似于正则表达式 ,获得了当今大部分语 言的支持),从而可以在不同平台间进行数据交换.JSON采用兼容性很高的文本格式,同时也具备类似于C语言体系的行为– Json.org JSON Vs XML 1.JSON和XML的数据可读性基本相同 2.JSON和XML同样拥有丰富的解析手段 3.JSON相对于XML来讲,数据的体积小 4.JSON与JavaScript的交互更加方便

【10.2.3】ArcGIS Runtime for Android搭建开发环境过程中问题详解

一.Visual Studio Ultimate2012安装过程问题 1.问题描述 安装完成后,您将看到一条消息,指示安装程序已完成,但并不是所有的功能具有已正确安装,以及以下警告消息: Microsoft Web Deploy 3.0 所需的证书不在有效期内根据当前系统时钟或签名文件中的时间戳验证时. 2.解决方案 修改电脑系统时间为2013年7月,断网后重新安装,成功后再联网. Visual Studio Ultimate2012激活密钥:RBCXF-CVBGR-382MK-DFHJ4-C6

Android研究之属性动画(Property Animation)完全解析详解下

 上一篇Android研究之属性动画(Property Animation)完全解析详解上已经基本展示了属性动画的核心用法: ObjectAnimator实现动画,ValueAnimator实现动画,AnimatorSet的使用等~ 当然了属性动画还有一部分的知识点,也能做出很不错的效果,将在本篇博客为您展示~ 1.如何使用xml文件来创建属性动画 大家肯定都清楚,View Animator .Drawable Animator都可以在anim文件夹下创建动画,然后在程序中使用,甚至在The