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

Project1

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

[已经过期] 请问脚本里的exp曲线在哪里,怎么重新定义。

 关闭 [复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
204 小时
注册时间
2010-8-22
帖子
43
跳转到指定楼层
1
发表于 2011-6-14 19:17:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 uoyllik 于 2011-6-14 19:19 编辑

1、我想知道脚本中exp的增长曲线设置在哪里,我怎么写计算公式重新定义。例如下一等级是前一等级的1.5倍
2、另外如果我需要设置exp每等级间没有函数关系数值,如何给每一等级提升到下一等级的量附上不同的数值。例如10、30、70、200、500

Lv2.观梦者

梦石
0
星屑
255
在线时间
227 小时
注册时间
2009-7-26
帖子
216
2
发表于 2011-6-16 01:52:12 | 只看该作者
1 exp曲线不在脚本中定义,是rmxp生成后导出成新文件
2 这个就在rxmp的人物设置里头就可以

点评

LZ明显是想要脚本操控= =  发表于 2011-6-17 11:32
不要吐槽我⋯⋯
回复

使用道具 举报

菜鸟飞呀飞 该用户已被删除
3
发表于 2011-6-16 02:55:25 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
204 小时
注册时间
2010-8-22
帖子
43
4
 楼主| 发表于 2011-6-17 11:21:28 | 只看该作者
darkscout3000 发表于 2011-6-16 01:52
1 exp曲线不在脚本中定义,是rmxp生成后导出成新文件
2 这个就在rxmp的人物设置里头就可以 ...

您能别瞎说么

点评

= = 淡定⋯⋯我也是人,也会出错⋯⋯  发表于 2011-6-17 21:51
回复

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
6855
在线时间
1666 小时
注册时间
2008-10-29
帖子
6710

贵宾

5
发表于 2011-6-17 13:06:08 | 只看该作者
本帖最后由 后知后觉 于 2011-6-17 13:10 编辑

在 Game_Actor 的第 94 行左右有如下内容:
  1.   #--------------------------------------------------------------------------
  2.   # ● 计算 EXP
  3.   #--------------------------------------------------------------------------
  4.   def make_exp_list
  5.     actor = $data_actors[@actor_id]
  6.     @exp_list[1] = 0
  7.     pow_i = 2.4 + actor.exp_inflation / 100.0
  8.     for i in 2..100
  9.       if i > actor.final_level
  10.         @exp_list[i] = 0
  11.       else
  12.         n = actor.exp_basis * ((i + 3) ** pow_i) / (5 ** pow_i)
  13.         @exp_list[i] = @exp_list[i-1] + Integer(n)
  14.       end
  15.     end
  16.   end
复制代码
改成【下一等级是前一等级的1.5倍】示例:
  1.   #--------------------------------------------------------------------------
  2.   # ● 计算 EXP
  3.   #--------------------------------------------------------------------------
  4.   def make_exp_list
  5.     actor = $data_actors[@actor_id]
  6.     # 设置第一级经验为 0
  7.     @exp_list[1] = 0
  8.     # 设置第二级经验为 数据库设置的 exp曲线的 基本值 + 增长值
  9.     @exp_list[2] = actor.exp_basis + actor.exp_inflation
  10.     for i in 3..100
  11.       # 如果 i 大于 角色的最大等级
  12.       if i > actor.final_level
  13.         # 设置第 i 级需要经验为 0
  14.         @exp_list[i] = 0
  15.       else
  16.         # 获取上一等级与上上等级需要经验的差值
  17.         # 这个差值才是角色升级时需要的实际经验数量
  18.         # 而记录在数组里的数据是需要的总经验值
  19.         n = @exp_list[i - 1] - @exp_list[i - 2]
  20.         # 设置第 i 级需要的总经验值
  21.         @exp_list[i] = @exp_list[i-1] + Integer(n * 1.5)
  22.       end
  23.     end
  24.   end
复制代码











你知道得太多了

回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
145
在线时间
0 小时
注册时间
2011-6-16
帖子
1
6
发表于 2011-6-17 15:42:47 | 只看该作者
在楼上提出的解决方案的基础上,应该还可以直接写@exp_list吧……
那是不是很累啊
回复

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-26 07:29

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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