SumRndmDde's Timed Attack Core

Discussion in 'JS Plugin Releases (RMMV)' started by SumRndmDde, Jul 21, 2016.

  1. SumRndmDde

    SumRndmDde Follower of RNGesus Veteran

    Messages:
    224
    Likes Received:
    409
    Location:
    an alternate dimension.
    First Language:
    English
    Primarily Uses:
    RMMV

    Timed Attack Core


    by SumRndmDde


    Version 1.21


     


     












    Version 1.10 Update Video:









    What This Plugin Does:


    In the game, Undertale, whenever the Player chooses to attack, they must preform a quick, mini-game in which a small bar moves across a window that is detailed with a gradient of color. The goal of the game is to press the "ENTER" button when the bar is in the middle to preform the maximum amount of damage. However, one could stop the bar near the edges to do less damage if they choose to do so. This Plugin replicates that system and also allows the capability to add more forms of "Timed Attacks" in the future.


    Basic Setup:


    First, install the Plugin.


    Next, use the following Notetags inside the Skill you wish to use the "Timed Attack System":

    Code:
    <Timed Attack: default>
    <End Timed Attack>


    Finally, place a background image named "DefaultBackground" within:

    Code:
    /img/SumRndmDde/tas/
    The one shown in the video can be downloaded here:


    https://dl.dropboxusercontent.com/s/asx8g493dzrbdsq/DefaultBackground.png?dl=0


    Advanced Setup:


    Once you can set up all of the basic stuff and have it working, you can start to use "attributes".


    You can assign attributes to a Skill's Timed Attack by placing things in between the two Notetags:

    Code:
    <Timed Attack: default>
    Speed: 5
    <End Timed Attack>
    This would make it so this Skill's Timed Attack will move at a Speed of 5.


    All of the available attributes are listed in the Parameters and in the "Help" section of the Plugin.


    Furthermore, you can set up all the default values for every "Timed Attack" in the Parameters.


    Using "attributes", one can make it so Skills are all slightly different from one or another.


    Actor, Class, Weapon Setup:


    Furthermore, you can also set up attributes based on the Actor, Class, or Weapon.


    For example, let's say you have this Notetag in Harold's Notebox:

    Code:
    <Timed Attack: default>
    Speed: 4
    Width: 28
    Main Color: Blue
    <End Timed Attack>
    Now, when Harold uses a Skill that has this Notetag:

    Code:
    <Timed Attack: actor>
    That Skill will use the Timed Attack in Harold's Notebox.


    You can also use:

    Code:
    <Timed Attack: class>
    <Timed Attack: weapon>
    to have it based on the Actor's Class or Weapon.


    Screenshots:

    TimedAttack.PNG


    SSHOT.PNG



    Download:


    You can download the Plugin here:


    http://sumrndm.site/timed-attack-core/


    Terms of Use:


    Terms of Use for my Plugins can be found here:


    http://sumrndm.site/terms-of-use/


    Posted Extension Plugins:





    Change Log:


    Version: 1.21:


    Updated for 1.3.1


    Recoded to be more efficient and faster.


    Version: 1.10:


    Timed Attack can be based off of Actor, Class, or Weapon


    Window can now be resized and positioned.


    "Image" attribute added


    "Target Location" attribute added


    Version: 1.00:


    Sublime Text birthed this Plugin. I helped. :)
     
    Last edited by a moderator: Sep 8, 2016
    #1
  2. VanillaBrocker

    VanillaBrocker Veteran Veteran

    Messages:
    66
    Likes Received:
    80
    First Language:
    Portuguese
    That's beautiful, dude! Congratulations!
     
    #2
  3. SumRndmDde

    SumRndmDde Follower of RNGesus Veteran

    Messages:
    224
    Likes Received:
    409
    Location:
    an alternate dimension.
    First Language:
    English
    Primarily Uses:
    RMMV


    Thanks! ^^
     
    #3
  4. emelian65

    emelian65 Veteran Veteran

    Messages:
    190
    Likes Received:
    50
    First Language:
    Spanish
    Question, If I were to use let us say ITB by DreamX, how compatible or how compatible or how incompatible would both plug in be, I mean ITB only afectt turn order and extra action, but I don't know if that mixes with this one.


    was that an understandable question?
     
    #4
  5. ArkDG

    ArkDG Veteran Veteran

    Messages:
    143
    Likes Received:
    45
    First Language:
    portuguese
    Hey man, I loved your script. But what if it is possible to choose contextual animations based on the success timing achieved by the player? If he do a perfect timing, a critical hit animation; If he fail (0 damage), a fail animation, or a normal animation if he got medium results.
     
    #5
    ashikai likes this.
  6. emelian65

    emelian65 Veteran Veteran

    Messages:
    190
    Likes Received:
    50
    First Language:
    Spanish
    That got me thinking is there a way to make an lets say action sequence  (I suppose both yanfly and victor sequence should be supported) with four attacks, and just before each attack the scene stops and the gauge comes up, the hitting precision woukd help with both da,age an hitting chance and maybe even make a skill stoos if ohe of the hits fails.


    Is it actually possible?
     
    #6
  7. SumRndmDde

    SumRndmDde Follower of RNGesus Veteran

    Messages:
    224
    Likes Received:
    409
    Location:
    an alternate dimension.
    First Language:
    English
    Primarily Uses:
    RMMV


    I can't imagine them not working together. While I haven't tested it, this plugin works perfectly with Yanfly's Battle Engine Core, so things should be fine.



    To be honest, that might actually be possible with Yanfly's Plugins.


    Using the $gameTemp.tas_power as a reference to how successful the Skill was, you could change what animation plays and even make a critical hit occur (I think).


    I'll look into it more and see if it's possible.



    It is currently impossible to mix this with an Action Sequence; however, I won't say it's impossible for it to happen in the future.


    I've got a couple of requests for this already, so I'll at least try to make it happen, but I won't make any promises. :p
     
    #7
  8. wrigty12

    wrigty12 Veteran Veteran

    Messages:
    533
    Likes Received:
    76
    First Language:
    English
    This looks amazing! If you are still taking requests on things to add into the plugin, I have a couple.


    When I see this setup, it makes me think of certain attacks used in Paper Mario 2 for GameCube. If you don't know anything about it, there are skills that use a bar and cursor and you need to either hit a certain spot or at a certain time to get the skill to work.


    Here is a video that actually showcases all of the skills used by partners (there is a timestamp menu in the description): Example Video


    Here are the specific ones I was thinking about:


    1) Cursor continues to move back and forth until input. Instead of going from one side to the other then stopping, it would be nice to have the cursor continue to bounce back and go the other direction until there is input, or jumping back to the beginning until input. (Video Example: Koops Shell Toss, Power Shell, or Shell Shield)


    2) Have the cursor gradually pickup speed as it reaches the end. Instead of having a static speed, having it speed up at a specified rate as it reaches the end would make it a little more difficult to hit your target, good for strong skills. (Video Example: Ms. Mowz Kiss Theif)


    There are some other ideas for uses of this type of battle system in these skills, so feel free to look at some of the others, like some of Flurrie's skills or Ms. Mowz's Tease.
     
    #8
  9. boomy

    boomy Veteran Veteran

    Messages:
    107
    Likes Received:
    76
    Location:
    Melbourne, Australia
    First Language:
    English
    Great plugin. Definitely has a Paper Mario vibe to it.

    As @wrigty12 has suggested, altering acceleration of the cursor (negative / positive / zero) would be great.


    Also altering opacity of the cursor would be good too. Maybe causing the cursor to fade over time or appear over time. Again, creating a bit of difficulty and variance in the timed attack sequence.


    Being able to time a hit with a mouse click would be great for mobile games too


    A few notes as well: Definitely compatible with most of Yanfly's plugins (place this plugin below). Does seem to not work properly with Yanfly's conditional turn based battle system (CTB); seems to automatically simply 'attack' at the earliest possible time (gives the player no opportunity to try to time their attack).



    I tried using speed: 5 * (Math.randomInt(3) + 1) into one of the notetags (or any javascript) but does not seem to work (speed stays static for entire battle). Be nice if we could randomise the speed (maybe add it as a plugin command or something)

    Anyway, great plugin! I look forward to see what else you add to this gem of a plugin
     
    Last edited by a moderator: Jul 25, 2016
    #9
  10. Killuki Zaoldyeck

    Killuki Zaoldyeck Veteran Veteran

    Messages:
    221
    Likes Received:
    24
    First Language:
    Spanish
    Primarily Uses:
    N/A
    Can the window layout be invisible?


    EDIT: Nvm.
     
    Last edited by a moderator: Jul 25, 2016
    #10
  11. Lionheart_84

    Lionheart_84 Veteran Veteran

    Messages:
    462
    Likes Received:
    42
    First Language:
    Italian
    Sincere congratulations!!! :guffaw: you are very good!!! ;)


    Could you recreate the Ring System of Shadow Hearts series ??? :D
     
    #11
  12. SumRndmDde

    SumRndmDde Follower of RNGesus Veteran

    Messages:
    224
    Likes Received:
    409
    Location:
    an alternate dimension.
    First Language:
    English
    Primarily Uses:
    RMMV


    Wow, thanks for the link to the Paper Mario gameplay, a lot of those ideas could work very well. ^^


    1) You can use the new "Repeat" property to do this


    Simply do:

    Code:
    <Timed Attack: default>
    Repeat: Reverse
    <End Timed Attack>


    2) You can actually use a formula with the "Speed" property. You use "f" to represent the amount of frames the attack has lasted.


    For example:

    Code:
    <Timed Attack: default>
    Speed: 2 + (f / 60)
    <End Timed Attack>
    This attack with have an acceleration of 1 Speed per Second



     - Mouse Click compatibility has been added. :)


     - CTB/ITB issue has been fixed.


     - As for the Speed, the problem is that it is evaluated every frame, as opposed to being evaluated once and used for the entirety of the Timed Attack.


    I'll see if I can add a "static speed" formula as a property.



    Lol :p



    Could you link me to a video that shows this?
     
    #12
    boomy likes this.
  13. Lionheart_84

    Lionheart_84 Veteran Veteran

    Messages:
    462
    Likes Received:
    42
    First Language:
    Italian


    I posted you have the video link, and the link to the wikia site where explains ongi thing !!!!


    Video:










    Link Wikia:


    http://shadowhearts.wikia.com/wiki/Judgement_Ring
     
    #13
  14. SumRndmDde

    SumRndmDde Follower of RNGesus Veteran

    Messages:
    224
    Likes Received:
    409
    Location:
    an alternate dimension.
    First Language:
    English
    Primarily Uses:
    RMMV


    Oh, that's pretty cool. I guess I can make that happen in the future! :p
     
    #14
    VanillaBrocker likes this.
  15. VanillaBrocker

    VanillaBrocker Veteran Veteran

    Messages:
    66
    Likes Received:
    80
    First Language:
    Portuguese
    @SumRndmDde


    I've just saw that @Lionheart_84 recommended the Shadow Heart's Judgement Ring system. A similiar system is used by YIIK, as you can see at 00:36 in this video:






    I don't know how it is in Shadow Heart, but here you can see that it goes a little bit faster with each success press. Maybe this can help you a little bit with your progress.


    Again, thank you very much for this plugin! :D
     
    #15
  16. Lionheart_84

    Lionheart_84 Veteran Veteran

    Messages:
    462
    Likes Received:
    42
    First Language:
    Italian


    Thanks for your answer!!! :D


    if I could do what I wanted it just like Shadow Hearts !! ;)
     
    #16
  17. wrigty12

    wrigty12 Veteran Veteran

    Messages:
    533
    Likes Received:
    76
    First Language:
    English
    I have two more requests for this plugin, if at all possible:


    1) Can you create the option to run the "timed game" through a Yanfly Action Sequence command instead of right at the beginning of the skill? This would allow for some things to happen (like the character moving to the enemy) before the "timed game" occurs.


    2) Piggybacking on my first point on this post, could you then allow for a skill to run the "timed game" multiple times? It then could either multiply all the results together, or add them together, then $gameTemp.tas_power would represent the results of all of them. EX: I run the "timed game" three times, resulting in 1, 0.75, and 0.6. $gameTemp.tas_power would then be either 0.45 if multiplying OR 2.35 if adding. Just something to think about, and would add yet another awesome feature that can be utilized by skills.
     
    #17
  18. Lionheart_84

    Lionheart_84 Veteran Veteran

    Messages:
    462
    Likes Received:
    42
    First Language:
    Italian


    ok, I'll wait your news ... !!! ;) you are a legend if you can in such a thing !!! BD :D :guffaw:
     
    #18
  19. SumRndmDde

    SumRndmDde Follower of RNGesus Veteran

    Messages:
    224
    Likes Received:
    409
    Location:
    an alternate dimension.
    First Language:
    English
    Primarily Uses:
    RMMV


    Seems similar enough for me. You'll probably get the effect you're looking for whenever this thing becomes complete.



    1) Yeah, the plan is that will happen eventually, I just don't know when. It'll probably be next time I feel inspired to create something epic. :p


    2) Yup, chances are, if I integrate this with Action Sequences, you'll be able to use multiple Timed Attacks within one Skill.


    As for how the $gameTemp.tas_powers will interact with each other...we'll just have to see how that goes. :)
     
    #19
    ashikai and wrigty12 like this.
  20. Lionheart_84

    Lionheart_84 Veteran Veteran

    Messages:
    462
    Likes Received:
    42
    First Language:
    Italian


    Okay ... do you see what you can do !!! ;)
     
    #20

Share This Page