RPG Maker MZ: A Programmers Review

I mentioned previously that I would have a review of the new RPG Maker MZ game engine after release. At first it seemed the new maker was no different to the previous RPG Maker MV, but now, after spending over 150 hours (at the time of writing) within the new maker, I feel like I have seen enough to make my own decision.

Unlike other reviews you may see, I am not going to focus on capabilities of the editor, or the quality of the included assets. Instead I am going to talk about what its been like as a programmer writing systems and plugins for this new maker, as well as the possible disadvantage in performance it has compared to the previous maker!!

For a number of years I have been writing plugins for RPG Maker Mv. Most of them are unreleased, but over that time I have created a number of things that I felt were a requirement for the maker. Such as proper mouse position tracking, properly handling loading of plugins and modules, and of course, enhancements to the capabilities of default scenes and windows.

Moving to the new maker I have found that it’s been very easy to port most of my logic directly, which has made updating older plugins nice and painless. But in doing so, I have also noticed that there are a number of improvements that completely nullify a lot of the systems and features I had in place…

For example, the logic I used for handling loading of modules is mostly useless now. Yes, my plugin can still add a nice loading gauge and graphic, but the default code to load modules is now handled much better and makes a large portion of that system worthless. To me, this is both a blessing and a curse. Of course its great that the engine now doesnt need 3rd party solutions to do things it should have done on day 1, but it also means I wasted time in writing the system to begin with!

The default codebase for MZ is structured very similar to the previous MV, but it features a large number of improvements and minor tweaks that overall, make expanding on its functionality fairly trivial. For example, all scenes now create their windows using the Rectangle object to define its position, which is defined in a function separate to the function which creates the window. This means that plugins for repositioning windows, and creating new windows – if following the same structure, will be much cleaner and easier to manage.

A number of new sprite classes, such as Sprite_Clickable, and Sprite_Gauge now exist, which are excellent examples for newer programmers to build upon or use as a base for creating custom hud elements or clickable buttons. In case your wondering – yes, they fixed the Sprite_Clickable issues for the v1.0 release and now the onMouseExit function will get called properly.

Overall, I’m hoping that the level of entry for newer programmers will be lower and that more developers will be able to bring their games to life with new and exciting systems. Personally I have been hard at work adding dragonbones support into the core of my new plugins and creating a common scene class that will allow all scenes I create to feature unlimited parallax backgrounds, sprites, and dragonbones armatures.

The videos below showcase some of my upcoming RPG Plugins that you can expect to be using in your own games soon!!

These systems will soon be available in early access for anyone who wants to support my work via patreon.

If you found this post helpful or informative be sure to like, subscribe/follow, and check back soon!! ❤

Leave a comment