ARPG游戏的技能系统和buff系统的一种实现

《龙与地下城》是由TSR开发的一款桌上角色扮演游戏,于1974年发行第一版。该款游戏对角色扮演游戏也有很大的影响,后来的许多相同类型的游戏都受到了它的影响。简单看了一遍该游戏的玩家手册,再对比某个游戏的技能系统,和玩家手册描述的很相像。

这篇文章主要是对该游戏技能系统总结下实现思路。

一.首先需要讨论下技能的各种表现(以下是一些代表性的技能,摘自网络): 1.位置相关的如:瞬移、冲撞、击退、跳跃等。2.持续时间相关的如:眩晕、定身、临时提高xx属性等、魔法盾等。3.永久效果相关的如:永久加属性上限、释放技能时永久附带某种效果等。4.障碍效果的如:骨墙、还有像DOTA某牛的耕田技能。5.daodan系列如:追踪箭、魔兽的远程技能等。6.直线打击类的如:菠萝2的闪电、魔兽争霸熊猫的喷射技能等。7.连锁效果的如:治疗链、闪电链等。8.地点持续类的:火墙一类的技能。9.还有吟唱类的:一下子想不起技能名...概括起来就是先念x秒咒语,然后出效果。10.还有立即生效类的:比如传奇的闪电术、战士的强力打击等。11.还有一些多种类型复合的技能:比如菠萝2的九头蛇(既有地点持续,又放出火球)。

二.但是这里只会讨论该游戏所用到的技能,例如:1.直接造成伤害的技能(普攻)。2.撞开目标并造成眩晕。3. 推开自身周围的目标。4.制造护盾,在一段时间内减免伤害。5.将多个目标冻结。6. 使对手中毒,每秒减少一定伤害。7.对目标治疗,每秒恢复一定血量。

三. 技能释放的流程:
1、发出施放请求。2、验证是否满足使用技能条件。3、返回失败结果或者选择目标。4.对目标开始执行技能同时开始动作、特效播放。5、执行该技能需要表现的各项效果。6、如需伤害判定则进行判断并反馈结果。

四.技能的实现。
对于上面第二点提到的技能,可以分成以下几类效果:1.特效表现。2.临时改变实体的属性。3.在一定时间内,持续性的改变实体的属性。4.伤害判定。
对于第1点,技能配置表除了配置施法者的动作,一般还需要配置施法者的特效和目标的特效,然后在技能释放的时候,如果有配置相应的特效,则挂上该特效就可以了。对于撞开,后退等效果,则通过具体代码来实现。
对于第2点,需要在实体身上加一个改变属性的buff(关于buff,见下)。
对于第3点,需要在实体身上加一个特定的buff(关于buff,见下)。
对于第4点,根据技能的效果,要设计好技能伤害公式。

五.技能伤害公式。
伤害的计算可以分为以下几个部分:1.先计算闪避成功率。2.技能伤害系数。3. 基本伤害。4. 技能伤害。5. 暴击伤害。6. 致命伤害。7. 职业伤害。8. 波动系数。9. 追加伤害。10. 内功伤害。11. 最终伤害。
分成多个部分之后,造成的最终伤害就可以关联实体的多种属性,再通过加buff改变属性的方式,可以轻易的实现多种不同的效果。每个属性的最终结果都会以本来的属性乘以一个乘因子和加上一个加因子,乘因子和加因子受buff的影响。

六.关于buff。
每个实体身上都有一个每秒执行的函数,用于判断buff是否到期而需要移除。
对于被动buff,每次添加buff或者移除buff的时候,都会重新计算所有buff(被动)影响的实体每个属性的乘因子和加因子,用于伤害公式的计算。
而对于分段式buff,一般是加血和减血,则也需要每秒进行处理。

总结,相对来说,这个技能的系统的流程是比较简单的,但是通过不同效果组合,和实体多种身上多种属性的结合,也实现了足够多的技能。

原文地址:https://blog.51cto.com/zhangzhao/2439480

时间: 2024-08-26 19:11:08

ARPG游戏的技能系统和buff系统的一种实现的相关文章

ERP系统和MES系统的区别

公司说最近要上一套erp系统,说让我比较一下,erp系统哪个好,还有mes系统,我们适合上哪个系统,其实我还真的不太懂,刚接触erp跟mes的时候,对于两者的概念总是傻傻分不清楚,总是觉得既然都是为企业的信息化做贡献,那区别又是在哪儿呢? 然后经过一系列的搜索,现在终于有了一些概念了. 好吧,细细说来,ERP系统以供应链管理为核心,以销售部门和采购部门为信息源头,以设备.人力等其它系统为基础,使信息流在ERP内部得到有效的传递和集成. 产线上的数据采集,产品在生产流程中的数据跟踪等这部分属于ME

SIS系统和DCS系统的使用与组态上的本质区别分析,更深刻的知道DCS为了控制,SIS为了保护! sis系统和DCS系统有什么区别?

DCS --distribution control system 分散式控制系统,工厂控制级系统,常规数据采集,设备控制都 由此系统完成. SIS--safty instruments system 安全仪表系统,联锁系统的一种,一般做工厂过程设备的安全保护控制,有时也包含机组安全保护控制.sis系统和DCS系统使用上有什么区别? sis系统使用实时平台支持各功能模块在不同的服务器上分布运行,使各服务器的负载均衡,使用不同的网卡分别连接控制系统与SIS系统,保证网络隔离.控制系统的所有数据只能

android系统和ios系统是如何实现推送的,ios为什么没有后台推送

ios系统为什么没有后台推送? iOS 为了真正地为用户体验负责,不允许应用在后台活动.有了这个限制,但是对于终端设备,应用又是有必要“通知”到达用户的,随时与用户主动沟通起来的(典型的如聊天应用). 这就是 APNs 的逻辑所在:iOS 自己做个长驻后台保持连接.所有应用,有必要(申请)并且被允许(用户可以改设置)的话,可以通过 APNs 中转到达用户.这样就完善了! 有可能很多人没有真正地体会到 iOS 不允许后台应用的好处.我是 Android 开发人员,Android 手机上一般只保留几

android系统和ios系统的推送是如何实现的,有什么区别

ios系统为什么没有后台推送? iOS 为了真正地为用户体验负责,不允许应用在后台活动.有了这个限制,但是对于终端设备,应用又是有必要"通知"到达用户的,随时与用户主动沟通起来的(典型的如聊天应用). 这就是 APNs 的逻辑所在:iOS 自己做个长驻后台保持连接.所有应用,有必要(申请)并且被允许(用户可以改设置)的话,可以通过 APNs 中转到达用户.这样就完善了! 有可能很多人没有真正地体会到 iOS 不允许后台应用的好处.我是 Android 开发人员,Android 手机上一

Linux系统和Windows系统的各自的优缺点有哪些?

本文编辑:玲子 专业指导:葵芳一凡站长在选择网站服务器的操作系统的时候,通常只会在Linux系统和Windows系统之中选出其中一个.但是有不少站长对于这两种操作系统并不了解,更不清楚它们各自的优缺点及其区别是什么了,因此需要跟着葵芳IDC小编一起来了解下.Linux系统和Windows系统的各自的优缺点一.Windows Server系统(1)优点:Windows Server系统相对于其他服务器系统而言,极其易用,极大降低使用者的学习成本.(2)缺点:Windows Server系统对服务器

COMSCI系统和JWFD系统PC配置标准

下面的标准为  强制标准 CPU: 使用 intel公司  65-45纳米工艺制程   Q6600,  E2140-E2160,E5200,Q9400,Q9500,Q9550,Q9650 主板:使用 华硕,技嘉,微星  这三家公司出的带南桥和北桥芯片的P35-P45主板 显卡:   ATI公司的3650-4650-5650系列GPU显卡 显示器:美国优派-三只鸟的标志的液晶显示器 硬盘:希捷公司的机械硬盘   1T-单碟盘-5400转 光驱:先锋DVD刻录机(不准使用蓝光,蓝光带时流数据,可以读

对比Linux系统和Windows系统哪个更好

最近半年来,我一直在读一本叫做<Linux就该这么学>的Linux教材,确实让我进步的很快,也慢慢的让Linux系统走入了我的知识认知中,那么学习前我们来对比下Windows和Linux的不同,然后再给新手朋友们谈谈学习Linux的一点小建议吧. Windows操作系统是一款由美国微软公司开发的窗口化操作系统,采用了GUI图形化操作模式,比起从前的指令操作系统如DOS更为人性化.Windows操作系统是目前世界上使用最广泛的操作系,但是在企业级服务应用上则是Linux系统更为专业与出名,也许听

苹果系统和Windows系统共享文件的方法

一.在mac系统中打开"系统编好设置",打开"共享"选项,双击: 二.钩选"文件共享"选项; 三.面板右侧会出来一个"选项"按钮,双击; 四.选中"使用SMB(Windows)来共享文件和文件夹",点击"完成"关闭设置窗口: 五.在面板下方添加要共享的文件夹及用户权限: 六.通过面板右上方提示的共享地址即可访问:

利用Sambaserver在Ubuntu系统和Win7系统间共享目录

1 介绍 如今是网络化的时代,我们每一个人要更好的发展.离不开网络化.信息化的支持.利用网络的支持.在不同的操作系统间共享文件等信息,是计算机专业学生必备的一项技能. 本文所讲的就是怎样建立.设置.链接Sambaserver,使得处在网络中的两台电脑,一台装的是Ubuntu操作系统,一台装的是Win7,通过共享目录的形式来共享信息.这两台电脑在网络上处的位置和网络架构为图1所看到的. watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvUm9iZXJ0Q2h