Project1

标题: 能不能实现 根据队员数敌人的属性值增加 [打印本页]

作者: 绿坝    时间: 2013-10-9 10:47
标题: 能不能实现 根据队员数敌人的属性值增加
本帖最后由 绿坝 于 2013-10-9 10:49 编辑

做了个类似佣兵系统的,但是主角也可以一个人打通关的游戏。
问下,有没有脚本或者办法让敌人的属性值随着队员数的变化而变化。
比方说就主角一个人的时候
史莱姆生命值是100 攻击力是8
两个人的时候就翻倍变成生命值200 攻击力16
以此类推
这样子?
@tan12345 @Sion @Mic_洛洛 @喵呜喵5 @芙蕾娅 @美丽晨露 大大们有类似的脚本或者思路吗???求助。。。  
作者: ナイフ君    时间: 2013-10-9 10:57
可以使用纯事件完成这个系统:
首先同一个敌人复制很多个,之后分成不同的能力值。
之后建议使用明雷战斗,事件设置:
如果XX在队伍遭遇敌人等等,比较麻烦,但在下这个愚钝的脑袋只能想到这个。
请见谅,另外希望在下的回答可以帮助到你。
作者: Sion    时间: 2013-10-9 11:25
在读取敌人数据那里加入判断就可以了。
作者: 熊喵酱    时间: 2013-10-9 11:33
本帖最后由 76213585 于 2013-10-8 20:37 编辑

什麼人都@了就是沒@我......(蹲牆角畫圈圈)
============================
在更改人數後或是直接在update中加個把人數代入變量
然後用Tsukihime的敵人屬性更改腳本
http://himeworks.wordpress.com/2013/07/24/enemy-param-formulas/
就是會把敵人的屬性再用公式記算一次  
你的用法的話可以用原屬性乘上對伍人數......
應該要代理!?
作者: 绿坝    时间: 2013-10-9 12:08
76213585 发表于 2013-10-9 11:33
什麼人都@了就是沒@我......(蹲牆角畫圈圈)
============================
在更改人數後或是直接在update中 ...

翻不出去。
脚本盲,队伍人数判断转为变量用公共事件做了。
大大能帮忙把脚本复制下吗?谢谢
作者: 喵呜喵5    时间: 2013-10-9 12:12
本帖最后由 喵呜喵5 于 2013-10-9 12:16 编辑

全世界也就中国大陆、朝鲜、古巴、伊朗有屏蔽范围那么宽广的墙…
另外楼上思路都是正确的,我就不废话了

话说一个人就能通关要雇佣兵系统何用?
作者: 绿坝    时间: 2013-10-9 12:21
喵呜喵5 发表于 2013-10-9 12:12
全世界也就中国大陆、朝鲜、古巴、伊朗有屏蔽范围那么宽广的墙…
另外楼上思路都是正确的,我就不废话了
话说一个人就能通关要雇佣兵系统何用?

想做一个类似老滚的游戏,没有职业设定只有技能设定,其中预设的一个技能组合 开锁术+侦测+幻术 就是盗贼一类的职业,如果组队的话就不能潜行、撬锁和偷东西了(顺便一提开门撬锁摸口袋的系统都做好了,属于一个人玩的职业,而还有其他一些需要队友配合的职业。所以弄一个根据人数来决定敌人强弱的系统,要不然四个人和一个人打的怪都是一个难度总有一方面感到麻烦
作者: tan12345    时间: 2013-10-9 13:09
试试这段代码
  1. class Game_Enemy < Game_Battler
  2.   #--------------------------------------------------------------------------
  3.   # ● 获取普通能力的基础值
  4.   #--------------------------------------------------------------------------
  5.   def param_base(param_id)
  6.     #the_num = $game_party.members.size
  7.     case $game_party.members.size
  8.       when 1
  9.         enemy.params[param_id]
  10.       when 2
  11.         enemy.params[param_id] * 2
  12.       when 3
  13.         enemy.params[param_id] * 3
  14.       when 4
  15.         enemy.params[param_id] * 4
  16.       else
  17.         enemy.params[param_id]
  18.     end
  19.   end
  20. end
复制代码

作者: 绿坝    时间: 2013-10-9 14:20
tan12345 发表于 2013-10-9 13:09
试试这段代码

{:2_275:}感谢大大,该脚本可行,只是还想请问下大大,有没有办法不改变物理防御和魔法防御?这两个数值很容易过高打也打不出伤害。
作者: tan12345    时间: 2013-10-9 15:56
VA里做判定普通能力的代码就是param_id,当param_id==0的时候代表HP,param_id==1的时候是MP,param_id==2的时候是物理伤害,param_id==3的时候是物理防御,param_id==4的时候是魔法伤害,param_id==5的时候是魔法防御,param_id==6是敏捷,param_id==7是幸运,你把上面的代码改成下面:
  1. class Game_Enemy < Game_Battler
  2.   #--------------------------------------------------------------------------
  3.   # ● 获取普通能力的基础值
  4.   #--------------------------------------------------------------------------
  5.   def param_base(param_id)
  6.     #the_num = $game_party.members.size
  7.     case $game_party.members.size
  8.       when 1
  9.         enemy.params[param_id]
  10.       when 2
  11.         enemy.params[param_id] * 2
  12.         enemy.params[param_id] if param_id == 3 or param_id == 5
  13.       when 3
  14.         enemy.params[param_id] * 3
  15.         enemy.params[param_id] if param_id == 3 or param_id == 5
  16.       when 4
  17.         enemy.params[param_id] * 4
  18.         enemy.params[param_id] if param_id == 3 or param_id == 5
  19.       else
  20.         enemy.params[param_id]
  21.     end
  22.   end
  23. end
复制代码

作者: 绿坝    时间: 2013-10-9 16:02
tan12345 发表于 2013-10-9 15:56
VA里做判定普通能力的代码就是param_id,当param_id==0的时候代表HP,param_id==1的时候是MP,param_id==2 ...

{:2_275:}谢谢大大
作者: 美丽晨露    时间: 2013-10-9 18:43
回来迟了,表示没有接触VA多少
完全不懂怎么做
作者: 绿坝    时间: 2013-10-10 20:04
本帖最后由 绿坝 于 2013-10-10 21:23 编辑
tan12345 发表于 2013-10-9 15:56
VA里做判定普通能力的代码就是param_id,当param_id==0的时候代表HP,param_id==1的时候是MP,param_id==2 ...


大大,在用你第二个脚本的时候出了点状况,
进入战斗后跳出错误
提示
Game_BattlerBase
的第268行错误

作者: tan12345    时间: 2013-10-10 21:46
本帖最后由 tan12345 于 2013-10-10 21:50 编辑
绿坝 发表于 2013-10-10 20:04
大大,在用你第二个脚本的时候出了点状况,
进入战斗后跳出错误
提示


你还用了什么脚本?提示这个错误代表可能需要将value转化成数值型,比如to_i
还有,脚本顺序也很重要,建议你把我这个脚本放在你新插入的脚本的最前面
另外,能否告诉我你是在操作什么的时候提示这个错?




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1