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

Project1

 找回密码
 注册会员
搜索

角色能力值能用脚本输入吗?

查看数: 2831 | 评论数: 7 | 收藏 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2021-12-4 18:28

正文摘要:

角色能力值能用脚本输入吗?用默认得曲线一级一级输入太麻烦了。 能不用用脚本输入 比如力量 角色ID =>[这里是角色的每一级的力量值] 1=>[2,4, 8, 10, 12, 18, 20,23,26,29,32] ...

回复

enghao_lim 发表于 2021-12-7 01:03:38
miantouchi 发表于 2021-12-6 22:05
经过测试可以完美达到想要的想过,没有做不到,只有想不到呀,膜拜了。
我是想每次运行修改一个角色的数 ...
  1. $actor[1] = [2, 4, 8, 10, 12, 18, 20, 23, 26, 29, 32]
  2. $actor[3] = [2, 4, 8, 10, 12, 18, 20, 23, 26, 29, 32]
复制代码

完全能够同时对多个角色进行修改,如果你有多个角色完全可以一起更改。
enghao_lim 发表于 2021-12-6 14:49:51
本帖最后由 enghao_lim 于 2021-12-6 14:51 编辑
miantouchi 发表于 2021-12-6 09:14
曲线没有那么精确吧,手动可以掌控每一级对应的情况


虽然不是很理解但还是满足你……

  1. $data_actors = load_data("Data/Actors.rxdata")

  2. $actor = {}

  3. $actor[1] = [2, 4, 8, 10, 12, 18, 20, 23, 26, 29, 32]

  4. $actor.each { |pair|
  5.   id = pair[0]
  6.   arr = pair[1]
  7.   for i in 0...arr.size
  8.     $data_actors[id].parameters[2, i+1] = arr[i]
  9.   end
  10. }

  11. save_data($data_actors, "Data/Actors.rxdata")

  12. exit
复制代码


插在main之前,运行,结束会直接关闭游戏,如果是在工程测试的情况工程也得关掉重开,工程会记着工程打开时的值,所以会看不到修改,改好后即可把脚本移除或者放到main之后。

PS: parameters[2, i+1] 0 是 maxhp, 1 是 maxsp,2 是 力量 以此类推……

对此脚本照成的数据丢失一概不负责,请自行备份。

评分

参与人数 4星屑 +100 +4 收起 理由
RyanBern + 100 + 1 认可答案
kelove331 + 1 我很赞同
miantouchi + 1 认可答案
Im剑侠客 + 1 直接暴力输出了属于是

查看全部评分

SailCat 发表于 2021-12-6 12:20:07
会解三元一次方程组吗?

https://rpg.blue/thread-487410-1-3.html

点评

醋瞎双眼的帖子  发表于 2021-12-6 21:26
miantouchi 发表于 2021-12-6 09:14:28
enghao_lim 发表于 2021-12-6 02:34
我比较好奇为什么不直接用生成曲线……


曲线没有那么精确吧,手动可以掌控每一级对应的情况
enghao_lim 发表于 2021-12-6 02:34:41
我比较好奇为什么不直接用生成曲线……
Im剑侠客 发表于 2021-12-4 18:58:31
本帖最后由 Im剑侠客 于 2021-12-5 21:58 编辑

如果可以接受高工作量,手动遍历完全可行。
有个思路,
先独立建一个用于获取各等级力量的哈希表,命名比如:
module Finger_Def
  Str = {
    1(角色id) => [各等级力量参数数组];
    2(以此类推)
}
end

然后,找到处理角色力量的函数,比如:def str(角色的力量源函数),调用角色的力量,比如调用1号角色第5级的力量:
a = Finger_Def::Str
b = a[1][5]

得到力量数值后,可自行处理下一步自己需要应用的地方。

或者是升级的时候,呃……因为我没有使用默认的升级功能,对这部分升级时的能力值提升不太清楚。

===========

更新一下。
打开工程看了看默认相关的,关于力量准确的位置是def base_str。
关键一句应该是首句:n = $data_actord[@actor_id].parameters[2, @level]。
将这一句改写成从哈希表获取力量数值的方式即可。

===========

第二天晚上更新。
当我侧过脸去,我从另一个角度发现,似乎你想要的可能是类似“外部工具”的援助工具,本质上应该还没有想着要完全脱离角色能力值曲线表。如果是这样的话,似乎答非所问了,上面的方法就仅作参考吧。


更多的留给楼下补充吧。

点评

|•'-'•)و✧  发表于 2021-12-7 07:37
哈哈你离成功也不远了!  发表于 2021-12-6 22:07

评分

参与人数 1+1 收起 理由
miantouchi + 1 塞糖

查看全部评分

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

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

GMT+8, 2025-8-21 10:42

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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