TamFey's Timed Button Attacks

TamFey

Villager
Member
Joined
Oct 26, 2015
Messages
8
Reaction score
21
First Language
German

Timed Button Attacks v1.2.0


TamFey


Introduction:


This plugin adds a minigame similar to Dance Dance Revolution or Stepmania to the combat system. It changes the way skills and items work in combat. Instead of just starting an animation and an effect, skill/items will start a small minigame, where icons appear on the top part of the screen. These icons move downwards and when they reach a certain area, the player has to press the arrow keys. The plugin will then start different animations and effects depending on whether the player hit the button correctly or not.


Features:

  • Add an active component to your battles.

  • Use any PNG you want as a timed button.

  • Easy customization.

  • Use notetags on equipment to change button speed.

  • Use Yanfly's Action Sequence notetags to create the hit/miss effects.



Screenshots:



The system in action




Preview for asset pack 2




Notebox example



How to Use:

Create timed buttons with this notetag:

<tba [type] [icon] [birthtime] [speed] [hitEffect] [missEffect]>
This notetag adds a button with the specified parameters to a skill/item.
[type] - 'up', 'down', 'left' or 'right'- determines the column that the button will appear in.
[icon] - the icon that is used for the button. (i.e. ArrowUp)
NOTE: Icons have to be located in the '/img/system/' folder of your project.
[birthtime] - The number of frames the game is going to wait before spawning the button. time is measured from the start of the action. (60 frames = 1 sec)
[speed] - The number of pixels the button is going to move every frame.
[hitEffect] - the ID of the skill that is used when the player hits the button.
[missEffect] - the ID of the skill that is used when the player misses the button.
IMPORTANT: Skills/items with at least one of these notetags will not process action sequence notetags of the type 'whole actions' and 'target actions'.


Example:

<tba up ArrowDown 110 3 5 11>
This notetag will create a button in the 'up' column. The button will have the icon 'ArrowDown'. It will be spawned 110 frames after the action started (~1.85 sec). It will move 3 pixels per frame. When the player hits it correctly, skill #5 will be used, else skill #11 will be used to determine its effect.


Randomness:

You can add randomness to the spawntimes of buttons by adding 'rX' at the end of the notetag, where X is a positive integer.

Randomness Example:


<tba down ArrowDown 1 2 4 12 r60>
this button will spawn sometimes between frame 1 and frame 61 of the attack.


Modify the speed of timed buttons with this notetag (only for equipment):

<tba speed [operator] [value]>
Equipment pieces with this notetag modify the speed of all buttons as long as they are worn.
[operator] - 'increase', 'decrease', 'divide' or 'multiply'. - determines how the speed will be modified.
[value] - determines how big the effect of the modifier is.
NOTE: No matter how many modifiers are applied to a button, its speed can't become lower than 1.


Speed modifiers don't apply to skills with the following notetag:

<tba no modifiers>


Set up the hit/miss effects for your skills by using Yanfly's Action Sequence notetags. This plugin uses the 'target actions' to determine the effects of timed buttons.


More information on Action Sequences here: http://yanfly.moe/2015/10/11/yep-4-action-sequence-pack-1/



Demo:

Get the demo here.


Note: The demo uses v1.0.0 of the plugin. Make sure to get the newest version below.



Plugin:

Get the plugin here. This version doesn't work anymore. Check @Badab0um11 's post on page 3 for an up to date version.



Important Notes:


This plugin requires Yanfly's Battle Engine Core to work.


You should also get the Action Sequence Packs, since this plugin uses them to determine the effects of timed buttons.


Terms of Use:


This plugin and and all the assets in the asset packs are free for use with both non-commercial and commercial RPG Maker games.


Feel free to adapt/modify/redistribute the plugin as long as you provide proper credits.


Credits:

  • TamFey

  • Thanks to Yanfly for the awesome battle engine



Changelog:


v1.2.0:

  • Added the possibility to change the direction that buttons travel.

  • Added mouse/touch input.

v1.1.0:

  • Added the possibility to randomize button spawntimes.

  • Fixed issues with displaying the combo variables.

v1.0.1:

  • Fixed issues with enabling/disabling the plugin.



View attachment TamFeysTBAAssetpack1.zip


View attachment TamFeysTBAAssetpack2.zip
 
Last edited:

beenbaba

Slowly getting there
Veteran
Joined
Apr 28, 2015
Messages
290
Reaction score
159
First Language
English
This is very cool, nice work! I'm sure you'll get a lot of love for this :)
 

Ghost of Christmas Kloe

Ghost of a Princess Seagull
Veteran
Joined
Nov 15, 2015
Messages
1,504
Reaction score
913
First Language
English
Primarily Uses
N/A
Woah! This plugin is very impressive! I'm sure many people will love it!


Now all I need to do is make a dance skill / minigame!


Is there anyway to turn it on and off? Like it is funtioning then a plugin command and it is disabled then another command to switch it back on? So we could do a sort of "Now your attacks use dance power" and a "Now your attacks are normal" sort of thing?
 

Moe_Lester13

Veteran
Veteran
Joined
Nov 22, 2015
Messages
72
Reaction score
11
First Language
English
This looks really awesome.


Just one question, similar to the above ones. Is it possible to activate and deactivate this Plugin with Plugin Commands?


For example, to have a skillset with Duel like attacks that require these Timed Button Inputs, which then affects the end damage of the attack. 


But have the Plugin only activate for that particular skillset?


Anyway, keep up the good work :)
 

nightdragon

Veteran
Veteran
Joined
Mar 24, 2012
Messages
92
Reaction score
6
First Language
English
Primarily Uses
Will this work in a front view battle system?
 

TamFey

Villager
Member
Joined
Oct 26, 2015
Messages
8
Reaction score
21
First Language
German
Yes, it also works in a front view battle system. Here's an old screenshot from my game that shows what that would look like.
 

Drake Aran

Veteran
Veteran
Joined
Sep 14, 2014
Messages
10
Reaction score
1
First Language
Italian
Really cool! Thank you!


I think your plugin has great potential! May I also suggest some potential add-ons to it?


Moghunter made these plugins for ACE and I think they were really cool too... it would be awesome if you could add something similar to your plugin as well!


This plugin creates chains of SKILLS with the use of combos: https://atelierrgss.wordpress.com/rgss3-active-chain-commands/


And this plugin used to trigger a single skill (very cool for powerful skills): https://atelierrgss.wordpress.com/rgss3-blitz-commands/


Unrelated to the battle system, there's also a similar system used outside of battle for things like minigames: https://atelierrgss.wordpress.com/rgss3-chain-commands-m/


Well, hope you get interested in those plugins as much as I did! In the meantime, good job for what you've already done! ;)
 

brunovisk2

Veteran
Veteran
Joined
Jun 19, 2013
Messages
53
Reaction score
41
First Language
Portuguese
Primarily Uses
Nice plugin Tam Fey! It will fit well in some skills for a "bard" like class xD


By the way, it's very similar to Moghunter FF Theatrythm plugin, but instead of his, it's for battle system xD


thanks a lot
 

Baerthe

An Art Director
Veteran
Joined
Feb 12, 2016
Messages
154
Reaction score
42
First Language
English
Primarily Uses
Amazing.


Can it interpret randomized numbers for the time to appear?
 

TamFey

Villager
Member
Joined
Oct 26, 2015
Messages
8
Reaction score
21
First Language
German
@Drake Aran: I only took a quick look at the scripts you postet, so I might be wrong, but you can do something similar to the blitz-commands by using combo variables (part of my plugin). About the other plugins: I'll see what I can do, but I can't promise anything, sorry.


@brunovisk2: I'm glad you like my plugin :)


@Baerthe: Thanks! The plugin only recognizes Integers for the spawntime. Sadly, that means no randomized patterns.
 

Baerthe

An Art Director
Veteran
Joined
Feb 12, 2016
Messages
154
Reaction score
42
First Language
English
Primarily Uses
hmm I might be able to fix that for you @TamFey


I'll look through the script and see if it is possible to swap in randomness! Because, as mentioned, mog's "rhythm" minigame is very random and is a similar concept; so it should not be too hard. :)


EDIT: I have done some fuddling... But i tested it out and it, of course, did not work. But I might be on to something....


function getRandom(min, max) {
return Math.random() * (max - min) + min;
}
var birthtime = getRandom(10, 900);




You could have a random function then assign it to a var then add that to the interger set in the parm,
 
Last edited by a moderator:

TamFey

Villager
Member
Joined
Oct 26, 2015
Messages
8
Reaction score
21
First Language
German
The new update is out!


Version 1.0.1 fixes issues the plugin had with enabling/disabling.


I also released the second asset pack! It includes arrows, swords, shields and bombs in various colors.


@Baerthe Random patterns doesn't seem like a bad idea. I'll try to include it in the first big update. I just have to find a way to implement it without making the notetags unnecessarily long (since they're already pretty long).
 

Baerthe

An Art Director
Veteran
Joined
Feb 12, 2016
Messages
154
Reaction score
42
First Language
English
Primarily Uses
Can you time it with the music tempo?
YOU could. I do not think it would be wise to script that, it would make it VERY long. But if you take the music you want into some editor and look at its beats per minute, you could line it up.
 

Baerthe

An Art Director
Veteran
Joined
Feb 12, 2016
Messages
154
Reaction score
42
First Language
English
Primarily Uses
So, sort of bumping, but I wanted to let you know of some issues i came across!


I figured out randomizing it, by the way with some issues...


          var birthtime = parseInt(Math.randomInt(256) + parseInt(RegExp.$3));
          var v = parseInt(Math.randomInt(5) + parseInt(RegExp.$4));


Could also try using


Math.floor(Math.random() * 255 + 1);


 
Will randomize spawn and speed PER skill PER play, not each time used.


and also:
Combo disable text doesn’t work
Combo doesn’t disappear after winning


Also screenshot of how cool it is....Example.png
 
Last edited by a moderator:

TamFey

Villager
Member
Joined
Oct 26, 2015
Messages
8
Reaction score
21
First Language
German
Version 1.1.0 is out!


The new version adds the possibilty of random spawntimes and fixes issues where disabling the display of combo variables didn't work.


@BaertheThat looks awesome! I'm glad to see that my plugin is of use for other people :)
 

Sereth

Degibeta Team
Veteran
Joined
May 31, 2014
Messages
14
Reaction score
37
First Language
English
Primarily Uses
I can't tell you how excited I am for this plugin. Thank you so much for putting this together! I plan on using it with my husband who is a music teacher to help teach rhythms to his students.
 

Drackomordain

Villager
Member
Joined
Apr 23, 2014
Messages
21
Reaction score
5
First Language
English
Have you thought about expanding to include the controller style (A) (B) (X) (Y) buttons as well as the directional arrows.  I envision a single horizontal bar with a generic "Press Now" icon such as a square or circle that the player will time they're button presses too.  Insanely excited about the potential of options this could provide for making combat more interactive.  Well done, well done.


If you want I could do some mock ups of what I tried to describe.
 
Last edited by a moderator:

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

Latest Threads

Latest Posts

Latest Profile Posts

Can the Eternal Dreamers finish off the final boss? We'll see!
Fekken kill me. I unknowingly swapped out two important events's codes and saved the game to test it. I'm just doing this for fun and the fun has now been replaced with excruciating torture.
Is this how game developers feel all the time?

EDIT:
WAIT HOLY S***
MY LAST POST ASKING FOR HELP ON AN EVENT ACTUALLY SAVED IT
OH MY GOD
Coffee + Silk Coconut Milk + Splenda Zero = Not ..... awful :/ .
I was making a cutscene where Hero's dad got killed by the dragon but when he lose its say game over and send you to the tittle screen. How can remove game over for that cutscene
My new RPG Maker music pack, Emotional: Redemption, is now in progress and will be coming to RPG Maker soon. It is an album that focuses on emotional themes including the darker forms of sorrow and despair. Below is a demo of a composition from the album.

Forum statistics

Threads
94,446
Messages
920,991
Members
124,260
Latest member
Charles2020
Top