Improving Load Times and "Game Feel"

hastypixels

Writer, Artist, Musician, Educator
Member
Joined
Feb 18, 2019
Messages
2
Reaction score
3
First Language
English
Primarily Uses
RMMV
RPGMaker is a wonder; accessible as HyperCard to one as code clumsy as myself, and extensible enough to actually modify the experience. As I've been developing my own RPG - I'm about 2% done on that front, just started - one of my focuses has been to address the "sluggish" feel of the resultant product. That is to say, RPGMaker's runtime is slow by virtue of Javascript.

Basically I don't like how the default config feels during gameplay, and I'm seeing what can be done to improve it.

It will never run as smoothly as a machine coded game, but I've found a few useful tricks to improve how the game feels when you're playing it. Mostly it involves the use of Plugins, and I'll beg your pardon if you're already conversant with what I suggest using. Also, if there's something you've figured out, please reply to this thread and I'll add it to this post! Perhaps we can improve the reputation of RPGMaker, overall.

On to the list!

Improving RPGMaker Game "Feel"
1. Housecleaning:
Remove any resources that you won't be expressly using in your game. Unless you specifically address them, Preloader Plugins will load everything available and waste memory, and slow down performance.

2. Optimizing Your Graphics:
PNG files can contain "unnecessary" data, and it's possible to reduce their size by as much as 50% without changing the pixels of which your artwork consists. This is an important step, and can reduce your load times by as much as 30% or more. It's also easy and free: Head on over to psydk.org and download PngOptimizer, then drag the "img" folder onto the PngOptimizer window and watch it shave down your filesizes. It renames the original files by placing an underscore "_" at the beginning of each filename, so be sure to delete those once you're sure they work.

If you're unsure about this step, try it out on a single file or folder, then run your project. I've used this app to trim down files for both my RPGMaker MV project and a texture pack for Minecraft that I manage and design for, and both work flawlessly.

3. Frame Rate Management:
Just because you can't tweak RPGMaker's routines doesn't mean you can't manage it's performance, thanks to a few Plugins. Having a lot of parallax and extra logic can increase the minimum hardware requirements for smooth performance, but with these plugins you can decide for yourself what's best, or leave it in the hands of the player. Even a vanilla project will benefit from these plugins, so there's no reason avoid them, really.

You're going to need Yanfly's Engine Core - if you don't already have it - then the following: YEP_OptionsCore, YEP_X_MessageSpeedOpt (essential because there's no changing message speed by default), TDDP_PreloadManager (or whatever you prefer to use), TDDP_FuildTimestep and finally YEP_FpsSyncOption. There's also Animated Tile Option and Battle Speed Option to consider if they're important to you. A lot of this has to do with the game's responsiveness, and when your RPG doesn't feel responsive, it puts players off. I'd love to see these options included by default in a future version of RPGMaker, but in the interim we have to be the mediators of gamefeel.

In a nutshell
, these plugins change how RPGMaker MV presents itself in relation to onscreen framerate, and allows it to run out of sync if the hardware can't keep up, or in sync if the screen is running at a higher refresh rate than 60, in the case of higher grade gaming monitors and the like. Both make the game "feel better" and more enjoyable.

4. Audio:
There are some things to consider here. While modern CPUs can decode MP3/OGG files manyfold over realtime, high rates will reduce the available CPU time for everything else your game needs to do. Generally you don't need to worry about it, but it is worth considering if you know your game will be played on resource minimal hardware, like a Chromebook with just two threads to leverage. As long as it sounds good, don't overdo it.

Midi will use Microsoft's implementation of DirectX Roland General Midi, but you can do better: BassMidi supports user configurable soundfonts that can spruce up your music. If nothing else it can give you access to soundfonts to use for your own music production if you don't own a MIDI synthesizer or capable keyboard. It's probably too far to go to ask your players to install and configure BassMidi on their own, and as far as I know you can't set BassMidi as the default Midi Device in Windows 10 like you can in previous versions of the OS.

There are other little things like battle music playing after battles load - but there's a plugin for that, I just haven't gotten to it yet. I can update this post when I do, though. I'd much prefer if BGMs started playback at the same time as a map loading, and that may be possible with preloaders other than TDDP's, but again, not quite there yet. Player movement also needs work, but I haven't yet tried any movement plugins to see if they address the "sticky" feel of default behavior.

In summation,
that's what I've come up with so far. RPGMaker MV has got to be the ideal tool for someone like myself, and I thought I'd share what I've learned about smoothing out the experience for anyone who might have questions or curiosity about it. If there's anything you'd like me to address individually, let me know and I'll do what I can!

Thanks for reading, and happy RPG Making!
 
Last edited:

Kes

Global Moderators
Global Mod
Joined
Aug 3, 2012
Messages
21,420
Reaction score
10,849
First Language
English
Primarily Uses
RMVXA
There are already several threads about reducing file size and improving performance generally which you might like to check out.

I'm not approving this thread immediately. General Discussion is about discussion, so I think it would be helpful if you could clarify what your discussion point is, rather than a simply listing of things you've done. Some of the things you mention are strictly implementation issues, so should be addressed in the MV Support forum. For example, BGMs should start playing immediately - if you specify them on a parallel process with erase event. If that's not happening, it means that there is an implementation issue you need to get advice on.
 

Users Who Are Viewing This Thread (Users: 0, Guests: 1)

Latest Threads

Latest Posts

Latest Profile Posts

So trying out Ultra Mode 7 was a bad idea. How do I not include this in my game? XD
Stumbled upon an RPG Maker game on Steam called 'Boobs vs Zombies' while looking for a zombie themed fantasy RTS. lol
There's a new born faction in my country called "Sunda Empire" claiming they have right to rule over the earth and sun... I don't know what to feel...
Quon is watching you
Quon blessed your good efforts
I have tried, several times to understand how Markiplier is popular. You can't deny his popularity. I can only get through a few minutes of his vids, though. He's cringier than ANY cringe comp I've ever watched. When I was a kid, if you acted like that, 0 friends and 100% no dates for you. Times have changed XD

Forum statistics

Threads
93,547
Messages
913,400
Members
123,083
Latest member
porkipon
Top