FPS Synch Option (YEP)

From Yanfly.moe Wiki
Jump to navigation Jump to search


System

This is a plugin created for RPG Maker MV.

For help on how to install plugins, click here.

For help on how to update plugins, click here.

Got errors with your RPG Maker MV plugin? Click here.

Download

Yanfly Engine Plugins

This plugin is a part of the Yanfly Engine Plugins library.

Click here if you want to help support Team Yanfly on Patreon.

Introduction

This plugin is to be used with RPG Maker MV version 1.1.0 and upward.

RPG Maker MV is constructed in a way where each update to its engine is done
once per frame update. While this is normally fine, as many players view the
game through 60 fps, some players experience the game differently as their
hardware may run at higher than 60 fps.

When RPG Maker MV version 1.1.0 is implemented, it implemented Galenmereth's
fluid timestep, which forces the game to always play as if it is 60 fps. In
practice, this is great for everybody because players that experience more
60 fps will be able to play the game as if it was 60 fps.

However, there comes a problem when a player's hardware isn't strong enough
to support RPG Maker MV natively at 60 fps (such as the case with older
computers, or weaker mobile devices) or if the player is using video
recording software that goes below 60 fps. The game will appear laggy and
jumping without good response rates from input commands or possibly even
make the player miss out on certain visual frame updates.

This plugin places a setting in the Options menu to enable or disable the
fluid timestep addition and utilize the former RPG Maker MV engine updating
function. This way, players will have the option of using fluid timesteps or
opting to not use it instead of forcing it on everybody who may not be able
to handle it.

Options Core Integration

To integrate options from this plugin into Yanfly's Options Core, use the settings below:

If you are using YEP_OptionsCore.js, you can add a new Option using this
plugin. Here's the following code/parameter settings you can use with it.

---------
Settings:
---------

Name:
\i[302]Synch Monitor FPS

Help Description:
Turn this ON if your monitor runs above 60 FPS
to synchronize the game to run at 60 FPS.

Symbol:
synchFps

Show/Hide:
show = Imported.YEP_SynchFpsOption;

Enable:
enabled = true;

Ext:
ext = 0;

----------
Functions:
----------

Make Option Code:
this.addCommand(name, symbol, enabled, ext);

Draw Option Code:
var rect = this.itemRectForText(index);
var statusWidth = this.statusWidth();
var titleWidth = rect.width - statusWidth;
this.resetTextColor();
this.changePaintOpacity(this.isCommandEnabled(index));
this.drawOptionsName(index);
this.drawOptionsOnOff(index);

Process OK Code:
var index = this.index();
var symbol = this.commandSymbol(index);
var value = this.getConfigValue(symbol);
this.changeValue(symbol, !value);

Cursor Right Code:
var index = this.index();
var symbol = this.commandSymbol(index);
var value = this.getConfigValue(symbol);
this.changeValue(symbol, true);

Cursor Left Code:
var index = this.index();
var symbol = this.commandSymbol(index);
var value = this.getConfigValue(symbol);
this.changeValue(symbol, false);

Default Config Code:
// Empty. Provided by this plugin.

Save Config Code:
// Empty. Provided by this plugin.

Load Config Code:
// Empty. Provided by this plugin.

Changelog

Version 1.03:
- Compatibility update with YEP_OptionsCore.js.

Version 1.02:
- Updated for RPG Maker MV version 1.5.0.

Version 1.01:
- The plugin is now prevented if the project's core files are under version
RPG Maker MV 1.1.0.

Version 1.00:
- Finished Plugin!