游戏里的那套技能/buff 系统叫什么?有开源库吗?

2020-03-23 12:23:24 +08:00
 AAdalao

就是那个是个游戏就会有的 buff 系统,行话叫什么? git 上有开源的可以参考吗,求大佬带

9100 次点击
所在节点    游戏开发
44 条回复
cwjokaka
2020-03-23 13:02:32 +08:00
AAdalao
2020-03-23 15:13:28 +08:00
@cwjokaka 这个项目就是个通讯系统而已吧
augustheart
2020-03-23 16:52:17 +08:00
buff 系统?你确定说的是 buff,而不是技能天赋什么的?
不管是哪个,这东西是没有现成的开源库的。
它的本质就是贴个图而已……
VDimos
2020-03-23 18:36:19 +08:00
[].push({id, name, describe, …})
iriyave
2020-03-23 22:19:27 +08:00
就是游戏技能系统,buff 只是技能中的一种而已。
这东西还是挺复杂的,要牵扯到本地-服务端-其他玩家的同步,三端都要跑,为了防作弊一般以服务器跑的逻辑为准,客户端为了保证流畅还要做预测和错误回溯。
因为不同游戏的玩法差别很大,好像没什么通用的库,不同引擎也不好公用一套,因为技能系统一般是针对引擎深度定制的,要做好配套的技能编辑器。
不过你可以找一些开源的游戏看下思路,UE4 前一阵子有期中文直播正好讲到技能系统相关的实现,好像是盛趣的人讲的,你可以看看。
sunny352787
2020-03-23 23:11:21 +08:00
这玩意是游戏的核心,我们叫战斗系统,包括技能 /buff 的结算、显示、记录、验证,其中结算部分是最核心的,我估计你说的就是这部分,貌似没有通用的开源实现,我 N 年前随手写了一个 https://github.com/sunny352/BattleSystem,不过不全面,只是写了个结算部分的思路,不知道你能不能用得上
sunny352787
2020-03-23 23:12:00 +08:00
AAdalao
2020-03-23 23:35:30 +08:00
@iriyave 技能系统总不可能每个项目都分别写一套吧,总会抽象出一个公用模型的。就比如回合制的技能系统,我感觉上都是相通的
LokiSharp
2020-03-24 00:03:10 +08:00
可以看看 RPGMaker MV 的代码
MeteorCat
2020-03-24 00:13:46 +08:00
没有通用的,不过换皮武侠 H5 好像有
Tink
2020-03-24 00:14:40 +08:00
技能树?
lights
2020-03-24 01:12:47 +08:00
非游戏行业人士,不负责任猜测:
BUFF 系统本身只负责状态同步、状态的计算和显示,但状态的影响是由游戏的其他逻辑实现的
(比如加攻击力是战斗系统实现)
nguoidiqua
2020-03-24 01:21:55 +08:00
@AAdalao

有几个做游戏的甘心抄别人的设计,哪个不想搞出自己的独特设计,技能系统是个很重要的表现差异的地方,加上和人物属性关联又很大,除非你这些数值体系都一样,不然怎么通用?如果这些都一样了,那还设计个屁,那不就是只剩换下皮了。

只有那些和设计关联不大的系统才会考虑通用共用,比如充值系统。
nguoidiqua
2020-03-24 01:35:57 +08:00
你要只是想研究怎么实现技能系统,那你找开源的游戏看看它们怎么实现就是了。

你要想直接拿别人的用,那是不现实的,因为那会制约你的游戏设计,一个属性不同都要做出极大改动,隐患多多,最后会发现还不如自己写。
AAdalao
2020-03-24 08:18:08 +08:00
@nguoidiqua 我看过 war3 和 sc2 的编辑器,感觉那套就很牛逼,就是不想自己造轮子了,这玩意一看就知道工程量巨大,一个人怕是要搞几个月
AAdalao
2020-03-24 08:39:45 +08:00
@LokiSharp rpgmaker 居然是开源的?
LokiSharp
2020-03-24 08:43:58 +08:00
@AAdalao #16 编辑器不开源,生成的代码是 JS
across
2020-03-24 09:17:16 +08:00
unity 插件库里面不少吧,找 rpg 类的模版。
一般做成支持编辑器配置的。
rohgeo
2020-03-24 09:36:15 +08:00
如果有两个游戏用的同一套系统,那就是换皮
AAdalao
2020-03-24 09:42:58 +08:00
@rohgeo 啥啊,哪有你这样扯的,那我用 rpgmaker 做的游戏都是换皮?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/655336

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX