DotA Kill System (Sprees etc) Doesn't Work.

Saiza

New Member
Reaction score
10
Hello! I have created a ''DotA Kill System'' which should display texts like first blood, killing spree, dominating, godlike and play the sounds. Everything should be like in DotA. Heres the codes: (I think this is pretty advance GUI, so if your not pretty familiar with the editor I don't think you can help me).

Trigger:
  • Killing System setup
    • Events
      • Map initialization
    • Conditions
    • Actions
      • -------- Setup Spree Sounds --------
      • Set Spree_Sounds[1] = No sound
      • Set Spree_Sounds[2] = No sound
      • Set Spree_Sounds[3] = Killing_Spree <gen>
      • Set Spree_Sounds[4] = Dominating <gen>
      • Set Spree_Sounds[5] = MegaKill <gen>
      • Set Spree_Sounds[6] = Unstoppable <gen>
      • Set Spree_Sounds[7] = WhickedSick <gen>
      • Set Spree_Sounds[8] = MonsterKill <gen>
      • Set Spree_Sounds[9] = GodLike <gen>
      • Set Spree_Sounds[10] = HolyShit <gen>
      • -------- Setup Get Spree Text --------
      • Set Spree_Texts[1] = <Empty String>
      • Set Spree_Texts[2] = <Empty String>
      • Set Spree_Texts[3] = |ris on a |cff00FF00killing spree|r!
      • Set Spree_Texts[4] = |ris |cff551A8Bdominating|r!
      • Set Spree_Texts[5] = |rhas a |cffCD1076mega kill|r!
      • Set Spree_Texts[6] = |ris |cffFF8C00unstoppable|r!!
      • Set Spree_Texts[7] = |ris |cff006400wicked sick|r!!
      • Set Spree_Texts[8] = |rhas a |cffFF6EB4monster kill|r!!
      • Set Spree_Texts[9] = |ris |CFFFF0303GODLIKE|r!!!
      • Set Spree_Texts[10] = |ris |CFFFF0303beyond GODLIKE|r. Someone KILL HIM!!!
      • -------- Setup End Spree Text --------
      • Set SpreeEnd_Texts[1] = <Empty String>
      • Set SpreeEnd_Texts[2] = <Empty String>
      • Set SpreeEnd_Texts[3] = |cff00FF00killing spree|r
      • Set SpreeEnd_Texts[4] = |cff551A8Bdominating|r
      • Set SpreeEnd_Texts[5] = |cffCD1076mega kill|r
      • Set SpreeEnd_Texts[6] = |cffFF8C00unstoppable|r
      • Set SpreeEnd_Texts[7] = |cff006400wicked sick|r
      • Set SpreeEnd_Texts[8] = |cffFF6EB4monster kill|r
      • Set SpreeEnd_Texts[9] = |CFFFF0303GODLIKE|r
      • Set SpreeEnd_Texts[10] = |CFFFF0303beyond GODLIKE|r
      • Custom script: call DestroyTrigger( GetTriggeringTrigger() )


Trigger:
  • Killing System
    • Events
      • Unit - A unit Dies
    • Conditions
      • ((Triggering unit) is A Hero) Equal to True
    • Actions
      • Custom script: local string Message1
      • Custom script: local string Message2
      • Custom script: local string Message3
      • Custom script: local sound Sound1
      • Custom script: local sound Sound2
      • Custom script: local sound Sound3
      • If (Spree_Count[(Player number of (Owner of (Killing unit)))] Less than 10) then do (Set Spree_Count[(Player number of (Owner of (Killing unit)))] = (Spree_Count[(Player number of (Owner of (Killing unit)))] + 1)) else do (Do nothing)
      • -------- Kill Message --------
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • Spree_Count[(Player number of (Owner of (Triggering unit)))] Less than or equal to 2
        • Then - Actions
          • -------- You didn't end a spree. --------
          • Set General_Integer[1] = 5
          • Player - Add General_Integer[1] to (Owner of (Killing unit)) Current gold
          • Game - Display to (All players) the text: (PlayerColors[(Player number of (Owner of (Killing unit)))] + ((Name of (Owner of (Killing unit))) + ((|r just pawned + PlayerColors[(Player number of (Owner of (Dying unit)))]) + ((Name of (Owner of (Dying unit))) + (|r's head for |CFFFFFF01 + ((String(Gene
        • Else - Actions
          • -------- You did end a spree. --------
          • Set General_Integer[1] = (5 + Spree_Count[(Player number of (Owner of (Triggering unit)))])
          • Game - Display to (All players) the text: (PlayerColors[(Player number of (Owner of (Killing unit)))] + ((Name of (Owner of (Killing unit))) + ((|r has just ended + PlayerColors[(Player number of (Owner of (Dying unit)))]) + ((Name of (Owner of (Dying unit))) + ((|r's + SpreeEnd_Texts[Spree_Count[(
      • Set Spree_Count[(Player number of (Owner of (Triggering unit)))] = 0
      • -------- First Blood --------
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • FirstBlood Equal to False
        • Then - Actions
          • Set FirstBlood = True
          • Set General_String[1] = (PlayerColors[(Player number of (Owner of (Killing unit)))] + ((Name of (Owner of (Killing unit))) + (|r + just drew |CFFFF0303first blood!|r (+10 gold))))
          • Custom script: set Message1 = udg_General_String[1]
          • Custom script: set Sound1 = gg_snd_firstblood
        • Else - Actions
      • -------- Spree --------
      • Set General_String[2] = (PlayerColors[(Player number of (Owner of (Killing unit)))] + ((Name of (Owner of (Killing unit))) + Spree_Texts[Spree_Count[(Player number of (Owner of (Killing unit)))]]))
      • Custom script: set Message2 = udg_General_String[2]
      • Custom script: set Sound2 = udg_Spree_Sounds[udg_Spree_Count[GetConvertedPlayerId(GetOwningPlayer(GetKillingUnit()))]]
      • -------- Double/Triple Kill --------
      • Set General_Point[1] = (Center of (Playable map area))
      • Unit - Create 1 Dummy Unit (Double / Triple Kill Counter) for (Owner of (Killing unit)) at General_Point[1] facing Default building facing degrees
      • Unit - Add a 7.00 second Generic expiration timer to (Last created unit)
      • -------- Double Kill --------
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Number of units in (Units owned by (Owner of (Killing unit)) of type Dummy Unit (Double / Triple Kill Counter))) Equal to 2
        • Then - Actions
          • Set General_String[3] = (PlayerColors[(Player number of (Owner of (Killing unit)))] + ((Name of (Owner of (Killing unit))) + (|r + |rjust got a |cff00008BDouble Kill|r!)))
          • Custom script: set Message3 = udg_General_String[3]
          • Custom script: set Sound3 = gg_snd_Double_Kill
        • Else - Actions
      • -------- Triple Kill --------
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Number of units in (Units owned by (Owner of (Killing unit)) of type Dummy Unit (Double / Triple Kill Counter))) Greater than or equal to 3
        • Then - Actions
          • Set General_String[3] = (PlayerColors[(Player number of (Owner of (Killing unit)))] + ((Name of (Owner of (Killing unit))) + (|r + |rjust got a |cff00FF00Triple Kill|r!!!)))
          • Custom script: set Message3 = udg_General_String[3]
          • Custom script: set Sound3 = gg_snd_triple_kill
        • Else - Actions
      • -------- Display Messages & Play Sounds --------
      • Wait 0.50 seconds
      • Custom script: call PlaySoundBJ( Sound1 )
      • Custom script: call PlaySoundBJ( Sound2 )
      • Custom script: if Message1 != "" then
      • Custom script: call DisplayTextToForce( GetPlayersAll(), Message1 )
      • Custom script: endif
      • Custom script: if Message2 != "" then
      • Custom script: call DisplayTextToForce( GetPlayersAll(), Message2 )
      • Custom script: endif
      • Wait 1.50 seconds
      • Custom script: call PlaySoundBJ( Sound3 )
      • Custom script: if Message3 != "" then
      • Custom script: call DisplayTextToForce( GetPlayersAll(), Message3 )
      • Custom script: endif


Problems:
  • After the first blood, a text displaying nothing but the name of the owner of the killing unit shows up. (First Blood works as it should).
  • No spree sounds are played.
  • No spree texts are displayed.

+rep if you can help me fix this :)
 

Attachments

  • DotA Kill System.w3x
    158 KB · Views: 278

TheWarcraft

New Member
Reaction score
4
Problem with sounds:
Trigger:
  • Actions
    • Custom script: call PlaySoundBJ( Sound1 )
    • Custom script: call PlaySoundBJ( Sound2 )

If I disable the second one, I hear the first blood sound.


About the blank line, it's that it shows Message2
About the spree texts(and the double kill): the first blood is interfering.
 

Saiza

New Member
Reaction score
10
First blood text and sound always works. It's spree, double and triple kill that doesn't work.
 

TheWarcraft

New Member
Reaction score
4
If I disable the 4 custom scripts for the first blood at the end of the trigger, the sprees and sounds work.

Conclusion : The Blank line is Message2. Your "First Blood" is interfering with your sprees and doubles.
 

Saiza

New Member
Reaction score
10
Ah, thanks man. Now I just need someone to find away to solve this :) Also, I keep getting a message displaying nothing but my name after each kill before I get a spree. How can I solve this?
 

TheWarcraft

New Member
Reaction score
4
Solution: (edit: this is a solution to your main problem, when i wrote this i didn't see your message =/)
Blank Spot: I added
Trigger:
  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
    • If - Conditions
      • Spree_Count[(Player number of (Owner of (Killing unit)))] Less than or equal to 2
    • Then - Actions
      • Custom script: set Message2 = ""
    • Else - Actions

After
Trigger:
  • Custom script: set Message2 = udg_General_String[2]


Missing Sprees:
Trigger:
  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
    • If - Conditions
      • TempFirstBlood Equal to True
    • Then - Actions
      • Set TempFirstBlood = False
      • Custom script: call PlaySoundBJ( Sound1 )
      • Custom script: if Message1 != "" then
      • Custom script: call DisplayTextToForce( GetPlayersAll(), Message1 )
      • Custom script: endif
    • Else - Actions

And add this to your map init:
Trigger:
  • Set TempFirstBlood = True
 

TheWarcraft

New Member
Reaction score
4
Sorry for ninja'in the thread but... wth is dota?

Dota is the best map ever.. If you play on Garena there is often 200,000 people or more in the Warcraft 3 Rpg, which is mostly Dota. You choose your hero and fight the other team. 95 unique heroes.
 

Saiza

New Member
Reaction score
10
Grags_1977, have you never even been on battlenet? Like 60% of all games are DotA...
 

TheWarcraft

New Member
Reaction score
4
If you<looks around and whispers> got your game "illegally", not saying you did, you can play on Garena instead of bnet. Garena has dota ladder.
Ok no more of this dont want to get off topic.
Edit: Saiza, did it work with what I gave you?
 

Igor_Z

You can change this now in User CP.
Reaction score
61
When u fix it can you upload your system here? I like to use it as well
 

Saiza

New Member
Reaction score
10
TheWarcraft: Everything works now, except for double kill. Triple kill works. Heres the code:

Trigger:
  • Killing System
    • Events
      • Unit - A unit Dies
    • Conditions
      • ((Triggering unit) is A Hero) Equal to True
    • Actions
      • Custom script: local string Message1
      • Custom script: local string Message2
      • Custom script: local sound Sound1
      • Custom script: local sound Sound2
      • If (Spree_Count[(Player number of (Owner of (Killing unit)))] Less than 10) then do (Set Spree_Count[(Player number of (Owner of (Killing unit)))] = (Spree_Count[(Player number of (Owner of (Killing unit)))] + 1)) else do (Do nothing)
      • -------- Kill Message --------
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • Spree_Count[(Player number of (Owner of (Triggering unit)))] Less than or equal to 2
        • Then - Actions
          • -------- You didn&#039;t end a spree. --------
          • Set General_Integer[1] = 5
          • Player - Add General_Integer[1] to (Owner of (Killing unit)) Current gold
          • Game - Display to (All players) the text: (PlayerColors[(Player number of (Owner of (Killing unit)))] + ((Name of (Owner of (Killing unit))) + ((|r just pawned + PlayerColors[(Player number of (Owner of (Dying unit)))]) + ((Name of (Owner of (Dying unit))) + (|r&#039;s head for |CFFFFFF01 + ((String(Gene
        • Else - Actions
          • -------- You did end a spree. --------
          • Set General_Integer[1] = (5 + Spree_Count[(Player number of (Owner of (Triggering unit)))])
          • Game - Display to (All players) the text: (PlayerColors[(Player number of (Owner of (Killing unit)))] + ((Name of (Owner of (Killing unit))) + ((|r has just ended + PlayerColors[(Player number of (Owner of (Dying unit)))]) + ((Name of (Owner of (Dying unit))) + ((|r&#039;s + SpreeEnd_Texts[Spree_Count[(
      • Set Spree_Count[(Player number of (Owner of (Triggering unit)))] = 0
      • -------- First Blood --------
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • FirstBlood Equal to False
        • Then - Actions
          • Set FirstBlood = True
          • Set General_String[1] = (PlayerColors[(Player number of (Owner of (Killing unit)))] + ((Name of (Owner of (Killing unit))) + (|r + just drew |CFFFF0303first blood!|r (+10 gold))))
          • Game - Display to (All players) the text: General_String[1]
          • Sound - Play firstblood &lt;gen&gt;
        • Else - Actions
      • -------- Spree --------
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • Spree_Count[(Player number of (Owner of (Killing unit)))] Greater than 2
        • Then - Actions
          • Set General_String[1] = (PlayerColors[(Player number of (Owner of (Killing unit)))] + ((Name of (Owner of (Killing unit))) + Spree_Texts[Spree_Count[(Player number of (Owner of (Killing unit)))]]))
          • Custom script: set Message1 = udg_General_String[1]
          • Custom script: set Sound1 = udg_Spree_Sounds[udg_Spree_Count[GetConvertedPlayerId(GetOwningPlayer(GetKillingUnit()))]]
        • Else - Actions
          • Custom script: set Message1 = &quot;&quot;
      • -------- Double/Triple Kill --------
      • Set General_Point[1] = (Center of (Playable map area))
      • Unit - Create 1 Dummy Unit (Double / Triple Kill Counter) for (Owner of (Killing unit)) at General_Point[1] facing Default building facing degrees
      • Unit - Add a 7.00 second Generic expiration timer to (Last created unit)
      • -------- Double Kill --------
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Number of units in (Units owned by (Owner of (Killing unit)) of type Dummy Unit (Double / Triple Kill Counter))) Equal to 2
        • Then - Actions
          • Set General_String[2] = (PlayerColors[(Player number of (Owner of (Killing unit)))] + ((Name of (Owner of (Killing unit))) + (|r + |rjust got a |cff00008BDouble Kill|r!)))
          • Custom script: set Message2 = udg_General_String[2]
          • Custom script: set Sound2 = gg_snd_Double_Kill
        • Else - Actions
      • -------- Triple Kill --------
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Number of units in (Units owned by (Owner of (Killing unit)) of type Dummy Unit (Double / Triple Kill Counter))) Greater than or equal to 3
        • Then - Actions
          • Set General_String[2] = (PlayerColors[(Player number of (Owner of (Killing unit)))] + ((Name of (Owner of (Killing unit))) + (|r + |rjust got a |cff00FF00Triple Kill|r!!!)))
          • Custom script: set Message2 = udg_General_String[2]
          • Custom script: set Sound2 = gg_snd_triple_kill
        • Else - Actions
      • -------- Display Messages &amp; Play Sounds --------
      • Wait 0.50 seconds
      • Custom script: call PlaySoundBJ( Sound1 )
      • Custom script: if Message1 != &quot;&quot; then
      • Custom script: call DisplayTextToForce( GetPlayersAll(), Message1 )
      • Custom script: endif
      • Wait 1.50 seconds
      • Custom script: call PlaySoundBJ( Sound2 )
      • Custom script: if Message2 != &quot;&quot; then
      • Custom script: call DisplayTextToForce( GetPlayersAll(), Message2 )
      • Custom script: endif


Igor: I will upload this here together with a GUI assist system I made =)
 

Grags_1977

Ultra Cool Member
Reaction score
32
Cheers for the replys guys, and just for the record my copy of roc and tft are perfectly legit :) i've just never bothered to play them. I only wanted the map editor :)
 

TheWarcraft

New Member
Reaction score
4
Solution: (edit: this is a solution to your main problem, when i wrote this i didn't see your message =/)
Blank Spot: I added
Trigger:
  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
    • If - Conditions
      • Spree_Count[(Player number of (Owner of (Killing unit)))] Less than or equal to 2
    • Then - Actions
      • Custom script: set Message2 = &quot;&quot;
    • Else - Actions

After
Trigger:
  • Custom script: set Message2 = udg_General_String[2]


Missing Sprees:
Trigger:
  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
    • If - Conditions
      • TempFirstBlood Equal to True
    • Then - Actions
      • Set TempFirstBlood = False
      • Custom script: call PlaySoundBJ( Sound1 )
      • Custom script: if Message1 != &quot;&quot; then
      • Custom script: call DisplayTextToForce( GetPlayersAll(), Message1 )
      • Custom script: endif
    • Else - Actions

And add this to your map init:
Trigger:
  • Set TempFirstBlood = True
Did you see this???? This works with double kill!!!
These changes are for your first version
 

Saiza

New Member
Reaction score
10
I almost did exactly that, but in a smarter way. For example, there is no reason to check if FirstBlood = true and make a trigger to make it true when I can just check if it's false. Also, there is no need to call the first blood message with a custom scripts when I can do it the old way.
 

TheWarcraft

New Member
Reaction score
4
Well you said your double kill doesn't work so I thought you might want to mkae it work with this.
 
General chit-chat
Help Users
  • No one is chatting at the moment.
  • Varine Varine:
    So, 2.5mm longer. But the thing that measures the bed is about 1.5mm above the nozzle, so if I swap it with a volcano then I'm 1mm behind it. So cool, new bracket to swap that, but THEN the fan shroud to direct air at the part is ALSO going to be .5mm to low, and so I need to redo that, but by doing that it is a little bit off where it should be blowing and it's throwing it at the heating block instead of the part, and fuck man
  • Varine Varine:
    I didn't realize they designed this entire thing to NOT be modded. I would have just got a fucking Bambu if I knew that, the whole point was I could fuck with this. And no one else makes shit for Sovol so I have to go through them, and they have... interesting pricing models. So I have a new extruder altogether that I'm taking apart and going to just design a whole new one to use my nozzles. Dumb design.
  • Varine Varine:
    Can't just buy a new heatblock, you need to get a whole hotend - so block, heater cartridge, thermistor, heatbreak, and nozzle. And they put this fucking paste in there so I can't take the thermistor or cartridge out with any ease, that's 30 dollars. Or you can get the whole extrudor with the direct driver AND that heatblock for like 50, but you still can't get any of it to come apart
  • Varine Varine:
    Partsbuilt has individual parts I found but they're expensive. I think I can get bits swapped around and make this work with generic shit though
  • Ghan Ghan:
    Heard Houston got hit pretty bad by storms last night. Hope all is well with TH.
  • The Helper The Helper:
    Power back on finally - all is good here no damage
    +2
  • V-SNES V-SNES:
    Happy Friday!
    +1
  • The Helper The Helper:
    New recipe is another summer dessert Berry and Peach Cheesecake - https://www.thehelper.net/threads/recipe-berry-and-peach-cheesecake.194169/
  • The Helper The Helper:
    I think we need to add something to the bottom of the front page that shows the Headline News forum that has a link to go to the News Forum Index so people can see there is more news. Do you guys see what I am saying, lets say you read all the articles on the front page and you get to the end and it just ends, no kind of link for MOAR!
  • The Helper The Helper:
    Happy Wednesday!
    +1
  • V-SNES V-SNES:
    Happy Friday!
    +1
  • The Helper The Helper:
    Sticking with the desserts for now the latest recipe is Fried Apple Pies - https://www.thehelper.net/threads/recipe-fried-apple-pies.194297/
  • The Helper The Helper:
    Finally finding about some of the bots that are flooding the users online - bytespider apparently is a huge offender here - ignores robots.txt and comes in from a ton of different IPs
  • Monovertex Monovertex:
    @The Helper I'm really not seeing the "Signature" link in the sidebar on that page. Here's a screenshot:
  • The Helper The Helper:
    I have reported it - I was wondering why nobody I have given sigs to over the last few years have used them
  • The Helper The Helper:
    Ghan has said he has fixed this. Monovertex please confirm this fix. This was only a problem with people that had signatures in the upper levels like not the special members but the respected members.
  • The Helper The Helper:
    Here is a better place to manage this stuff https://www.thehelper.net/account/account-details which I think should be way more visible
  • The Helper The Helper:
    I am hoping that online user count drop is finally that TikTok bot banned
  • Ghan Ghan:
    I added the filter last night.
  • The Helper The Helper:
    They are still there

      The Helper Discord

      Members online

      No members online now.

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top