• 🏆 Texturing Contest #33 is OPEN! Contestants must re-texture a SD unit model found in-game (Warcraft 3 Classic), recreating the unit into a peaceful NPC version. 🔗Click here to enter!
  • It's time for the first HD Modeling Contest of 2024. Join the theme discussion for Hive's HD Modeling Contest #6! Click here to post your idea!

[Trigger] Melee skill that sends unit into the air, and exploding knockback

Status
Not open for further replies.
Level 3
Joined
Oct 15, 2007
Messages
43
The skill is supposed to be like Sol Badguy's "Dragon Install" (I think is the name, I could be wrong) from Guilty Gear, this skill is supposed to knock the victum into the air, pause for a second then take a second hit which knocks them back while returning to the ground.

Currently the trigger is a modified variant of the Knockback skill, and I have added in the "flight" skill. The skill works as it should, however the actual "knockback" seems to be in conflict with the actual movement of the knockback, and the returning to the ground, creating both lag and a no so smooth look.

Trigger may be exaggerated so I can have a clear picture of the skill working, I am an amateur trigger-ist that wants to make sure it all works.


This is the activation trigger.
  • Dragon Install Knockback
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Dragon Install
    • Actions
      • Set Caster = (Triggering unit)
      • Set Target = (Target unit of ability being cast)
      • Set LoopCounter = 0
      • Trigger - Turn on DI Knockback <gen>

The effect
  • DI Knockback
    • Events
      • Time - Every 0.02 seconds of game time
    • Conditions
    • Actions
      • Set TempLoc00 = (Position of Caster)
      • Set TempLoc01 = (Position of Target)
      • Set TempLoc02 = (TempLoc01 offset by 10.00 towards (Angle from TempLoc00 to TempLoc01) degrees)
      • Unit - Add Crow Form to Target
      • Unit - Remove Crow Form from Caster
      • Animation - Change Target flying height to 250.00 at 300.00
      • Wait 2.00 seconds
      • Unit - Move Target instantly to TempLoc02
      • Animation - Change Target flying height to 0.00 at 300.00
      • Custom script: call RemoveLocation(udg_TempLoc00)
      • Custom script: call RemoveLocation(udg_TempLoc01)
      • Custom script: call RemoveLocation(udg_TempLoc02)
      • Set LoopCounter = (LoopCounter + 1)
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • LoopCounter Greater than 100
        • Then - Actions
          • Trigger - Turn off (This trigger)
        • Else - Actions
          • Do nothing
 
Last edited:
Level 3
Joined
Feb 13, 2008
Messages
65
It seems like you have this trigger going 100 times, once every 0.2 seconds. Yet you have 2 two second wait triggers in between. I might not know this ability, but if you make it so that it doesnt have to go 100 times before the trigger stops, it will be both less laggy and smooth.
 
Level 3
Joined
Oct 15, 2007
Messages
43
@Tiaan it's a standard Knockback spell, modified to what I thought would be how it would work.

@Cokemonkey11 this is after a skill is used, but I get what your saying and see if I can modify it a little at some point.

All I could compare to would be to Rock Lee's Final Lotus skill, only Lee wouldn't move, and the unit be knocked in one direction. As I have little trigger experience I made a modification to Knockback.
 
Level 29
Joined
Jul 29, 2007
Messages
5,174
You have the concept all wrong.
If you want to change the height in the timed trigger, you change it by a bit, exactly like a knockback but upwards.
If you use the native for it, you do it in your trigger that fires when the ability is used.

As to the waits - what I just said.

As to pausing units - you know how to use custom scripts but you can't freaking use a simple action?

As to you explaining stuff like shit - ever thought not everybody knows what's "Sol Badguy's "Dragon Install"" or whatever crap you're talking about? At least learn how to explain... we help you because we are nice, we do not need to also read your text with 'the Universal Guide to the Internet and Noobs'.

As to this being not MUI - oh well, you probably don't even need it to MUI for your Naruto crap or whatever this is.
 
Level 3
Joined
Oct 15, 2007
Messages
43
Well gee your nice, but frankly I figured people would just assume that there IS a pre trigger. The ability here is my attempt to merge two different triggers (flight and knockback) that I found by looking around. At this point I didn't know which direction to go, and thought to ask.

I apologize if I can't explain clearly, but this is how it should go.

Unit is hit with skill > sent to air (stops in midair) > then knockback and returns to ground.

Currently the trigger is exaggerated so that I can see visually the entire thing, and do plan to tweak it once everything works.

I added what I had intended to be for (a map about Guilty Gear) so that in case someone DID know what the game was could help out. I apologize again if it seemed like random noob crap to you, and wondering why the heck your helping me if you have such disdain for japanese related stuff. There is also no multiplayer map I could reference to it, that YOU might have played.

I find it funny you think I should be an expert at custom scrips, I mean, removing leaking objects is like basic triggering and is a pointer to do in every tutorial, as well as the last time I came on the hive for help on other stuff I tried.

And I know no one knows what who Sol Badguy and his flaming punch thing is, That is why I DESCRIBED IT! If it wasn't to your standards of describing things I am sorry, tell me my description sucks so and I will make a better one.

At any rate I'll update my first post...
 

Cokemonkey11

Code Reviewer
Level 29
Joined
May 9, 2006
Messages
3,522
I didn't find your post to be rude or distasteful, I think GhostWolf may have misunderstood what you were trying to say somewhere.

Also, don't think of us as helping because we like or dislike Japanese stuff, we are helping because we like to :)

What I suggest if you want your trigger to be exaggerated in the form of going up, then knock back instead of a parabola, I suggest using 3 seperate trigger sections
periodic moving them up, periodic moving them back, then a periodic moving them down.

Hope that helps.
 
Level 3
Joined
Feb 13, 2008
Messages
65
I feel as if my first reply to this thread wasn't clear enough. The reason your trigger is lagging so badly is because you have a wait trigger inside of a periodic event command, especially a very small periodic event ( < 1s).

Right now, from that trigger, it seems like every 2 seconds it repeats the trigger's actions until the counter reaches 100, but the counter only gains 1 every 2 seconds.

So from what I understand, this trigger is working for a total of 200 seconds before shutting off.
 
Level 3
Joined
Oct 15, 2007
Messages
43
Oh! I see the loop counter plays the entire thing step by step? ... actually how much of it does it repeat?

Also from I understand 3 loops would work then? Each with it's own counter to repeat the specific thing (the raise / pause / push). I'll have to try this when I can. Thanks yall!

I will try to be more clear and concise in the future...
 
Level 29
Joined
Jul 29, 2007
Messages
5,174
Ok, as it seems you didn't really get what your own triggers do, I'll explain (no, not give you the complete triggers because I am not going to touch GUI filth) what you should do in case (this is what I understood from your first post) you want to make a parabula "jump" (knockback in this case).
I will point you to how to make it in GUI, not MUI or MPI, you figure those out alone if you want.

First you'll need a trigger that will execute when a unit casts your spell, of course, so make a trigger that runs when that spell is casted and leave it be for now.

Now, a second trigger would be the knockback (not flying).
I will not talk about distance formulas and such so just search if you want.
In this trigger you'll put a timed event (0.02 isn't suggested, use something around 0.03 and 0.05 for realistic and not lagging looking knockback).
And like you did before, you'll move your unit by a little distance and add 1 to your loop.
You'll need to check a bit with the distances to get a nice looking result.
Also, notice that your trigger isn't decreasing the speed, which makes it look so much nicer.
So, make a "speed" variable (real variable, of course) and decrease it every time the knockback trigger runs.
Again, you'll need to experiment with it to look nice.

Ok, now back to your main trigger.
Turn on the knockback trigger, then make the unit fly up to some height, and fall down after a wait.
You'll calculate this wait and the rates of the up/down flight by your knockback speed and acceleration.

And... finito. If you didn't get anything, I'll be pleased to answer your questions, but I'm not going to code this for you.
 
Level 6
Joined
Mar 15, 2005
Messages
112
An idea to remove your wait function but retain its effect.
  • CustomWait
    • Events
      • Time - Every 0.20 seconds of game time
    • Conditions
    • Actions
      • Set WaitTimer = (WaitTimer + 1)
        • Multiple FunctionsIf (All Conditions are True) then do (Then Actions) else do (Else Actions)
          • If - Conditions
            • WaitTimer Greater than or equal to (>=) 20
          • Then - Actions
            • Set WaitTimer = 0
            • -------- Place all function you had following your wait 2 seconds here --------
          • Else - Actions
            • Do nothing
 
Status
Not open for further replies.
Top