- Joined
- Sep 28, 2017
- Messages
- 1,627
- Reaction score
- 1,206
- First Language
- English
- Primarily Uses
- RMMV
Note: This plugin is not under active maintenance.
Background:
This plugin focuses on improving the user interface for mobile games created in RPG Maker MV, by allowing the developer to have virtual buttons on the screen that interact with touch input.
The emphasis is on maximum flexibility for the developer, you can add as many or as few buttons as you want to the screen, and you can add these buttons on whichever screens you would like (i.e. map, menu, credits, title, etc.).
Functionality:
This plugin can create 3 different types of buttons:
1.) Directional Pad
- A single picture which is used for up, left, right, and down movement (also support diagonal movement when combined with a Diagonal Movement plugin).
- You control what scenes the DPad appears in.
- This button is optional.
- These buttons can be used to represent any key. Common keys to use would be "ok" , "escape", "pagedown", "pageup".
- These can be any key, and there can be as many or as few as the developer would like, and you control what scenes they appear in.
- Buttons can run Common Events.
- You can also write custom code that will be run when the button is pressed!
- You may specify the type of input this button responds to:
- Triggered: Execute once when pressed (default)
- Pressed: Execute every frame while pressed
- Repeated: After 24 frames, execute every 6 frames while pressed
- Long Pressed: After 24 frames, execute every frame while pressed
- Released: Execute once when button is released
- The control button, if pressed, will collapse and hide all other buttons on the screen.
- If pressed again, it will expand and show all other buttons on the screen.
- This allows the player to decide between using the virtual buttons or the standard touch input.
- The scenes that this button appears in can be defined.
- This button is optional.
{clearly placeholder art below
This example uses buttons with the functionality of "pageup" and "pagedown" in the status screen. These buttons can be put in whichever screen you like. Page Up and Page Down move between actors in the menu, so this would make sense to go in the Status, Equip, and Skill screens (Scene_Status, Scene_Equip, Scene_Skill).


Setup:
The setup requires a new folder to be created within the img folder of the project. This folder must be named "VirtualButtons".
Put all virtual button images in this folder, and then they may be accessed in the plugin parameters.
Plugin Commands:
* All plugin commands begin with VirtualButtons (MobileUI is also valid, for backwards-compatibility).
* All plugin commands are not case sensitive (i.e. "DPad" is the same as "dpad")
- hide
- Description: hides the specified button
- Allowed arguments:
- DPad
- Any key button defined by you
- Control
- All
- Examples:
- VirtualButtons hide DPad
- virtualbuttons hide Ok
- MobileUI hide PageDown
- show
- Description: shows the specified button
- Allowed arguments:
- DPad
- Any key button defined by you
- Control
- All
- Examples:
- VirtualButtons show DPad
- virtualbuttons show Ok
- MobileUI show PageDown
- opacity
- Description: change the opacity of a button
- Allowed arguments:
- DPad
- Any key button defined by you
- Control
- All
- Examples:
- VirtualButtons opacity dpad 100
- VirtualButtons opacity all 50
Terms of Use:
Free for use in commercial or non-commercial projects.
Credits required to: Aloe Guvner
Version History:
- v2.0.1 (May 13 2019)
- Fix bug where DPad input wasn't cleared in menus
- v2.0.0 (May 4 2019)
- Clears input state on transfer to mitigate stuck DPad input bug
- Improves clearing of input state each frame to mitigate bug
- Buttons hidden via plugin command will stay hidden until the show plugin command
- Key buttons can trigger common events
- Option to use a "hot" image that shows when the button is pressed
- Delay parameter to fade-in
- Plugin command option to show all buttons
- Plugin command option to hide all buttons
- Plugin command to change button opacity
- Add plugin parameter to toggle whether the buttons are hidden during dialogue
- Fix bug where the DPad would not clear the direction after a parallel event checking for a input direction triggered a Show Choices event command
- v1.4.0 (December 13 2018)
- Added ability to configure which buttons are affected by the "control" button
- Can be used to create dynamic menus
- v1.3.1 (October 30 2018)
- Added a parameter to control whether diagonal movement is detected as a possible fix for a hard to reproduce movement bug.
- v1.3.0 (September 27 2018)
- Added a parameter to choose to disable the normal touch input on any chosen scene. The only touch input enabled on these scenes is the virtual buttons.
- v1.2.3 (September 27 2018)
- Fixed a bug where buttons that the player had chosen to hide would reappear after a game message
- v1.2.2 (September 27 2018)
- Fixed a bug where buttons could be pressed before they were fully visible
- v1.2.1 (September 27 2018)
- Added an "instant" feature to hide/show for smoother cutscene transitions
- v1.2.0 (August 26 2018)
- Added ability to vibrate when button is pressed
- v1.1.0 (June 27 2018)
- Fixed bug with awkward player movement on the DPad
- Added ability to specify the type of touch input on key buttons
- v1.0.3 (May 14 2018)
- Added ability to execute custom Javascript code when a key button is pressed
- v1.0.2 (May 9 2018)
- Added ability to play a sound effect when a button is pressed.
- Fixed a bug where the parameters weren't read correctly due to plugin name change
- Fixed a bug where the control button didn't hide the dpad properly
- v1.0.1 (May 8 2018)
- Added a version compatible with MV earlier than 1.6.0 using Babel.js
- v1.0.0 (April 17 2018)
- Initial release
Download Link
Last edited: