您的位置:首页 > 运维架构 > 网站架构

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

2014-09-19 11:21 106 查看

战斗部分总模块划分

一,战斗单机版框架

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

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处理数据清理之后,进行对应跳转;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: