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

Project1

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

[已经解决] 如何让怪物经验随着角色等级增加而减少

[复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
338 小时
注册时间
2014-7-15
帖子
593
跳转到指定楼层
1
发表于 2015-1-13 23:23:46 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
要不刷小怪都要刷到几十级....

Lv2.观梦者

会吐槽的画师

梦石
0
星屑
782
在线时间
3431 小时
注册时间
2011-6-10
帖子
6535
2
发表于 2015-1-14 07:51:14 | 只看该作者
用开关和公共事件控制 在敌人脚本里添加一个变量 当某开关开启时获得变量的额外经验值 变量=基础*(100-等级)
长名公主玩家群:372588926 攻略娱乐应有尽有
了解更多新RM游戏,游戏制作请加入RPGmaker支援群:113622890
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1232
在线时间
1017 小时
注册时间
2011-4-30
帖子
1516
3
发表于 2015-1-14 09:21:48 | 只看该作者
本帖最后由 汪汪 于 2015-1-14 10:50 编辑

其实升级所需经验值是越来越多的,小怪经验后来就不合算了。对于杀小怪通关的人,我觉得应该奖励才对。
  1. class Game_Enemy < Game_Battler
  2.   def exp  #获取经验值,呃,在下面添加算式吧
  3.     i =  $game_variables[变量编号]
  4.     if   i == nil
  5.        i =1
  6.     end
  7.     return $data_enemies[@enemy_id].exp * i #获取经验时会乘以变量
  8.   end
  9. end
复制代码

点评

是  ̄□ ̄||  发表于 2015-1-14 10:50
少加了个美分符号?  发表于 2015-1-14 10:08
回复 支持 反对

使用道具 举报

Lv5.捕梦者

梦石
0
星屑
33425
在线时间
5108 小时
注册时间
2012-11-19
帖子
4878

开拓者

4
发表于 2015-1-16 01:58:26 | 只看该作者
没测试:
  1. #==============================================================================
  2. # 给每个敌人定义一个等级,在敌人名字后面加符号( , ), 再写上该敌人的等级。
  3. #未写等级的敌人默认为 1级。根据角色队伍的平均等级与敌人的等级差计算爆率。
  4. #==============================================================================
  5. class Game_Enemy < Game_Battler
  6.   #--------------------------------------------------------------------------
  7.   # ● 设置
  8.   #--------------------------------------------------------------------------
  9.   # 等级差大于多少,爆率开始递减。
  10.   LEVEL_LX = 10
  11.   #--------------------------------------------------------------------------
  12.   # 达到等级差限制后,每大一级,经验减少的百分比。
  13.   EXP_REDUCE = 10
  14.   #--------------------------------------------------------------------------
  15.   # 达到等级差限制后,每大一级,金钱减少的百分比。
  16.   GOLD_REDUCE = 10
  17.   #--------------------------------------------------------------------------
  18.   # 达到等级差限制后,每大一级,物品爆率减少的百分比。
  19.   PROB_REDUCE = 5
  20.   #==========================================================================
  21.   #--------------------------------------------------------------------------
  22.   def name
  23.     sl_name = $data_enemies[@enemy_id].name.split(/,/)[0]
  24.     return sl_name != nil ? name.split(/,/)[0] : ""
  25.   end
  26.   #--------------------------------------------------------------------------
  27.   def level
  28.     sl_name = $data_enemies[@enemy_id].name.split(/,/)[1]
  29.     return sl_name != nil ? name.split(/,/)[1].to_i : 1
  30.   end
  31.   #--------------------------------------------------------------------------
  32.   def average_level
  33.     return 0 if $game_party.actors.empty?
  34.     actors_level = 0
  35.     for actor in $game_party.actors
  36.       actors_level += actor.level
  37.     end
  38.     return actors_level / $game_party.actors.size
  39.   end
  40.   #--------------------------------------------------------------------------
  41.   # ● 获取 EXP
  42.   #--------------------------------------------------------------------------
  43.   def exp
  44.     get_exp = $data_enemies[@enemy_id].exp
  45.     lx = average_level - level - LEVEL_LX
  46.     if lx > 0
  47.       get_exp -= get_exp * lx * EXP_REDUCE / 100
  48.       get_exp = [[$data_enemies[@enemy_id].exp, 1].min, get_exp].max
  49.     end
  50.     return get_exp
  51.   end
  52.   #--------------------------------------------------------------------------
  53.   # ● 获取金钱
  54.   #--------------------------------------------------------------------------
  55.   def gold
  56.     get_gold = $data_enemies[@enemy_id].gold
  57.     lx = average_level - level - LEVEL_LX
  58.     if lx > 0
  59.       get_gold -= get_gold * lx * GOLD_REDUCE / 100
  60.       get_gold = [[$data_enemies[@enemy_id].gold, 1].min, get_gold].max
  61.     end
  62.     return get_gold
  63.   end
  64.   #--------------------------------------------------------------------------
  65.   # ● 获取宝物出现率
  66.   #--------------------------------------------------------------------------
  67.   def treasure_prob
  68.     rate = $data_enemies[@enemy_id].treasure_prob
  69.     lx = average_level - level - LEVEL_LX
  70.     if lx > 0
  71.       rate -= rate * lx * PROB_REDUCE / 100
  72.       rate = [rate, 0].max
  73.     end
  74.     return rate
  75.   end
  76. end
  77. #==============================================================================
复制代码

点评

死去后来。  发表于 2015-1-16 16:27
天哪!!!!!!  发表于 2015-1-16 02:19
你.....复活啦  发表于 2015-1-16 02:19

评分

参与人数 2星屑 +210 收起 理由
myownroc + 200 塞糖
飞火流萤 + 10 我很赞同

查看全部评分

xp vx va mv  va mz 各类型脚本/插件定制
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-11 22:19

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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