设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 1641|回复: 5
打印 上一主题 下一主题

[已经解决] 如何讓玩家腳色和敵人等級差距越多 經驗越少

[复制链接]

Lv2.观梦者

梦石
0
星屑
497
在线时间
266 小时
注册时间
2015-12-8
帖子
873
跳转到指定楼层
1
发表于 2015-12-14 22:03:23 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
如提~很多RPG遊戲都有這種設定 差距等級太多就完全沒經驗了 不過這邊好像都是等量的

Lv2.观梦者

梦石
0
星屑
451
在线时间
228 小时
注册时间
2015-2-23
帖子
241
2
发表于 2015-12-14 22:12:26 | 只看该作者
你是指单个角色的等级还是队伍的平均等级?
制作XP特效,找我。
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
497
在线时间
266 小时
注册时间
2015-12-8
帖子
873
3
 楼主| 发表于 2015-12-14 22:13:34 | 只看该作者
枫の叶 发表于 2015-12-14 22:12
你是指单个角色的等级还是队伍的平均等级?

都行吧~兩個都問問看~{:8_457:}
回复 支持 反对

使用道具 举报

Lv4.逐梦者

店长

梦石
13
星屑
1282
在线时间
1810 小时
注册时间
2010-10-6
帖子
779

蛤蛤蛤蛤开拓者

4
发表于 2015-12-14 22:42:50 | 只看该作者
本帖最后由 猪衰衰 于 2015-12-14 22:47 编辑

首先RM默认中是没有敌人等级这个设定的,于是不如用一个变量来设定敌人的等级(至于这个变量你可以在一个地图中或者一场战斗前事先代入)

然后打开脚本,找到game Enemy关于经验值一栏,改成这样.
总之详细你看范例吧

QQ截图20151214224036.png (38.81 KB, 下载次数: 25)

QQ截图20151214224036.png

Project6.rar

1.42 MB, 下载次数: 55

点评

謝謝~我研究看看^^  发表于 2015-12-15 19:35

评分

参与人数 1梦石 +1 收起 理由
taroxd + 1 认可答案

查看全部评分

努力填新坑中!
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
451
在线时间
228 小时
注册时间
2015-2-23
帖子
241
5
发表于 2015-12-14 22:52:24 | 只看该作者
下面这个是队伍平均等级来算。
敌人的名字后面加一个 ★ 号,再写上这个敌人的等级。 史莱姆★10   表示 史莱姆 等级是10级。
  1. module Fy
  2.   Lv_limit = 10    #队伍平均等级与敌人等级差,大于这个数值开始减少EXP。
  3.   Exp_rate = 10    #满足上面的条件后,等级差每大一级,EXP减少的百分比。
  4. end
  5. class RPG::Enemy < RPG::BaseItem
  6.   def name
  7.     return @name.split(/★/)[0].nil? ? "" : @name.split(/★/)[0]
  8.   end
  9.   def level
  10.     return @name.split(/★/)[1].nil? ? 1 : @name.split(/★/)[1].to_i
  11.   end
  12. end
  13. class Game_Party < Game_Unit
  14.   def average_level
  15.     data = 0
  16.     members.each{|a| data += a.level}
  17.     return (data / members.size)
  18.   end
  19. end
  20. class Game_Enemy < Game_Battler
  21.   alias fy_exp exp
  22.   def exp
  23.     old_exp = fy_exp
  24.     if ($game_party.average_level - enemy.level) > Fy::Lv_limit
  25.       n = $game_party.average_level - enemy.level - Fy::Lv_limit
  26.       n.times{old_exp -= old_exp * Fy::Exp_rate / 100}
  27.       old_exp = [old_exp, 1].max  #最低1经验。
  28.     end
  29.     return old_exp
  30.   end
  31. end
复制代码

点评

脚本编辑器里、  发表于 2015-12-15 14:50
main是?  发表于 2015-12-14 23:19

评分

参与人数 1梦石 +1 收起 理由
taroxd + 1 认可答案

查看全部评分

制作XP特效,找我。
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
497
在线时间
266 小时
注册时间
2015-12-8
帖子
873
6
 楼主| 发表于 2015-12-14 23:02:23 | 只看该作者
枫の叶 发表于 2015-12-14 22:52
下面这个是队伍平均等级来算。
敌人的名字后面加一个 ★ 号,再写上这个敌人的等级。 史莱姆★10   表示 史 ...

所以所有敵人都要改★號嗎?

另外問問把這文字丟到腳本裡面就好了?

点评

数据库里默认的敌人本来就没有等级设置,所以每个敌人都要给一个等级。没写的等级默认是1.  发表于 2015-12-14 23:05
把脚本复制然后插入到main上面。  发表于 2015-12-14 23:04
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-11-17 05:57

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表