Project1

标题: 【插件】分等级武器自动制作与获得 [打印本页]

作者: 一代鬃狮    时间: 2016-2-15 18:04
标题: 【插件】分等级武器自动制作与获得
本帖最后由 一代鬃狮 于 2016-2-16 09:43 编辑


上面是示例图。
并不知道是不是重复造车轮了
无论如何还是发一下
先是效果图,这个插件可以自动产生这样的武器,自带描述,自带名字。
并且同时可以简单地在事件中获得这样的武器。
下面上简易使用教程。
插件其实有两个,分别是weapondatamade和weaponget。
weapondatamade负责在每次启动游戏的时候自动生成武器数据,共2000个,里面有破碎,普通,
精华,稀有,传奇五种品质。
而weaponget则是在实际事件中负责通过指令来获得上面创建好的武器。
大家应该都会用插件了,在把weapondatamade.js和weaponget.js放入plugins文件夹之后,
在插件管理器中激活这两个。如下图。

然后,在楼下聪明人的提醒下,我发现应该先运行一次游戏:

运行到这个界面就可以了。
然后,请重启RPGMV这个程序。原因是weapondatamade将会把数据写入weapon.json,只有在重启之后才能够在数据库里看得到。
重启后效果如下:

这里有一个需要注意的地方,请一定要在重启之后再关闭weapondatamade这个插件。千万不要运行完一次游戏-》关闭weapondatamade插件-》重启。

正确的顺序是:运行一次游戏-》重启rpgmv-》关闭weapondatamade插件

否则不会成功。原因我也不知道
weaponget插件一直开着就成了。
然后在创建事件的时候点击插件指令,输入指令。
比如图中的weaponget rare(即获取一个稀有武器)

点确定,效果如下。(之前已经输入了三个类似的指令了。)

然后就可以用了。
插件见链接
http://pan.baidu.com/s/1bqmjRw
作者: 309988769    时间: 2016-2-15 20:52
是每次新开游戏重建武器库,还是每次打开游戏都重建(存档)?
作者: 1097811376    时间: 2016-2-15 23:27
这些武器是俄罗斯人打造的吧{:2_270:}
作者: 小叮鈴    时间: 2016-2-15 23:45
首先要先設定2000千個裝備!要命阿
作者: 一代鬃狮    时间: 2016-2-16 08:46
309988769 发表于 2016-2-15 20:52
是每次新开游戏重建武器库,还是每次打开游戏都重建(存档)?

每次新开游戏重建武器库,跟存档没什么关系
作者: 一代鬃狮    时间: 2016-2-16 08:48
小叮鈴 发表于 2016-2-15 23:45
首先要先設定2000千個裝備!要命阿

不用自己设定...这个机制确实有待优化。
作者: 一代鬃狮    时间: 2016-2-16 08:56
309988769 发表于 2016-2-15 20:52
是每次新开游戏重建武器库,还是每次打开游戏都重建(存档)?

不对,等等,你说得对,武器库建立一次就行,不能每次都重建啊...那样的话获得的武器都不对劲了。
作者: 小叮鈴    时间: 2016-2-16 12:25
一代鬃狮 发表于 2016-2-16 08:56
不对,等等,你说得对,武器库建立一次就行,不能每次都重建啊...那样的话获得的武器都不对劲了。 ...

妳說的是新建工程吧
作者: 309988769    时间: 2016-2-16 12:53
本帖最后由 309988769 于 2016-2-16 13:24 编辑
一代鬃狮 发表于 2016-2-16 08:56
不对,等等,你说得对,武器库建立一次就行,不能每次都重建啊...那样的话获得的武器都不对劲了。 ...



当然,有武器库,最好有防具库了,期待你的大作
作者: 一代鬃狮    时间: 2016-2-16 17:06
小叮鈴 发表于 2016-2-16 12:25
妳說的是新建工程吧

weapondatamade 会在每次游戏运行的时候重新创建一个武器库,如果一直开着这个插件的话就会出现以下的问题:比如人物在游戏中获得了id = 50的武器(比如匕首),存档之后重新开启游戏,这个时候如果weapondatamade还开着就会重新建立武器库,id = 50的武器就很可能是别的武器(比如长剑)了。目前的(偷懒)解决办法就是先用weapondatamade创建完武器库之后关掉这个插件= =b
作者: 小叮鈴    时间: 2016-2-16 17:09
一代鬃狮 发表于 2016-2-16 17:06
weapondatamade 会在每次游戏运行的时候重新创建一个武器库,如果一直开着这个插件的话就会出现以下的问 ...

問題遊戲開始,插件怎麼可能會影響到遊戲本身的模板檔案? 我看你的裝備是在模板裡面阿
作者: 一代鬃狮    时间: 2016-2-16 18:31
小叮鈴 发表于 2016-2-16 17:09
問題遊戲開始,插件怎麼可能會影響到遊戲本身的模板檔案? 我看你的裝備是在模板裡面阿 ...

武器的数据是存在Weapons.json文件里的,weapondatamade在最后用
var filePath = dirPath() +  'Weapons.json';  
fs.writeFileSync(filePath, data);把描述武器的字符串写到Weapons.json里了
只要插件开着,每次游戏运行weapondatamade都会重新随机出每个id的武器属性,然后写进Weapons.json
..大概是这个样子吧
作者: 一代鬃狮    时间: 2016-2-16 18:33
309988769 发表于 2016-2-16 12:53
当然,有武器库,最好有防具库了,期待你的大作

(゚Д゚≡゚Д゚)防具库...又是一个需要苦力的活计( ;゚д゚)
作者: 小叮鈴    时间: 2016-2-16 19:25
一代鬃狮 发表于 2016-2-16 18:31
武器的数据是存在Weapons.json文件里的,weapondatamade在最后用
var filePath = dirPath() +  'Weapons. ...

這做成網頁遊戲的話 會有大問題吧
作者: 一代鬃狮    时间: 2016-2-16 19:50
小叮鈴 发表于 2016-2-16 19:25
這做成網頁遊戲的話 會有大問題吧

恐怕是的23333,或许页游有其它方法实现(σ゚д゚)σ
作者: rpg-sheep    时间: 2016-2-20 17:44
个人建议在得到物品时对得到的物品随机新建一条前缀属性
比如得到了item
item.before = 0;
然后菜单显示物品时
switch(item.before){
case 0:drawText('传说之' + item.name,0,0,50);break;
default:drawText(item.name,0,0,50);break;
}
然后计算武器伤害时
switch(item.before){
case 0:return item.atk * 1.5;
default:return item.atk;
}
上面只是思路,这样就新建了一个前缀传说,效果是武器攻击力1.5倍
这样就可以达到抛弃数据库的目的,并且可以直接存入存档(MV存档机制是按照Object),免去了很多麻烦
作者: 小叮鈴    时间: 2016-2-26 19:31
一代鬃狮 发表于 2016-2-16 19:50
恐怕是的23333,或许页游有其它方法实现(σ゚д゚)σ


我想了想之後,另外發現有些小問題 首先光看這樣看不出能力來....貌似說明和能力不相同

再來這個道具名稱嘛.....有點長的噁心{:2_276:} 而且有點亂七八糟阿 {:2_276:}

要是有大神能直接做出一千套武器分享存檔就好了
作者: 汪汪    时间: 2016-2-27 10:07
本帖最后由 汪汪 于 2016-2-27 10:14 编辑

武器库保存到存档里不就行了,(不过由于存档文件可能过大……所以我做了下载上传读取文件,
不过其实可以压缩数据的,比如只记录随机的变量)


每次新游戏就重建一次。
添加一个参数,参数是数字时,对应对象不会被随机改变,
参数是一个武器对象时,根据武器对象相应参数设置,不需要随机设置的项目和需要随机设置的项目。


最好不要用fs获取和保存数据,因为网页版恐怕不能支持。

插件运行后自动关闭可以参考我的插件管理器。

话说有没有即时添加武器的脚本?


以及……忽然想做一个仿mv数据库
不过好像已经没时间了……
作者: ♂雨    时间: 2017-10-6 18:09
和我的系统显示有点冲突,说明会显示不完全,找了半天没改好,请问怎么把他们不要换行加个逗号连续写下去就可以了。

作者: yang1zhi    时间: 2017-10-6 21:42
不要使用默认的数据库。
因为那是一个ID对应一个武器,唯一的。
用数组就没关系,不对应。
作者: ♂雨    时间: 2017-10-6 22:18
yang1zhi 发表于 2017-10-6 21:42
不要使用默认的数据库。
因为那是一个ID对应一个武器,唯一的。
用数组就没关系,不对应。 ...

方法是什么,不是很懂。他自动生成的描述都是隔行的




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1