Project1
标题:
关于MV插件和MZ插件的一些疑问
[打印本页]
作者:
永远的小萌新
时间:
2022-3-14 19:48
标题:
关于MV插件和MZ插件的一些疑问
萌新最近想用MZ做游戏,MV的插件语言和MZ的插件语言都是js,它们有什么区别吗?可以直接把MV的yep插件复制到MZ里用吗?MV里用js编程和MZ里用js编程有什么不同?
作者:
芯☆淡茹水
时间:
2022-3-14 20:31
就像甜/咸豆腐脑一样,
虽然都是豆腐脑,但是加工的口味上有细微差别。
作者:
永远的小萌新
时间:
2022-3-15 18:54
芯☆淡茹水 发表于 2022-3-14 20:31
就像甜/咸豆腐脑一样,
虽然都是豆腐脑,但是加工的口味上有细微差别。
那请问大佬,细微差别都是指哪些方面呢?
作者:
enderman180
时间:
2023-1-11 15:51
有些插件可以,有些插件不行,具体看说明
作者:
小秋橙
时间:
2023-1-11 17:50
mv插件和mz插件最大的区别应该是「全局参数的类型」和「插件指令的格式」。
以前者来说,全局参数的类型默认是字符串,运行时mz会通过PluginCommonBase这个官方插件进行智能识别来区分哪些是数值或开关或数组或对象。
以后者来说,mv的「插件指令」就像是cmd这样的命令行参数,参数全是字符串并且中间只能用空格隔开,而mz则可以自定义参数的结构,就像一个新的事件指令一样。
作者:
rfvtgbzxc
时间:
2023-1-15 17:02
本帖最后由 rfvtgbzxc 于 2023-1-15 17:16 编辑
1.RM的结构
在代码的组织上,RM可以看成四个大模块:RM插件,RM系统代码,PIXI框架,JS引擎接口。
大体上,RM系统代码部分建立在PIXI框架,完全建立在JS引擎接口上;PIXI框架部分完全建立在JS引擎接口上;RM插件绝大部分建立在RM系统代码上。
JS引擎接口是浏览器内置,不归RM管,是最底层的接口。
PIXI框架提供更方便高效的绘图能力。
RM系统代码通过使用PIXI框架提供的绘图能力绘制画面,通过使用JS引擎接口进行网络访问,文件读写,数据结构的基本操作。并在这个基础上构建各种游戏子系统:商店、地图、战斗等。
RM插件通过修改RM系统已经构建好的游戏子系统来对自己想要的功能实现定制。因此RM插件代码的许多内容需要依赖于RM系统代码内部的结构。
2.MZ和MV的插件的差别
虽然JS引擎接口层面很稳定,没有什么变化,但是RM系统代码发生了很多变化,以实现各自版本的特殊功能。同时PIXI版本也有所更新,一些直接使用PIXI接口的插件也因此可能出现问题。
MZ和MV在各自RM系统代码上仍有很多地方是相似的,因此部分MV插件可以只做少量改动即可移植到MZ系统上。但是例如战斗系统插件,基本无法做简单改动,因为MZ引入了侧视图战斗系统,这部分代码基本和MV完全不一样了。
而对于部分大型插件,它们相当于自己又写了一个自己的RM系统,因此在底层部分可能反而有更好的可移植性,但是往上涉及窗口等,依然会出现大量冲突。
如果有MV和MZ的文档,它们应该看起来在很多类定义上有相似的地方,但是细节上又有出入。
理论上写插件应该按着各自版本的文档作参考的,但是MZ一直没有看见完善的文档。
总的来说,JS本身能做的事情太多了,写RM游戏只是其中一个应用,因此“MZ和MV都是JS写的”并不能推出“MZ和MV的插件可以兼容”。不过如果是一些很底层的,完全依赖于JS引擎接口的代码,比如重写数组功能,倒是确实可以移植,不过这种插件也和RM的游戏内容没多大关系了。
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1