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

Project1

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

[已经解决] 角色能力值能用脚本输入吗?

[复制链接]

Lv4.逐梦者

梦石
0
星屑
14106
在线时间
2141 小时
注册时间
2019-1-24
帖子
1121

R考场第七期纪念奖

跳转到指定楼层
1
发表于 2021-12-4 18:28:03 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

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

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

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

1.png (5.41 KB, 下载次数: 4)

1.png

2.png (6.3 KB, 下载次数: 2)

2.png

Lv4.逐梦者

梦石
0
星屑
7921
在线时间
1049 小时
注册时间
2012-4-3
帖子
1271

开拓者

2
发表于 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 塞糖

查看全部评分

回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
7946
在线时间
1182 小时
注册时间
2007-7-29
帖子
2055
3
发表于 2021-12-6 02:34:41 | 只看该作者
我比较好奇为什么不直接用生成曲线……
回复 支持 1 反对 0

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
14106
在线时间
2141 小时
注册时间
2019-1-24
帖子
1121

R考场第七期纪念奖

4
 楼主| 发表于 2021-12-6 09:14:28 | 只看该作者
enghao_lim 发表于 2021-12-6 02:34
我比较好奇为什么不直接用生成曲线……


曲线没有那么精确吧,手动可以掌控每一级对应的情况
回复 支持 反对

使用道具 举报

Lv5.捕梦者 (版主)

遠航の猫咪

梦石
3
星屑
22437
在线时间
2335 小时
注册时间
2005-10-15
帖子
1160

开拓者

5
发表于 2021-12-6 12:20:07 | 只看该作者
会解三元一次方程组吗?

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

点评

醋瞎双眼的帖子  发表于 2021-12-6 21:26
SailCat (小猫子·要开心一点) 共上站 24 次,发表过 11 篇文章 上 次 在: [2006年01月28日11:41:18 星期六] 从 [162.105.120.91] 到本站一游。
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
7946
在线时间
1182 小时
注册时间
2007-7-29
帖子
2055
6
发表于 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 直接暴力输出了属于是

查看全部评分

回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
14106
在线时间
2141 小时
注册时间
2019-1-24
帖子
1121

R考场第七期纪念奖

7
 楼主| 发表于 2021-12-6 22:05:35 | 只看该作者
本帖最后由 miantouchi 于 2021-12-6 22:06 编辑
enghao_lim 发表于 2021-12-6 14:49
虽然不是很理解但还是满足你……


经过测试可以完美达到想要的想过,没有做不到,只有想不到呀,膜拜了。
我是想每次运行修改一个角色的数值,所以在你的脚本基础上改了下,不知道改的有没有
啥后遗症,希望指点下。
我只是增加了一个MP的修改,如果没啥问题,我会依次增加,力量、敏捷等等这些修改。

1.png (38.88 KB, 下载次数: 2)

1.png

2.png (36.29 KB, 下载次数: 8)

2.png

点评

运作原理没毛病,能够运作。  发表于 2021-12-7 01:01
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
7946
在线时间
1182 小时
注册时间
2007-7-29
帖子
2055
8
发表于 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]
复制代码

完全能够同时对多个角色进行修改,如果你有多个角色完全可以一起更改。
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-4-26 00:52

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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