Hi! I’ve been developing a JRPG for several months now, and I currently have about eight hours of gameplay. I’m using quite a few plugins that only initialize when starting a new game. If I change certain parameters within the plugins, the changes don’t take effect until I restart the game (start a new game)… which is pretty inconvenient when I want to test something that only occurs after eight hours of play.
A good example is a plugin I use to display gauges during battles. When I create a new enemy, the gauges only display correctly if I start a new game; saved games don’t show the gauges for new enemies properly.
Any solution needs to be specific to how the plugin designer structured their plugin. There isn’t a universal solution for all plugins. You can contact the plugin writer for help on redoing parts of their plugin to work on old save files. Basically, there’s no solution without writing tons of custom code and thoroughly reading and understanding the problem plugins
If the plugin is free and the terms allow you to make edits, we can also help you figure out what to edit here. Even if it’s paid, as long as the terms allow you to edit it, you might be lucky to find someone who also bought it who can help you figure out what to edit.
But I’d definitely try contacting the original dev first.
Thanks. I was hoping there was a generic way of reloading plugins. As I am relatively new to RPGMaker, I was expecting plugins to be more “plugin”, less (destructively) changing the core. It’s not just one plugin that has these issues, it are multiple, from different developers. I guess I’ll have to learn writing plugins myself
Thanks. As it is more than one plugin, from different developers this will be a challenge. If changing or adding plugin parameters kills your saved files, you will never be able to update a game after its release. I guess I’ll need to test plugins better before using them.
The reason why there isn’t a generic way of reloading plugins is that they don’t just change the game logic, but may also create new data upon starting of a new game. Typically those plugins will tell the game “when creating a new player object, also do this”. When calling that command, it also calls the other scripts involved with creating a new player object and usually isn’t its own separate call.
Galv has a plugin for footstep sounds that behaves exactly what I just descried. His plugin lets the dev tell which animation frames will play footstep sounds, and instead of centralizing that data into the plugin parameters, it’s saved on to the player object which only gets initialized once and typically isn’t recreated mid-playthrough.
Personally, my own game has its own section of code handling version control. I have to manually write code telling the game what to do if my game attempts loading an old save, how to edit game data to be up to date and compatible with the new version.
Well, it really depends on the plugin and how it’s built. Some plugins are built in a way that breaks saved games, and some are built in a way that doesn’t. And then there are some that are built in a way that would break saved games but go the extra mile to add extra logic to not break them after all.
If all the plugin data was just loaded at launch, just like the game data, there would be no problem. But data is very frequently added into standard game objects such as actors, and that gets baked into the saved games and potentially breaks things when the save data doesn’t match what the plugin expects.