赞 | 0 |
VIP | 110 |
好人卡 | 0 |
积分 | 1 |
经验 | 20413 |
最后登录 | 2016-12-8 |
在线时间 | 192 小时 |
Lv1.梦旅人
- 梦石
- 0
- 星屑
- 50
- 在线时间
- 192 小时
- 注册时间
- 2007-7-14
- 帖子
- 2746
|
被动技能的实现原理:
1.通过将该技能的使用场合设定为"不能使用"来明确声明这个技能是一个被动技能(其实也没想到RMXP会在数据库中留这一手)
2.重新定义技能的各项数值,让它们成为被动技能的加成值,我这里用了一个充分利用每一格,但同时兼顾直观并充分利用空间的定义方法
3.在Game_Actor里,通过修改取得的各种数据判定,追加被动技能的实际效果
这个脚本发布的被动技能,其设定方法如下:
可能使用时: 不能使用 (重要,这是识别被动技能的标志也是惟一的标志,凡是设定成这样的技能,不论其他设定如何,都会被认为是被动技能)
效果范围: 无 (这个实际上可以控制被动技能的分页,这一项有8条,也就可以设定8页,每一页上的各个格子都可以赋予某个意义,原则上,你可以想出的任何千差万别的被动技能都可以定义出来) 作为示范,脚本中所有的被动技效果,都是在效果范围设成"无"时的效果,如果你设成其他的,就会失效(你可以自己去定义)
动画/SE/公共事件, 反正技能用不了,也没意义....留空就行了
下面那些格子是关键所在:
消费SP : 这是一个设定范围在0到9999间的格子,脚本中,我将它用做其他格子数值正负的开关(因为很多格子不能设定负数),每个二进制位控制一个格子,9999以下可以写出14个二进制位,足够使用了(只需要用10个),特别的,在本脚本中,当消费SP的第12位被置成1时(其值为2048),代表被动技能效果"物理攻击强制命中"
威力 : 这是12格中惟一一个允许设定负数的格子,所以我将它和右边的属性/状态联系起来(因为那两栏是无限扩展的,不好用消费SP的值来控制正负数开关)
余下的格子,除了攻击力F是0-200范围外,其余都是0-100,不过已经够了,基本上可以满足脚本中使用功能的需要
攻击力F: 设为0以外的数值时,角色攻击力将增加(减少)这个数值的百分比
回避F: 设为0以外的数值时,角色回避力将增加(减少)这个数值的百分比
力量F: 设为0以外的数值时,角色力量将......百分比
灵巧F: 设为0以外的数值时,角色灵巧将......百分比
速度F: ........速度.....百分比
魔力F: .......魔力....百分比
防御力F: .....防御力.....
魔防力F: .....魔防力.....
只有"命中率"和"分散"两个值特殊,这里我将它们用做了MaxHP和MaxSP增加的百分比
数值的正负,通过消费SP值的二进制位来控制,从"攻击力"到"分散",按照格子的排列顺序,对应消费SP值的第1位到第10位.某一位置1,这一格的值就会按负数计算
因为大多数情况下被动技能不太可能有降低属性值的效果,所以可能不会碰到这么复杂的设定,这里只是留一个功能以防需要时使用.
然后说一下右边那两排:
属性: 打勾的话,对应属性的防御度,会增加(威力)的数值
如果你想要实现属性相克的效果,比如提升火属性防御度会降低冰属性防御度,也简单, 将"状态"那一栏里,横向相对的那一个状态打上减号,那么这个属性防御就会减低(脚本中减低的数值是威力值的一半,你可以修改这个比率)
状态: 刚说了,这个是控制属性增减符号的,如果你想用它来控制状态,把属性里所有的格子全部留空不打勾就可以了,这时,打了+状态属性的防御度,会增加(威力)的数值(更不容易中这个状态),打了-状态属性的防御度,则会降低(威力)的数值(更容易中这个状态).
另外,如果你把SP消费的第11位置成1(值1024),那么+和-的定义会发生改变:打了+状态,会变成角色的自动状态(就像你穿上有自动状态的防具一样),打了-的状态,则会变成完全免疫的状态(就像防具的防御状态一样).
例子: 一个学会后增加力量值百分之六十的技能
贴张图
觉得太小的话自己点击一下
可以看到,以上的讨论,都是基于"被动技能是给角色增减能力"的情况,如果你要实现更多的功能,比如"一人装备,全队生效",比如"己方装备,对敌人有效果",的情况,就要修改Game_Party或Game_Enemy的相关部分.这个脚本仅仅限于对Game_Actor的修改(少量Game_Battler,仅一处),在大多数情况下,已经够用了,基本能力的加成全都可以解决.
被动技能生效的前提是学会这个技能, 如果你想实现像装备那样有栏位的....其实我已经做到了,考虑到这个是我自己游戏系统比较核心的部分,就先暂缓放出来了....
脚本,加了注释的,稍微通一些RGSS就能看出来其实这个系统实际上并不复杂(基本就是把各个角色能力值全部重新定义一遍),只是难度比较高(因为牵涉到对数据库解释器的修改). 系统信息:本贴由楼主认可为正确答案,66RPG感谢您的热情解答~ |
|