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

Project1

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

[已经解决] 请教关于自定义人物升级经验值的问题

[复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
54 小时
注册时间
2011-8-4
帖子
87
跳转到指定楼层
1
发表于 2012-4-6 23:18:46 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我在66的搜索上找到了有人问了同样的问题,回答的是把脚本里Game_Actor的94-106行:
  1. def make_exp_list
  2.     actor = $data_actors[@actor_id]
  3.     @exp_list[1] = 0
  4.     pow_i = 2.4 + actor.exp_inflation / 100.0
  5.     for i in 2..100
  6.       if i > actor.final_level
  7.         @exp_list = 0
  8.       else
  9.         n = actor.exp_basis * ((i + 3) ** pow_i) / (5 ** pow_i) #这行就是下一级exp的计算公式,你可以改成自己需要的公式
  10.         @exp_list = @exp_list[i-1] + Integer(n)
  11.       end
  12.     end
  13.   end
复制代码
把那个计算公式改下就行了
于是我改成这样了:
  1. def make_exp_list
  2.     actor = $data_actors[@actor_id]
  3.     @exp_list[1] = 0
  4.     pow_i = 2.4 + actor.exp_inflation / 100.0
  5.     for i in 2..100
  6.       if i > actor.final_level
  7.         @exp_list[i] = 0
  8.       else        
  9.          if i < 11
  10.            n = (n-1)*10
  11.            @exp_list[i] = Integer(n)
  12.          else
  13.            if i < 21
  14.              n = (n-1)*100
  15.              @exp_list[i] = Integer(n)
  16.            else
  17.              if i < 31
  18.                n = (n-1)*1000
  19.                @exp_list[i] = Integer(n)
  20.              else
  21.                if i < 41
  22.                  n = (n-1)*10000
  23.                  @exp_list[i] = Integer(n)
  24.                else
  25.                  if i <51
  26.                    n = (n-1)*100000
  27.                    @exp_list[i] = Integer(n)
  28.                  else
  29.                    @exp_list[i] = 0
  30.                  end
  31.                end
  32.              end
  33.            end
  34.          end
  35.       end
  36.     end
  37.   end
复制代码
我本来是想调成每十级就有一个经验坎。
但游戏运行开始就弹出错误,我是脚本新手,请问谁能帮忙看看是哪里错了吗?
我也大一了啊~~
哇咔咔咔咔,癫狂侠客给我现场教学了,你们没有吧~~

梦幻西游高仿版制作进程:
剧情:★★★☆☆☆☆☆☆☆
脚本:★☆☆☆☆☆☆☆☆☆
音乐:★★★☆☆☆☆☆☆☆
界面:★☆☆☆☆☆☆☆☆☆

Lv1.梦旅人

梦石
0
星屑
44
在线时间
317 小时
注册时间
2011-2-9
帖子
1129
2
发表于 2012-4-6 23:48:47 | 只看该作者
脚本我不懂、但是我知道在游戏设置(脚本按钮旁边)那里、角色是可以绘制经验增长曲线的、为什么不直接用那个呢?直观又不会出错。
反正是坏人一个
回复

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1513
在线时间
1448 小时
注册时间
2010-10-22
帖子
1011
3
发表于 2012-4-7 00:23:19 | 只看该作者
本帖最后由 kangxi0109 于 2012-4-7 00:24 编辑

在RGSS里面,没有else if 的说法(那是C++,在F1帮助里面有讲到),应该改为 elsif :
  1. def make_exp_list
  2.     actor = $data_actors[@actor_id]
  3.     @exp_list[1] = 0
  4.     pow_i = 2.4 + actor.exp_inflation / 100.0
  5.     for i in 2..100
  6.       if i > actor.final_level
  7.         @exp_list[i] = 0
  8.       elsif i < 11
  9.          n = (n-1)*10
  10.          @exp_list[i] = Integer(n)
  11.       elsif i < 21
  12.          n = (n-1)*100
  13.          @exp_list[i] = Integer(n)
  14.       elsif i < 31
  15.          n = (n-1)*1000
  16.          @exp_list[i] = Integer(n)
  17.       elsif i < 41
  18.          n = (n-1)*10000
  19.          @exp_list[i] = Integer(n)
  20.       elsif i <51
  21.          n = (n-1)*100000
  22.          @exp_list[i] = Integer(n)
  23.       else
  24.          @exp_list[i] = 0
  25.       end
  26.     end
  27.   end
复制代码

点评

想当初我也是这样被RGSS给坑了...  发表于 2012-4-7 00:27
【2022.06.03】原本以为已经不可能再找回来的东西重新找回来了,原本一直念念不忘的坑终于再一次拿起铲子了。一别竟近10年,你好,我的世界我的梦。
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
54 小时
注册时间
2011-8-4
帖子
87
4
 楼主| 发表于 2012-4-7 15:57:10 | 只看该作者
黑色的笔 发表于 2012-4-6 23:48
脚本我不懂、但是我知道在游戏设置(脚本按钮旁边)那里、角色是可以绘制经验增长曲线的、为什么不直接用那 ...

我找了一下,只有力量等属性能自己绘制,EXP不行啊


‘‘──雁北羽于2012-4-7 16:04补充以下内容

十分感谢{:2_275:},我把你的脚本复制进去,结果提示脚本第9行出错,请问是为什么呢
’’


‘‘──雁北羽于2012-4-7 16:05补充以下内容

十分感谢{:2_275:},我把你的脚本复制进去,结果提示脚本第9行出错,请问是为什么呢

’’

点评

n没有定义  发表于 2012-4-7 18:01
我也大一了啊~~
哇咔咔咔咔,癫狂侠客给我现场教学了,你们没有吧~~

梦幻西游高仿版制作进程:
剧情:★★★☆☆☆☆☆☆☆
脚本:★☆☆☆☆☆☆☆☆☆
音乐:★★★☆☆☆☆☆☆☆
界面:★☆☆☆☆☆☆☆☆☆
回复

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1513
在线时间
1448 小时
注册时间
2010-10-22
帖子
1011
5
发表于 2012-4-8 01:39:37 | 只看该作者
本帖最后由 kangxi0109 于 2012-4-8 01:41 编辑
雁北羽 发表于 2012-4-7 15:57
我找了一下,只有力量等属性能自己绘制,EXP不行啊

的确,n没定义。
  1. def make_exp_list
  2.     actor = $data_actors[@actor_id]
  3.     @exp_list[1] = 0
  4.     pow_i = 2.4 + actor.exp_inflation / 100.0
  5.     n = actor.exp_basis * ((i + 3) ** pow_i) / (5 ** pow_i)#这里
  6.     for i in 2..100
  7.       if i > actor.final_level
  8.         @exp_list[i] = 0
  9.       elsif i < 11
  10.          n = (n-1)*10
  11.          @exp_list[i] = Integer(n)
  12.       elsif i < 21
  13.          n = (n-1)*100
  14.          @exp_list[i] = Integer(n)
  15.       elsif i < 31
  16.          n = (n-1)*1000
  17.          @exp_list[i] = Integer(n)
  18.       elsif i < 41
  19.          n = (n-1)*10000
  20.          @exp_list[i] = Integer(n)
  21.       elsif i <51
  22.          n = (n-1)*100000
  23.          @exp_list[i] = Integer(n)
  24.       else
  25.          @exp_list[i] = 0
  26.       end
  27.     end
  28.   end
复制代码

点评

你没回复我我都不知道出问题了...所幸回头看了。  发表于 2012-4-8 01:43
【2022.06.03】原本以为已经不可能再找回来的东西重新找回来了,原本一直念念不忘的坑终于再一次拿起铲子了。一别竟近10年,你好,我的世界我的梦。
回复

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-4-28 03:23

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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