Unity3D自学笔记——星际2技能系统分析(一)
来源:互联网 发布:大闹天宫化身2进3数据 编辑:程序博客网 时间:2024/05/29 12:33
星际2技能系统分析
最近一直在想设计一个易扩展的,可配置的技能系统框架。看了几个项目源码,可能自己功力不够,感觉类与类之间的套用很混乱,看的云里雾里的,然后网上到处找资料。
对两个技能设计比较感兴趣,一个是Dota2
http://moddota.com/forums/discussion/14/datadriven-ability-breakdown-documentation
一个是星际2
https://www.sc2mapster.com/wiki/galaxy/data/
目前先重点关注下星际2的技能系统,由于没有资料介绍,只能通过星际2的地图编辑器去揣测。
数据结构
星际2的数据为树状结构
数据对象
星际2的整个数据对象都是通过XML进行配置的
星际2按照上图对数据对象进行了分类
GAME
游戏相关数据对象
Campaign
战役相关数据对象
Actor
演算器数据对象
Art And Sound
美术和声音数据对象
Terrain
地形数据对象
Hero
英雄
UI
界面
Advanced
高级
技能系统 ABE
貌似都把星际2的技能系统称为ABE(Ability, Behavior, Effect)。
Ability(技能)
技能的基础数据,比如名字,ID,消耗等。
Effect(效果)
技能所产生的效果,比如造成伤害,星际2的Effect与动画,特效,音效等是没有关系的,它是负责逻辑运算,所有的动画,特效都是在Actor里面进行处理。
效果又可以生成效果或行为,所以效果也是个树状结构。
如:灵能风暴的效果会持续几秒钟的时间,并且会在某一地区搜索单位时周期性的产生另外一个效果。这个搜索效果会产生在每个单位身上并造成伤害。
Behavior(行为)
效果所产生的行为,比如BUFF
1 0
- Unity3D自学笔记——星际2技能系统分析(一)
- Unity3D自学笔记——星际2技能系统分析(二)Ability(Move, Stop, Attack)
- Unity3D自学笔记——星际2技能系统分析(三)Ability(Effect)
- Unity3D自学笔记——星际2技能系统分析(四)Ability(Behavior)
- Unity3D自学笔记——星际2技能系统分析(五)Effect(Damage)
- Unity3D自学笔记——有限状态机(一)框架搭建
- Unity3D自学笔记——Photon服务器的后台架构实现(一)
- Unity3D自学笔记——架构应用(一)用户登录
- Unity3D自学笔记——UGUI背包系统(一)ItemData
- UNITY3D自学--(一)
- Unity3D自学笔记——脚本生命周期
- Unity3D自学笔记——Transform
- Unity3D+moba+技能指示器(一)
- Unity3D自学笔记——MonoBehavior响应事件
- Unity3D自学笔记——碰撞检测示意图
- Unity3D自学笔记——脚本开发基础数学
- Unity3D自学笔记——MonoBehavior常用函数
- Unity3D自学笔记——GUI组件的应用
- lk光流法
- mysql安装、设置、简单实用
- 理解复杂的C-C++声明
- akka actor理解
- Android开发Hack1-圆角镂空按钮的样式定义
- Unity3D自学笔记——星际2技能系统分析(一)
- Java判断一个字符串中是否包含中文字符工具类
- Dalvik和Java字节码的对比
- WCF服务返回JSON格式数据、配置web调用地址
- javaweb中增、删、改、查方法
- #学志#swift3.0-面向对象
- 关于使用CodeFirst,修改类或上下文时操作数据库报错解决方法
- 【STM32】STM32之红外接收
- Tensorflow深度学习入门——采用卷积和池化优化训练MNIST数据——代码+注释