• 🏆 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!

Kill Streak Problem

Status
Not open for further replies.
Level 5
Joined
Jul 30, 2012
Messages
93
Hi,

I have a problem about my kill streaks.It doesn't work well.

I got beyond godlike and rampage, then i died.Later i got a kill again but it wrote beyond godlike and killed 5 player(rampage) again... :S How can i fix it ?

  • System Initialization
    • Events
      • Time - Elapsed game time is 0.00 seconds
    • Conditions
    • Actions
      • Trigger - Run Setup Streak Strings <gen> (ignoring conditions)
      • Trigger - Turn on System Streak Kill <gen>
      • Trigger - Turn on System Timers <gen>
      • For each (Integer A) from 1 to 12, do (Actions)
        • Loop - Actions
          • Trigger - Add to System Timers <gen> the event (Time - ExtraStreak_Timer[(Integer A)] expires)
  • System Streak Kill
    • Events
      • Unit - A unit Dies
    • Conditions
      • ((Triggering unit) is A Hero) Equal to True
      • ((Triggering unit) belongs to an enemy of (Owner of (Killing unit))) Equal to True
      • ((Triggering unit) is an illusion) Equal to False
    • Actions
      • Set Streak_Kills[(Player number of (Owner of (Killing unit)))] = (Streak_Kills[(Player number of (Owner of (Killing unit)))] + 1)
      • Set ExtraStreak_Kills[(Player number of (Owner of (Killing unit)))] = (ExtraStreak_Kills[(Player number of (Owner of (Killing unit)))] + 1)
      • Set Streak_Kills[(Player number of (Owner of (Triggering unit)))] = 0
      • Countdown Timer - Start ExtraStreak_Timer[(Player number of (Owner of (Killing unit)))] as a One-shot timer that will expire in 7.00 seconds
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • ExtraStreak_Kills[(Player number of (Owner of (Killing unit)))] Greater than or equal to 2
        • Then - Actions
          • Custom script: call PolledWait (0.27)
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • ExtraStreak_Kills[(Player number of (Owner of (Killing unit)))] Greater than or equal to 5
            • Then - Actions
              • Game - Display to (All players) the text: (Isim[(Player number of (Owner of (Killing unit)))] + ExtraStreak_Strings[5])
            • Else - Actions
              • Game - Display to (All players) the text: (Isim[(Player number of (Owner of (Killing unit)))] + ExtraStreak_Strings[ExtraStreak_Kills[(Player number of (Owner of (Killing unit)))]])
        • Else - Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • Streak_Kills[(Player number of (Owner of (Killing unit)))] Greater than or equal to 3
        • Then - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • Streak_Kills[(Player number of (Owner of (Killing unit)))] Greater than or equal to 8
            • Then - Actions
              • Game - Display to (All players) the text: (Isim[(Player number of (Owner of (Killing unit)))] + Streak_Strings[8])
            • Else - Actions
              • Game - Display to (All players) the text: (Isim[(Player number of (Owner of (Killing unit)))] + Streak_Strings[Streak_Kills[(Player number of (Owner of (Killing unit)))]])
        • Else - Actions
  • System Timers
    • Events
    • Conditions
    • Actions
      • For each (Integer ExtraStreakInt) from 1 to 12, do (Actions)
        • Loop - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Remaining time for ExtraStreak_Timer[ExtraStreakInt]) Equal to 0.00
            • Then - Actions
              • Set ExtraStreak_Kills[ExtraStreakInt] = 0
              • Custom script: call PauseTimer (GetExpiredTimer())
              • Custom script: call DestroyTimer (GetExpiredTimer())
            • Else - Actions
 
Level 7
Joined
Jan 22, 2013
Messages
293
Well First off you should have taken my offer on my Kill Streak system Lol.

Conflict:
1. It's not removing your ExtraStrak_Kills Integer when you die. Meaning you die, then you come back, kill someone, then it adds onto your kill spree again.

  • Set ExtraStreak_Kills[(Player number of (Owner of (Triggering unit)))] = 0
Add the Above to here:

  • Actions
    • Set Streak_Kills[(Player number of (Owner of (Killing unit)))] = (Streak_Kills[(Player number of (Owner of (Killing unit)))] + 1)
    • Set ExtraStreak_Kills[(Player number of (Owner of (Killing unit)))] = (ExtraStreak_Kills[(Player number of (Owner of (Killing unit)))] + 1)
    • Set Streak_Kills[(Player number of (Owner of (Triggering unit)))] = 0
That Kill streak system bores me.

Extra: IF you have no more problems set the thread = Solved
 
Level 29
Joined
Oct 24, 2012
Messages
6,543
Use hidden tags when posting log triggers like this. When u use something more than twice store it into a temp variable. Ex u use( player number of(owner of( killing unit ))) a lot store that into a variable. The reason for this is to prevent bugs and to keep everything efficient. Never use integer A always great ur own variable
 
Level 7
Joined
Jan 22, 2013
Messages
293
Use hidden tags when posting log triggers like this. When u use something more than twice store it into a temp variable. Ex u use( player number of(owner of( killing unit ))) a lot store that into a variable. The reason for this is to prevent bugs and to keep everything efficient. Never use integer A always great ur own variable

You say that Integer A stuff a lot, you should post a thread to improve speeds.
 
Level 29
Joined
Oct 24, 2012
Messages
6,543
You say that Integer A stuff a lot, you should post a thread to improve speeds.

yes but u dont seem to pay attention to speeds either. as i have said integer A is slower its a fact not something i came up with. the (player number of ( owner of( killing unit ))) is also slower than putting it into a variable. but u only pay attention to me say integer A ? that reduces speed a lot if u dont set it to a variable. Especially when called close to 20 times in one trigger.
here is a for each integer loop w a custom variable.
JASS:
function Trig_Untitled_Trigger_001_Copy_Actions takes nothing returns nothing
    set udg_tempInt = 1
    loop
        exitwhen udg_tempInt > 10
        set udg_tempInt = udg_tempInt + 1
    endloop
endfunction
here is one w for each integer A.
more variables and slower read / write times because one variable name is longer( minimal speed difference). 2. it pretty much creates a call to get the loop index each time it is used. 3. it uses another variable for end value. which the other integer doesnt. so it is slower
JASS:
function Trig_Untitled_Trigger_001_Actions takes nothing returns nothing
    set bj_forLoopAIndex = 1
    set bj_forLoopAIndexEnd = 10
    loop
        exitwhen bj_forLoopAIndex > bj_forLoopAIndexEnd
        set bj_forLoopAIndex = bj_forLoopAIndex + 1
    endloop
endfunction

as said by spinnaker
Better use variable instead of integer, integer A is sometimes buggy and if you use other triggers with GetForLoopA, there might be wierd events around.

he says it here. http://www.hiveworkshop.com/forums/1955181-post3.html

here more efficiency test. i just made a loop and displayed the variable integer A tops out at 6122 loops. ur own integer tops out at 6122

here are the trigs i used
  • Untitled Trigger 001
    • Events
      • Player - Player 1 (Red) types a chat message containing run as An exact match
    • Conditions
    • Actions
      • For each (Integer A) from 1 to 9999, do (Actions)
        • Loop - Actions
          • Game - Display to (All players) the text: (String((Integer A)))
  • Untitled Trigger 001 Copy
    • Events
      • Player - Player 1 (Red) types a chat message containing run as An exact match
    • Conditions
    • Actions
      • For each (Integer tempInt) from 1 to 9999, do (Actions)
        • Loop - Actions
          • Game - Display to (All players) the text: (String(tempInt))
pics are down bottom
 

Attachments

  • this is a Integer A variable loop.PNG
    this is a Integer A variable loop.PNG
    18.2 KB · Views: 181
  • this is a int variable u created.PNG
    this is a int variable u created.PNG
    31.8 KB · Views: 196
Level 5
Joined
Jul 30, 2012
Messages
93
Problem is just this with this form:

I kill 2 hero.It writes double kill! It's okey...
2-3 mins passed then i killed 2 hero again.It writes double kill! Still it's okey...
But 2-3 mins passed, i kill someone again, it writes triple kill!
Then it continues ultra,rampage etc. however mins pass or i die... *-*
 
Level 9
Joined
Nov 19, 2011
Messages
516
Convert it into vJass and change all variables into local. It will help to avoid accidental overwirite.

@deathismyfriend

People here are paying extreme attention on leaks, ignoring speed and map size. Looks like no one (or close to no one) is using external functions in GUI or vJass. :D
 
Level 29
Joined
Oct 24, 2012
Messages
6,543
Convert it into vJass and change all variables into local. It will help to avoid accidental overwirite.

@deathismyfriend

People here are paying extreme attention on leaks, ignoring speed and map size. Looks like no one (or close to no one) is using external functions in GUI or vJass. :D

He doesnt need to use vJass. As for the posting rules he posted his problem in GUI so anyone trying to help should make it in GUI unless otherwise necessary.

Next efficiency is always something to look into. No point in playing an inefficient map when it lags like crazy. Efficiency reduces lag. Also the more efficient a trigger is the lower the chance of hitting the op limit. Also what do you mean by no1 is using external functions ?
 
Level 9
Joined
Nov 19, 2011
Messages
516
Here is an example of external function
  • MyGlobalFunc1
  • Events
  • Conditions
  • Actions
    • Floating Text - Set color of (Last created floating text) to 100/0/0 and 0% transparency
    • Floating Text - Set life time of (Last created floating text) to 5 sec
    • Floating Text - Set dispose time of (Last created floating text) to 3 sec
  • MyTrigger
  • Events
  • Conditions
  • Actions
    • Comment - Here goes your code
    • Comment - Here is creation of floating text with needed data (e.g. damage dealt or critical)
    • Trigger - Run MyGlobalFunc1 ignoring conditions
This way if you have more than one trigger that uses same set for floating text, you have reduced map size. This example is simple, but if you will use global variables you can reduce size much more. For e.g. creation 5 units around hero on pentagram grid can be made as external function based on variable 'GLOBALSpellUnit'. In that case on casting, you are checking spell level and set GLOBALSpellUnit based on it. After that external function can be called. This way you have reduced map size by external function size * (spell levels - 1).

BTW I don't have WC3 editor here so names may have typos.
 
Last edited:
Level 16
Joined
Jul 31, 2012
Messages
2,217
i really don't know what is wrong... i noticed that u use dota sprees, if you are interseted, here is my version in my map

  • Someone kill
    • Events
      • Unit - A unit Dies
    • Conditions
      • ((Dying unit) is A Hero) Equal to True
    • Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Owner of (Killing unit)) Equal to Player 1 (Red)
        • Then - Actions
          • Set D[(Player number of (Owner of (Dying unit)))] = (D[(Player number of (Owner of (Dying unit)))] + 1)
          • Set K[1] = (K[1] + 1)
          • Game - Display to (All players) the text: ((Name of (Owner of (Killing unit))) + ( pwned + ((Name of (Owner of (Dying unit))) + ('s head for + (|cffffff00 + ((String((((Hero level of (Dying unit)) x 24) + 100))) + gold|r))))))
          • Player - Add (((Hero level of (Dying unit)) x 24) + 100) to (Owner of (Killing unit)) Current gold
          • Player - Add (-1 x (((Hero level of (Dying unit)) x 24) + 100)) to (Owner of (Dying unit)) Current gold
          • Set Spree[(Player number of (Owner of (Dying unit)))] = 0
          • Set Combo[(Player number of (Owner of (Dying unit)))] = 0
          • Set Combo_timer[(Player number of (Owner of (Killing unit)))] = 30.00
        • Else - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Owner of (Killing unit)) Equal to Player 7 (Green)
            • Then - Actions
              • Set D[(Player number of (Owner of (Dying unit)))] = (D[(Player number of (Owner of (Dying unit)))] + 1)
              • Set K[7] = (K[7] + 1)
              • Game - Display to (All players) the text: ((Name of (Owner of (Killing unit))) + ( pwned + ((Name of (Owner of (Dying unit))) + ('s head for + (|cffffff00 + ((String((((Hero level of (Dying unit)) x 24) + 100))) + gold|r))))))
              • Player - Add (((Hero level of (Dying unit)) x 24) + 100) to (Owner of (Killing unit)) Current gold
              • Player - Add (-1 x (((Hero level of (Dying unit)) x 24) + 100)) to (Owner of (Dying unit)) Current gold
              • Set Spree[(Player number of (Owner of (Dying unit)))] = 0
              • Set Combo[(Player number of (Owner of (Dying unit)))] = 0
              • Set Combo_timer[(Player number of (Owner of (Killing unit)))] = 30.00
            • Else - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • (Owner of (Killing unit)) Equal to No_Player
                • Then - Actions
                  • Set D[(Player number of (Owner of (Dying unit)))] = (D[(Player number of (Owner of (Dying unit)))] + 1)
                  • Game - Display to (All players) the text: (<Empty String> + (<Empty String> + ((Name of (Owner of (Dying unit))) + ( has been killed, + (|cffffff00 + ((String((((Hero level of (Dying unit)) x 24) + 100))) + gold|r is split to his enemies))))))
                  • Player - Add (-1 x (((Hero level of (Dying unit)) x 24) + 100)) to (Owner of (Dying unit)) Current gold
                  • Player Group - Pick every player in (All enemies of (Owner of (Dying unit))) and do (Actions)
                    • Loop - Actions
                      • Player - Add ((((Hero level of (Dying unit)) x 24) + 100) / (Number of players in (All enemies of (Owner of (Dying unit))))) to (Picked player) Current gold
                  • Set Spree[(Player number of (Owner of (Dying unit)))] = 0
                  • Set Combo[(Player number of (Owner of (Dying unit)))] = 0
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • Or - Any (Conditions) are true
                        • Conditions
                          • (Owner of (Dying unit)) Equal to Player 2 (Blue)
                          • (Owner of (Dying unit)) Equal to Player 3 (Teal)
                          • (Owner of (Dying unit)) Equal to Player 4 (Purple)
                          • (Owner of (Dying unit)) Equal to Player 5 (Yellow)
                          • (Owner of (Dying unit)) Equal to Player 6 (Orange)
                    • Then - Actions
                      • Set K[7] = (K[7] + 1)
                    • Else - Actions
                      • Set K[1] = (K[1] + 1)
                • Else - Actions
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • (Killing unit) Equal to Roshan 0002 <gen>
                    • Then - Actions
                      • Game - Display to (All players) the text: ((Name of (Owner of (Dying unit))) + has been killed by |cff808080Roshan|r)
                      • Player - Add (-1 x (((Hero level of (Dying unit)) x 24) + 100)) to (Owner of (Dying unit)) Current gold
                      • Set Spree[(Player number of (Owner of (Dying unit)))] = 0
                      • Set Combo[(Player number of (Owner of (Dying unit)))] = 0
                    • Else - Actions
                      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                        • If - Conditions
                          • Neutral Hostile Equal to (Owner of (Killing unit))
                        • Then - Actions
                          • Game - Display to (All players) the text: ((Name of (Owner of (Dying unit))) + ( has been killed by + (Name of Neutral Hostile)))
                          • Set Spree[(Player number of (Owner of (Dying unit)))] = 0
                          • Set Combo[(Player number of (Owner of (Dying unit)))] = 0
                        • Else - Actions
                          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                            • If - Conditions
                              • (Owner of (Killing unit)) Equal to (Random player from (All allies of (Owner of (Dying unit))))
                              • (Owner of (Killing unit)) Not equal to (Owner of (Dying unit))
                            • Then - Actions
                              • Game - Display to (All players) the text: ((Name of (Owner of (Killing unit))) + ( has denied the death of + ((Name of (Owner of (Dying unit))) + <Empty String>)))
                            • Else - Actions
                              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                                • If - Conditions
                                  • (Owner of (Dying unit)) Not equal to (Owner of (Killing unit))
                                • Then - Actions
                                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                                    • If - Conditions
                                      • (Owner of (Killing unit)) Equal to Neutral Hostile
                                    • Then - Actions
                                      • Game - Display to (All players) the text: ((Name of (Owner of (Killing unit))) + has been killed by |cff808080Neutral Creeps)
                                      • Set Spree[(Player number of (Owner of (Dying unit)))] = 0
                                      • Set Combo[(Player number of (Owner of (Dying unit)))] = 0
                                    • Else - Actions
                                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                                    • If - Conditions
                                      • (Owner of (Killing unit)) Equal to (Random player from (All enemies of (Owner of (Dying unit))))
                                    • Then - Actions
                                      • Game - Display to (All players) the text: ((Name of (Owner of (Killing unit))) + ( pwned + ((Name of (Owner of (Dying unit))) + ('s head for + (|cffffff00 + ((String((((Hero level of (Dying unit)) x 24) + 100))) + gold|r))))))
                                      • Player - Add (((Hero level of (Dying unit)) x 24) + 100) to (Owner of (Killing unit)) Current gold
                                      • Player - Add (-1 x (((Hero level of (Dying unit)) x 24) + 100)) to (Owner of (Dying unit)) Current gold
                                      • Set Spree[(Player number of (Owner of (Killing unit)))] = (Spree[(Player number of (Owner of (Killing unit)))] + 1)
                                      • Set Spree[(Player number of (Owner of (Dying unit)))] = 0
                                      • Set Combo[(Player number of (Owner of (Dying unit)))] = 0
                                      • Set Combo_timer[(Player number of (Owner of (Killing unit)))] = 30.00
                                      • Set Combo[(Player number of (Owner of (Killing unit)))] = (Combo[(Player number of (Owner of (Killing unit)))] + 1)
                                      • Set K[(Player number of (Owner of (Killing unit)))] = (K[(Player number of (Owner of (Killing unit)))] + 1)
                                      • Set D[(Player number of (Owner of (Dying unit)))] = (D[(Player number of (Owner of (Dying unit)))] + 1)
                                    • Else - Actions
                                • Else - Actions
                                  • Game - Display to (All players) the text: ((Name of (Owner of (Killing unit))) + has killed himself)
  • Sprees
    • Events
      • Unit - A unit Dies
    • Conditions
      • ((Dying unit) is A Hero) Equal to True
    • Actions
      • Wait 0.01 seconds
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • Spree[(Player number of (Owner of (Killing unit)))] Equal to 3
        • Then - Actions
          • Game - Display to (All players) the text: ((Name of (Owner of (Killing unit))) + is on a |cff32cd32Killing Spree|r)
          • Sound - Play Killing_Spree <gen>
        • Else - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • Spree[(Player number of (Owner of (Killing unit)))] Equal to 4
            • Then - Actions
              • Game - Display to (All players) the text: ((Name of (Owner of (Killing unit))) + is |cff3c008aDominating|r)
              • Sound - Play Dominating <gen>
            • Else - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • Spree[(Player number of (Owner of (Killing unit)))] Equal to 5
                • Then - Actions
                  • Game - Display to (All players) the text: ((Name of (Owner of (Killing unit))) + just had a |cffc9746fMega Kill|r)
                  • Sound - Play MegaKill <gen>
                • Else - Actions
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • Spree[(Player number of (Owner of (Killing unit)))] Equal to 6
                    • Then - Actions
                      • Game - Display to (All players) the text: ((Name of (Owner of (Killing unit))) + is |cff005400Unstoppable|r)
                      • Sound - Play Unstoppable <gen>
                    • Else - Actions
                      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                        • If - Conditions
                          • Spree[(Player number of (Owner of (Killing unit)))] Equal to 7
                        • Then - Actions
                          • Game - Display to (All players) the text: ((Name of (Owner of (Killing unit))) + is |cffbababaWicked Sick|r)
                          • Sound - Play WhickedSick <gen>
                        • Else - Actions
                          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                            • If - Conditions
                              • Spree[(Player number of (Owner of (Killing unit)))] Equal to 8
                            • Then - Actions
                              • Game - Display to (All players) the text: ((Name of (Owner of (Killing unit))) + is on a |cffe58b15Monster Kill|r)
                              • Sound - Play monster_kill <gen>
                            • Else - Actions
                              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                                • If - Conditions
                                  • Spree[(Player number of (Owner of (Killing unit)))] Equal to 9
                                • Then - Actions
                                  • Game - Display to (All players) the text: ((Name of (Owner of (Killing unit))) + is as |cffff0000GODLIKE|r)
                                  • Sound - Play GodLike <gen>
                                • Else - Actions
                                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                                    • If - Conditions
                                      • Spree[(Player number of (Owner of (Killing unit)))] Greater than or equal to 10
                                      • Spree[(Player number of (Owner of (Killing unit)))] Less than or equal to 14
                                    • Then - Actions
                                      • Game - Display to (All players) the text: ((Name of (Owner of (Killing unit))) + is |cffe58b15Beyond GODLIKE|r, someone kill him!!)
                                      • Sound - Play HolyShit <gen>
                                    • Else - Actions
                                      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                                        • If - Conditions
                                          • Spree[(Player number of (Owner of (Killing unit)))] Greater than or equal to 15
                                        • Then - Actions
                                          • Game - Display to (All players) the text: ((Name of (Owner of (Killing unit))) + is an |cff030303ULTIMATE KILLER!!!|r |cffffff00(+1000 GOLD)|r)
                                          • Sound - Play Combowhore <gen>
                                          • Player - Add 1000 to (Owner of (Killing unit)) Current gold
                                        • Else - Actions
      • Wait 0.01 seconds
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • Combo[(Player number of (Owner of (Killing unit)))] Equal to 2
        • Then - Actions
          • Game - Display to (All players) the text: ((Name of (Owner of (Killing unit))) + just had a |cff0000ffDouble Kill|r |cffffff00(+50 Gold)|r)
          • Player - Add 50 to (Owner of (Killing unit)) Current gold
          • Sound - Play Double_Kill <gen>
        • Else - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • Combo[(Player number of (Owner of (Killing unit)))] Equal to 3
            • Then - Actions
              • Game - Display to (All players) the text: ((Name of (Owner of (Killing unit))) + just had a |cff00ff00Triple Kill|r |cffffff00(+100 Gold)|r)
              • Player - Add 100 to (Owner of (Killing unit)) Current gold
              • Sound - Play triple_kill <gen>
            • Else - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • Combo[(Player number of (Owner of (Killing unit)))] Equal to 4
                • Then - Actions
                  • Game - Display to (All players) the text: ((Name of (Owner of (Killing unit))) + just had an |cffe55aafUltra Kill|r |cffffff00(+200 Gold)|r)
                  • Player - Add 200 to (Owner of (Killing unit)) Current gold
                  • Sound - Play UltraKill <gen>
                • Else - Actions
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • Combo[(Player number of (Owner of (Killing unit)))] Greater than 4
                    • Then - Actions
                      • Game - Display to (All players) the text: ((Name of (Owner of (Killing unit))) + just had a |cff6ad6dcRampage|r |cffffff00(+300 Gold)|r)
                      • Player - Add 300 to (Owner of (Killing unit)) Current gold
                      • Sound - Play Rampage <gen>
                    • Else - Actions
P.S. there are some things like the K variable and the D variable that are for the Deaths and Kill count

EDIT: oh i gorgot one thing
  • For each (Integer x) from 1 to 12, do (Actions)
    • Loop - Actions
      • Set Combo_timer[x] = (Combo_timer[x] - 1.00)
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • Combo_timer[x] Less than 0.00
        • Then - Actions
          • Set Combo[x] = 0
        • Else - Actions
there is this action in a loop trigger every 1 s
 
Level 7
Joined
Jan 22, 2013
Messages
293
i really don't know what is wrong... i noticed that u use dota sprees, if you are interseted, here is my version in my map

  • Someone kill
    • Events
      • Unit - A unit Dies
    • Conditions
      • ((Dying unit) is A Hero) Equal to True
    • Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Owner of (Killing unit)) Equal to Player 1 (Red)
        • Then - Actions
          • Set D[(Player number of (Owner of (Dying unit)))] = (D[(Player number of (Owner of (Dying unit)))] + 1)
          • Set K[1] = (K[1] + 1)
          • Game - Display to (All players) the text: ((Name of (Owner of (Killing unit))) + ( pwned + ((Name of (Owner of (Dying unit))) + ('s head for + (|cffffff00 + ((String((((Hero level of (Dying unit)) x 24) + 100))) + gold|r))))))
          • Player - Add (((Hero level of (Dying unit)) x 24) + 100) to (Owner of (Killing unit)) Current gold
          • Player - Add (-1 x (((Hero level of (Dying unit)) x 24) + 100)) to (Owner of (Dying unit)) Current gold
          • Set Spree[(Player number of (Owner of (Dying unit)))] = 0
          • Set Combo[(Player number of (Owner of (Dying unit)))] = 0
          • Set Combo_timer[(Player number of (Owner of (Killing unit)))] = 30.00
        • Else - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Owner of (Killing unit)) Equal to Player 7 (Green)
            • Then - Actions
              • Set D[(Player number of (Owner of (Dying unit)))] = (D[(Player number of (Owner of (Dying unit)))] + 1)
              • Set K[7] = (K[7] + 1)
              • Game - Display to (All players) the text: ((Name of (Owner of (Killing unit))) + ( pwned + ((Name of (Owner of (Dying unit))) + ('s head for + (|cffffff00 + ((String((((Hero level of (Dying unit)) x 24) + 100))) + gold|r))))))
              • Player - Add (((Hero level of (Dying unit)) x 24) + 100) to (Owner of (Killing unit)) Current gold
              • Player - Add (-1 x (((Hero level of (Dying unit)) x 24) + 100)) to (Owner of (Dying unit)) Current gold
              • Set Spree[(Player number of (Owner of (Dying unit)))] = 0
              • Set Combo[(Player number of (Owner of (Dying unit)))] = 0
              • Set Combo_timer[(Player number of (Owner of (Killing unit)))] = 30.00
            • Else - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • (Owner of (Killing unit)) Equal to No_Player
                • Then - Actions
                  • Set D[(Player number of (Owner of (Dying unit)))] = (D[(Player number of (Owner of (Dying unit)))] + 1)
                  • Game - Display to (All players) the text: (<Empty String> + (<Empty String> + ((Name of (Owner of (Dying unit))) + ( has been killed, + (|cffffff00 + ((String((((Hero level of (Dying unit)) x 24) + 100))) + gold|r is split to his enemies))))))
                  • Player - Add (-1 x (((Hero level of (Dying unit)) x 24) + 100)) to (Owner of (Dying unit)) Current gold
                  • Player Group - Pick every player in (All enemies of (Owner of (Dying unit))) and do (Actions)
                    • Loop - Actions
                      • Player - Add ((((Hero level of (Dying unit)) x 24) + 100) / (Number of players in (All enemies of (Owner of (Dying unit))))) to (Picked player) Current gold
                  • Set Spree[(Player number of (Owner of (Dying unit)))] = 0
                  • Set Combo[(Player number of (Owner of (Dying unit)))] = 0
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • Or - Any (Conditions) are true
                        • Conditions
                          • (Owner of (Dying unit)) Equal to Player 2 (Blue)
                          • (Owner of (Dying unit)) Equal to Player 3 (Teal)
                          • (Owner of (Dying unit)) Equal to Player 4 (Purple)
                          • (Owner of (Dying unit)) Equal to Player 5 (Yellow)
                          • (Owner of (Dying unit)) Equal to Player 6 (Orange)
                    • Then - Actions
                      • Set K[7] = (K[7] + 1)
                    • Else - Actions
                      • Set K[1] = (K[1] + 1)
                • Else - Actions
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • (Killing unit) Equal to Roshan 0002 <gen>
                    • Then - Actions
                      • Game - Display to (All players) the text: ((Name of (Owner of (Dying unit))) + has been killed by |cff808080Roshan|r)
                      • Player - Add (-1 x (((Hero level of (Dying unit)) x 24) + 100)) to (Owner of (Dying unit)) Current gold
                      • Set Spree[(Player number of (Owner of (Dying unit)))] = 0
                      • Set Combo[(Player number of (Owner of (Dying unit)))] = 0
                    • Else - Actions
                      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                        • If - Conditions
                          • Neutral Hostile Equal to (Owner of (Killing unit))
                        • Then - Actions
                          • Game - Display to (All players) the text: ((Name of (Owner of (Dying unit))) + ( has been killed by + (Name of Neutral Hostile)))
                          • Set Spree[(Player number of (Owner of (Dying unit)))] = 0
                          • Set Combo[(Player number of (Owner of (Dying unit)))] = 0
                        • Else - Actions
                          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                            • If - Conditions
                              • (Owner of (Killing unit)) Equal to (Random player from (All allies of (Owner of (Dying unit))))
                              • (Owner of (Killing unit)) Not equal to (Owner of (Dying unit))
                            • Then - Actions
                              • Game - Display to (All players) the text: ((Name of (Owner of (Killing unit))) + ( has denied the death of + ((Name of (Owner of (Dying unit))) + <Empty String>)))
                            • Else - Actions
                              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                                • If - Conditions
                                  • (Owner of (Dying unit)) Not equal to (Owner of (Killing unit))
                                • Then - Actions
                                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                                    • If - Conditions
                                      • (Owner of (Killing unit)) Equal to Neutral Hostile
                                    • Then - Actions
                                      • Game - Display to (All players) the text: ((Name of (Owner of (Killing unit))) + has been killed by |cff808080Neutral Creeps)
                                      • Set Spree[(Player number of (Owner of (Dying unit)))] = 0
                                      • Set Combo[(Player number of (Owner of (Dying unit)))] = 0
                                    • Else - Actions
                                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                                    • If - Conditions
                                      • (Owner of (Killing unit)) Equal to (Random player from (All enemies of (Owner of (Dying unit))))
                                    • Then - Actions
                                      • Game - Display to (All players) the text: ((Name of (Owner of (Killing unit))) + ( pwned + ((Name of (Owner of (Dying unit))) + ('s head for + (|cffffff00 + ((String((((Hero level of (Dying unit)) x 24) + 100))) + gold|r))))))
                                      • Player - Add (((Hero level of (Dying unit)) x 24) + 100) to (Owner of (Killing unit)) Current gold
                                      • Player - Add (-1 x (((Hero level of (Dying unit)) x 24) + 100)) to (Owner of (Dying unit)) Current gold
                                      • Set Spree[(Player number of (Owner of (Killing unit)))] = (Spree[(Player number of (Owner of (Killing unit)))] + 1)
                                      • Set Spree[(Player number of (Owner of (Dying unit)))] = 0
                                      • Set Combo[(Player number of (Owner of (Dying unit)))] = 0
                                      • Set Combo_timer[(Player number of (Owner of (Killing unit)))] = 30.00
                                      • Set Combo[(Player number of (Owner of (Killing unit)))] = (Combo[(Player number of (Owner of (Killing unit)))] + 1)
                                      • Set K[(Player number of (Owner of (Killing unit)))] = (K[(Player number of (Owner of (Killing unit)))] + 1)
                                      • Set D[(Player number of (Owner of (Dying unit)))] = (D[(Player number of (Owner of (Dying unit)))] + 1)
                                    • Else - Actions
                                • Else - Actions
                                  • Game - Display to (All players) the text: ((Name of (Owner of (Killing unit))) + has killed himself)
  • Sprees
    • Events
      • Unit - A unit Dies
    • Conditions
      • ((Dying unit) is A Hero) Equal to True
    • Actions
      • Wait 0.01 seconds
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • Spree[(Player number of (Owner of (Killing unit)))] Equal to 3
        • Then - Actions
          • Game - Display to (All players) the text: ((Name of (Owner of (Killing unit))) + is on a |cff32cd32Killing Spree|r)
          • Sound - Play Killing_Spree <gen>
        • Else - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • Spree[(Player number of (Owner of (Killing unit)))] Equal to 4
            • Then - Actions
              • Game - Display to (All players) the text: ((Name of (Owner of (Killing unit))) + is |cff3c008aDominating|r)
              • Sound - Play Dominating <gen>
            • Else - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • Spree[(Player number of (Owner of (Killing unit)))] Equal to 5
                • Then - Actions
                  • Game - Display to (All players) the text: ((Name of (Owner of (Killing unit))) + just had a |cffc9746fMega Kill|r)
                  • Sound - Play MegaKill <gen>
                • Else - Actions
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • Spree[(Player number of (Owner of (Killing unit)))] Equal to 6
                    • Then - Actions
                      • Game - Display to (All players) the text: ((Name of (Owner of (Killing unit))) + is |cff005400Unstoppable|r)
                      • Sound - Play Unstoppable <gen>
                    • Else - Actions
                      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                        • If - Conditions
                          • Spree[(Player number of (Owner of (Killing unit)))] Equal to 7
                        • Then - Actions
                          • Game - Display to (All players) the text: ((Name of (Owner of (Killing unit))) + is |cffbababaWicked Sick|r)
                          • Sound - Play WhickedSick <gen>
                        • Else - Actions
                          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                            • If - Conditions
                              • Spree[(Player number of (Owner of (Killing unit)))] Equal to 8
                            • Then - Actions
                              • Game - Display to (All players) the text: ((Name of (Owner of (Killing unit))) + is on a |cffe58b15Monster Kill|r)
                              • Sound - Play monster_kill <gen>
                            • Else - Actions
                              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                                • If - Conditions
                                  • Spree[(Player number of (Owner of (Killing unit)))] Equal to 9
                                • Then - Actions
                                  • Game - Display to (All players) the text: ((Name of (Owner of (Killing unit))) + is as |cffff0000GODLIKE|r)
                                  • Sound - Play GodLike <gen>
                                • Else - Actions
                                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                                    • If - Conditions
                                      • Spree[(Player number of (Owner of (Killing unit)))] Greater than or equal to 10
                                      • Spree[(Player number of (Owner of (Killing unit)))] Less than or equal to 14
                                    • Then - Actions
                                      • Game - Display to (All players) the text: ((Name of (Owner of (Killing unit))) + is |cffe58b15Beyond GODLIKE|r, someone kill him!!)
                                      • Sound - Play HolyShit <gen>
                                    • Else - Actions
                                      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                                        • If - Conditions
                                          • Spree[(Player number of (Owner of (Killing unit)))] Greater than or equal to 15
                                        • Then - Actions
                                          • Game - Display to (All players) the text: ((Name of (Owner of (Killing unit))) + is an |cff030303ULTIMATE KILLER!!!|r |cffffff00(+1000 GOLD)|r)
                                          • Sound - Play Combowhore <gen>
                                          • Player - Add 1000 to (Owner of (Killing unit)) Current gold
                                        • Else - Actions
      • Wait 0.01 seconds
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • Combo[(Player number of (Owner of (Killing unit)))] Equal to 2
        • Then - Actions
          • Game - Display to (All players) the text: ((Name of (Owner of (Killing unit))) + just had a |cff0000ffDouble Kill|r |cffffff00(+50 Gold)|r)
          • Player - Add 50 to (Owner of (Killing unit)) Current gold
          • Sound - Play Double_Kill <gen>
        • Else - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • Combo[(Player number of (Owner of (Killing unit)))] Equal to 3
            • Then - Actions
              • Game - Display to (All players) the text: ((Name of (Owner of (Killing unit))) + just had a |cff00ff00Triple Kill|r |cffffff00(+100 Gold)|r)
              • Player - Add 100 to (Owner of (Killing unit)) Current gold
              • Sound - Play triple_kill <gen>
            • Else - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • Combo[(Player number of (Owner of (Killing unit)))] Equal to 4
                • Then - Actions
                  • Game - Display to (All players) the text: ((Name of (Owner of (Killing unit))) + just had an |cffe55aafUltra Kill|r |cffffff00(+200 Gold)|r)
                  • Player - Add 200 to (Owner of (Killing unit)) Current gold
                  • Sound - Play UltraKill <gen>
                • Else - Actions
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • Combo[(Player number of (Owner of (Killing unit)))] Greater than 4
                    • Then - Actions
                      • Game - Display to (All players) the text: ((Name of (Owner of (Killing unit))) + just had a |cff6ad6dcRampage|r |cffffff00(+300 Gold)|r)
                      • Player - Add 300 to (Owner of (Killing unit)) Current gold
                      • Sound - Play Rampage <gen>
                    • Else - Actions
P.S. there are some things like the K variable and the D variable that are for the Deaths and Kill count

EDIT: oh i gorgot one thing
  • For each (Integer x) from 1 to 12, do (Actions)
    • Loop - Actions
      • Set Combo_timer[x] = (Combo_timer[x] - 1.00)
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • Combo_timer[x] Less than 0.00
        • Then - Actions
          • Set Combo[x] = 0
        • Else - Actions
there is this action in a loop trigger every 1 s

Hate to bust your balls but your leaking... Every single sound in your system DotCa.

Use Destroy sound.

Store them and destroy them later IDC so long as they get destroyed.


As for the owner of the thread:

If you do not have your system fixed by next week. I will give you mine from my AOS.
 
Status
Not open for further replies.
Top