第一节 RPG Maker MV简介
制作游戏需要专业的游戏引擎,这样可以事半功倍,若要想制作RPG类型的游戏,那么RPG Maker MV是一个不错的选择。
RPG Maker,又名RPG制作大师、RPGツークル、RPG Tsukuru。是一款Enterbrain Incorporation公司出品的RPG游戏制作工具,分为RPG Maker 2000,RPG Maker 2003,RPG Maker XP,RPG Maker VX,RPG Maker VX Ace,RPG Maker MV。
我们现在要介绍的是最新版的RPG Maker MV,这个版本可以实现的功能与前作基本一致,但最大的不同在于使用的语言由Ruby变成了JavaScript,以及由此带来的与html5结合的便利。
现在,我们可以借助html5+JavaScript,将制作的游戏部署到PC端,Android端,IOS端。通俗来讲,凡是可以浏览网页的设备,只要配置足够,都可以运行MV制作的游戏。
第二节 JavaScript简介
JavaScript是一种属于网络的脚本语言,已经被广泛用于Web应用开发,常用来为网页添加各式各样的动态功能,为用户提供更流畅美观的浏览效果。通常JavaScript脚本是通过嵌入在HTML中来实现自身的功能的。
实际上,我们的RPG Maker MV游戏本身就可以看做一个html组成的网站,因此,MV的游戏也需要使用JavaScript来实现其功能。可以说,网页制作使用的JavaScript和MV游戏制作使用的JavaScript没有什么不同。
但是,若要问JavaScript和java有什么关系,请参考雷锋与雷峰塔。记住这一点,不要把两者混用。
它最初由Netscape的Brendan Eich设计。 Netscape在最初将其脚本语言命名为LiveScript,后来Netscape在与Sun合作之后将其改名为JavaScript。JavaScript最初受Java启发而开始设计的,目的之一就是“看上去像Java”,因此语法上有类似之处,一些名称和命名规范也借自Java。但JavaScript的主要设计原则源自Self和Scheme。JavaScript与Java名称上的近似,是当时Netscape为了营销考虑与Sun微系统达成协议的结果。为了取得技术优势,微软推出了JScript来迎战JavaScript的脚本语言。为了互用性,Ecma国际(前身为欧洲计算机制造商协会)创建了ECMA-262标准(ECMAScript)。两者都属于ECMAScript的实现。尽管JavaScript作为给非程序人员的脚本语言,而非作为给程序人员的脚本语言来推广和宣传,但是JavaScript具有非常丰富的特性。
发展初期,JavaScript的标准并未确定,同期有Netscape的JavaScript,微软的JScript和CEnvi的ScriptEase三足鼎立。1997年,在ECMA(欧洲计算机制造商协会)的协调下,由Netscape、Sun、微软、Borland组成的工作组确定统一标准:ECMA-262。
我们使用JavaScript,也应当遵守标准。目前,js的最新标准是es6。
第三节 RPG Maker MV中使用插件
首先打开RPG Maker MV,打开一个工程,进入其根目录后可以看到,工程的结构如图1-1所示。
图1-1
其中,js目录下即是JavaScript所在的地方,打开js,我们可以看到如图1-2,libs是MV的库,系统所用到的一些配置都在其中。plugins是游戏的插件所在地,放在这里面的js文件才能被当做插件加载。
其余的文件都是游戏的系统脚本,游戏程序的实现全靠这几部分。
- main.js是主文件,游戏的入口。
- plugins.js是一个表,里面是对插件使用的配置情况。
- rpg_core.js是游戏的核心,里面有游戏对图形等等的处理方法。
- rpg_managers.js是游戏对数据的管理。
- rpg_object.js是游戏中所用到的对象。
- rpg_scenes.js是游戏中所显示的场景。
- rpg_sprites.js是游戏中的精灵。
- rpg_windows.js是游戏中的窗口。
图1-2
libs文件夹下,其内容如图1-3所示。其中,fpsmeter.js用于帧数测试。lz-string.js用于大量数据存储。pixi.js用于HTML5 2D渲染。
图1-3
我们用到最多的就是plugins文件夹,此文件夹下所有的文件都会反映在RPG Maker MV的插件管理器中,如图1-4,1-5所示。
图1-4
图1-5
这里,我们选择一个插件,EnemyBook,此插件的帮助文档显示了作者对使用者的提示,如图1-6。在我们自己写给自己用时,虽然当时不需要提示,但日子久了仍然会忘记一些功能的具体实现,因此,帮助文档是必不可少的。
图1-6
双击parameters参数表中的项目,就可以配置插件的参数,如图1-7。这也是由插件制作者设计好的。可以依据提示自行设置插件允许的功能。
图1-7
设置好之后,别忘了将status状态设置为on开启状态。这样,我们就可以使用该插件了。
现在,我们设置一个老爷爷,通过与他对话来打开EnemyBook怪物图鉴。其事件页面使用Plugin Command,在其中输入我们刚才在帮助文档中看到的命令。此处应该用打开怪物图鉴的命令EnemyBook Open,设置如图1-8。
测试游戏,可以看到,效果如图1-9所示,??????的符号正是我们刚才设置的不知道的怪物的显示名字。
现在,我们进行一次战斗,之后再看看会发生什么,如图1-10。
战斗之后再打开EnemyBook,然后会发现,其中的Bat已经可以查看了,如图1-11。
这就是插件的用法示例,通过学习,我们自己也可以设计并制作自己的插件。如果不想制作插件,学习JavaScript也有助于我们理解和使用插件,因为并不是每个制作者的帮助文档都写的简单明了。
如果我们要自己创建插件,只需要在pulgins文件夹下创建一个新的文本文件,将扩展名改为js,然后就可以调用了。
图1-8
图1-9
图1-10
图1-11
第四节 如何编辑JavaScript
事实上,任何文本编辑器都可以打开并编辑后缀名为.js的JavaScript的脚本文件,但笔者在这里推荐使用专业的编辑器,比如notepad++,以及笔者用的visual studio code,如图1-12所示。
一个好的编辑器可以帮助你完成一些繁琐的任务,使得编程事半功倍。
图1-12
第五节 在事件中使用脚本
事实上,我们在事件中除了可以使用插件定义好的插件命令外,还可以直接在事件中嵌套入JavaScript语句。如图1-13所示,在事件中插入脚本,即JavaScript语句,之后在游戏中可以通过事件来触发,如图1-14。
图1-13
图1-14