POR_AutoSkipMessage, v.1.1.0 Author: Poryg Introduction I don't think I need to introduce this plugin. Its purpose is simple, but powerful. Skipping (or rather closing, but you can skip them as well if you read too slowly ) messages automatically after certain time (or rather not necessarily waiting for the user to click it off). Of course I didn't want to interfere with the default message window functionality, so I didn't remove the option to use your action button to close the message. But now you can implement several things: close time variant on the amount of characters/spaces in the message text. Very useful for video recording and for dubbed messages! Minimal close time for special cases where the message is too short for the above case to be relevant. Time elapsed when the window is forced to close regardless of the amount of characters in the message. However, to not interfere with too long messages, this is active ONLY when the close time based on characters is 0!** Local settings for one message via escape tags. Read help for more info. Possibility to turn the plugin on and off via plugin commands, meaning you can turn it on for cutscenes and off for regular play! **Setting force time through message's escape tags will override all settings for the current message. I tried my best to make the plugin compatible with Yanfly message core, extMessagePacks and MessageMacros. However, I can't guarantee flawless compatibility. There are countless escape tags the program needs to convert, some of which generate words/characters that need to be kept, some of which don't and have to be removed to not artificially increase the length of a message. So it may cause slowdown of your game if you use them, especially in case of ExtMessagePack 2! I can remove these patches, but if I do, these plugins will cause artificial increase of the message length and would artificially increase the time per character. So for now I have opted to keep them in. Get the plugin here https://github.com/Poryg1/RPG-maker-MV-small-plugins Terms of use MIT license. Free for commercial and non-commercial use. Credits appreciated, but not mandatory. Sharing and editing allowed. Just don't steal my credit for the plugin! Credits to Yanfly for the huge amounts of code I had to copy/convert for my plugin to be compatible with her plugins. Changelog 1.1.0 - fixed a bug where the message would stall after the time ran up if another message was to pop up afterwards
Yeah, if we strip the yanfly compatibility patches it's not even 200 lines of code, how was I supposed to monetize such a small plugin?
Thanks for making this! I just tried it and whilst it skipped the dialogue, it was causing problems where my dialogue was stalling during cutscenes (one box would vanish and the next one wouldn't correctly appear). Sorry to be super-vague, just it's been a long day and it's after midnight; I'll get you more concrete repro steps over the weekend.
Understood. I'll take a look once I'm at home as well. Had no problems, but it's true that I haven't done a thorough testing. EDIT: Bug fixed. Please download the updated version.
This plugin seems very promising and I’ve been looking for something like it for a MV-VN project, since “auto-skip” is a common VN functionality. Thanks for making this. I’ll try it out tomorrow. [EDIT; seems to work very well. Have not fine-tuned it but no problems so far.]
Would it be possible to add an option to the options menu to specify auto message speed? Also, would you consider making a fast-forward command? To skip text as with shift but stop the command once the message ends or plugin command is called? Using galvs buttons that would cover all basics visual novel comnands
@Poryg Just wanted to let you know that Game_Interpreter.pluginCommand was aliased, but not called. Any plugin placed above AutoSkipMessage attempting to make use of that function will be unable to do so.
@Poryg I can confirm that there's a compatibility problem with this plugin if it's not placed in the correct order (up top). I'd also like to request an addition to this plugin: Would it be possible to add a parameter in the plugin manager (true/false) which if turned to "true" adds an option to the in-game menu called "Auto-Skip" which you can turn ON/OFF. Bonus points if another parameter in the plugin manager allows you to rename what the option that appears in the in-game options menu will be displayed as. Adding something like this would make the plugin a useful inclusion in any project, as it would give the player an additional option of how they'd want to read the text. Just like Yanfly's "message speed" plugin is is useful in any project.
Fixed. Nevertheless, I don't think I'll add the true/false thingie in option menu. This plugin is not structurally suited for it. It doesn't matter whether through escape tags, through plugin commands or through plugin parameters, the message close timers are fixed and cannot be changed. And I could add some more options to change the default options, but these would not influence the ones set through plugin commands and notetags. And since everyone reads at a different speed, for someone the default can be too fast, for someone it can be too slow. And now... How to deal with it? Adding a multiplier is not feasible. Too small multipliers potentially tick off messages before they even display as a full, especially since the plugin does not bother with checking for \. and other time slowing thingies. And too large multipliers are good for small messages, but for large messages they will inevitably not be needed, because the longer the message is, the proportionally faster you will read it. So the player will click longer messages off by themselves... Or lose them when unexpected distractions appear. I could add a feature that will preparse the text to see if there are any \. or other time slowers, but that is code inefficient and can generate lag, because you're essentially parsing the text 2 times. And asynchronous parsing on map/battle load is no good either, the plugin will not be compatible with MVs older than 1.5.2. The only feasible way that comes to my mind is, the plugin would need to influence the scroll speed of the text too. But that's already introduced in Yanfly plugins, which are used quite heavily, so that would not make sense. So I don't think I'm going to do that.