rpgmaker游戏mv 如何设定自动存档

插件其实就是对游戏的修改或扩展,用得6了也可以实现一些高大上的效果,当然路要一步一步走,本节讲的是怎么重写(也就是修改啦)RPGMaker提供的方法

在讲解之前,我们先看一下工程目录下的js文件夹:


可以看到这里有很多.js的文件,这些文件就是游戏的源代码(没错就是源代码),如果我们想要扩展游戏功能,就需要了解这些源代码的结构,哪些方法写在哪个文件里,叫什么名字等等。

既然要了解,那我们就得打开看看,不过这里我还是不建议各位打开这些文件了,看了你会崩溃的,因为这里的文件都有几千行代码,而且没有注释!

当然了我们的脚步不会就此停止,因为有大神对此进行了翻译(虽然是机翻,但总比没有好上1000倍啊),我打包上传到某盘了,地址在文章末尾!

如此众多的代码,在短时间内要全部看完都很难,更不用说了解详细的细节了,但是路就得一步一步走,我们先打开rpg_scenes.js文件,拖到第292行,官方代码如下:

这一段代码是干嘛的呢?这段代码是绘制游戏主界面中的名称,也就是下图中红圈圈起来的部分:


如果我们直接对这些代码进行修改的话,就可以修改游戏运行中这个游戏标题的效果。

但是我们并不推荐直接修改官方代码,因为有时候官方会对代码进行更新,这个时候如果你更新官方代码的话以前进行的修改就会丢失,并且如果你修改的效果想在别的项目中使用,或者想共享给其他开发者,这个时候就会很麻烦,这也是为什么RPGMaker给我们提供了插件系统的原因,我们将对官方代码的修改写在插件代码里(比如我们之前的“test.js”),这个时候官方代码更新并不会影响我们已经做出的修改,如果我们想分享给别人,只需要将test.js共享即可。

如何在插件里修改官方代码呢?我们新建一个js文件,还是叫“test.js”吧,上面的插件名、作者等信息的定义就不多说了,我们选将官方的drawGameTitle方法复制到“test.js”,粘贴到声明注释块的后方,并作如下修改:

保存后运行游戏,可以发现游戏标题发生了改变:


虽然这个效果看起来略怪,不过我们已经知道了如何在插件中去重写官方代码中的方法了。

但是要注意的是,这样一来官方代码中的方法已经被我们写的方法覆盖了,也就是官方的方法将不会被执行而完全执行我们重写的方法。

有时候我们可能只想要在官方代码中增加功能而非修改功能,这个时候我们复制官方的长长的代码就没有意义,幸好我们有另一种不用复制全部代码又能重写的办法:

首先,我们声明了一个变量,这个变量指向的对象是官方定义的方法

然后我们在重定义该方法时,在方法内第一行,就调用了这个变量(也就是调用了一次官方的方法)

再后才是我们的代码,在标题下方增加了一行文字,保存一下看看游戏效果:


可以看到,我们原原本本地执行了官方原来的代码,并且又新打印了一行文字。

调用原方法代码不一定要在方法体的第一行,可以根据实际情况来决定在第几行调用甚至不调用,比如下例:

//如果插件参数设置不为true,就不用显示标题了

上面的代码中,我们定义了一个插件参数(上节有讲这里就不详细说了),在重写方法时,先判断“Show Title”的值为“true”时,才调用原方法中绘制标题的代码

在插件管理器中将这个参数改为false,再运行游戏,可以看到如下效果:

当然如果插件参数改为“true”,游戏标题又会出现,这里就不截图了,大家可以自己去试。

最后放出机翻代码注释下载地址:

ps:非完整,下面有完整版的地址!

'config.rpgsave'是为了保存游戏设定的文件。标题画面以及游戏菜单的设置状态保存在这里。比如下面的设置画面。


'file*.rpgsave'作为实际的保存文件,保存着游戏各种状态。存档文件可以生成数个,*的部分为连号。这个文件所储存的内容将会在下一章说明。

'global.rpgsave' 是储存在存档选择画面中所使用的数据,在存档生成和更新时更新。比如对应下面的存档选择画面。


我们知道'file*.rpgsave' 是实际的存档文件,那么是否所有内容都存在其中?那么省略一部分,来粗略介绍下主要部分吧。

以下为yamachan经常使用的插件模板文件。

  1.  * 由于是测试用的文件,实际使用的时候请适当重命名

开发工具与游戏变量的基础
游戏中经常使用的变量,会以$data开头。其作为游戏基本的数据,会通过RPG Maker MV自动生成,data文件以*.json的形式保存。这些文件会在游戏开始时读取,基本上是不会发生变更的静态数据,本指导中会将这些称之为「$data变量」,被保存的值则称为「静态数据」。

与其对应的以$game开头的变量,在游戏内被使用,被更新的动态数据,这些都会保存在存档中。在本指导中将其称为「$game变量」,被保存的值则称之为「动态数据」。

在RPG Maker MV中测试游戏的时候按下F8就会启动开发工具。开发工具中的控制台是非常便利的东西。

实际启动控制台,输入$data 后,以$data 开头的变量会提示出一堆。$game也同样。控制台中的提示辅助功能,对帮助理解游戏内的状态有很大的帮助。


关于$data变量的第一个$dataActors,让我们稍微看一下吧。在控制台上选择这个变量名,然后按下回车键显示内容。


在$dataActors[1]中的name显示角色设定名为 "挑战者" 。其他还有各种设定,但因为是$data变量,这些基本都是在数据库中所设定的值。

最下面的_proto_是这个Object的父元素,但因为是Object,并没有设置上级的类,只是单纯用作数据的Object。


Game_Actors类中,定义了一个名为actors的函数。在控制台上输入这个函数名后,就能看到这个函数的定义(源码文件)。右边显示了这个js文件的名称和行数,想要知道更详细的内容不妨点击对照下源码。

控制台是非常便利的工具,请务必活用。


我要回帖

更多关于 rpgmaker游戏 的文章

 

随机推荐