|
发表于 2011-11-18 19:15:00
|
显示全部楼层
Re:即时制游戏BUFF和技能数据编辑架构
大略看了下,技能体系的模子有了,但细节还缺很多,不足以构成一个健壮的MMO结构.
举个例子,在技能层,应该有个最基本的概念,叫做技能目标(skilltarget),skilltarget的逻辑意义,在于给技能效果传递目标.
storm在给技能效果定义目标的方法是"0.不是范围型,只能作用于当前选择的目标",这就把技能逻辑给限定在了"只能由玩家主动触发"的层面上.否则,如果我要编辑一个由buff触发的技能,该技能是给buff的施放者加血,这需求如何实现?
很显然,这种被动态触发的技能,其作用目标也是动态,不可能仅由storm所提供的这种定义方法来实现.
实际上,对技能的调用,在逻辑层应该可以描述成一个带技能ID,技能目标参数的函数,比如说叫做cast(skillid,skilltarget).
不同的技能调用方式,区别仅在于对skilltarget的定义方法有差异.
譬如说鼠标点击触发技能,skilltarget从技能表中读取.
譬如说由逻辑层动态触发,则需要根据上层逻辑来决定塞给技能一个怎样的skilltarget.
我上面所举的那个例子,实现方法是,由buff层在调用技能时,将buff的施放者作为skilltarget塞给技能.技能得到skilltarget之后,接下来的逻辑就可以开始运作了.
先就说这些. |
|