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

Help - Multiboard scores and winning condition.

Status
Not open for further replies.
Hello guys! I'm currently making a simple hero arena map but I'm stuck at creating multiboard (actually I don't know how) which tally the kills and deaths of a hero. And also in doing winning condition if the player reached the chosen scores. For example he choose 25 points, then after doing that his team will be the victor. I don't know how to do it, can someone help me?
 
Here a Tutorial for Multiboards: Multiboards.
Or Import this System it looks quite fine: Advanced AoS Multiboard v1.02 [GUI]
Needs some Setuping.

Edit: To the Win Trigger:

Create a Dialog with 3 Options.
  • Init
    • Ereignisse
      • Time - Elapsed game time is 0.00 seconds
    • Bedingungen
    • Aktionen
      • Dialog - Create a dialog button for Dialog_Setup_Dialag labelled 100
      • Set Dialog_Setup_Buttons[0] = (Last created dialog Button)
      • Dialog - Create a dialog button for Dialog_Setup_Dialag labelled 50
      • Set Dialog_Setup_Buttons[1] = (Last created dialog Button)
      • Dialog - Create a dialog button for Dialog_Setup_Dialag labelled 25
      • Set Dialog_Setup_Buttons[2] = (Last created dialog Button)
      • Dialog - Show Dialog_Setup_Dialag for Player 1 (Re)
Red choose the Victory condition
  • Pick Dialog
    • Ereignisse
      • Dialog - A dialog button is clicked for Dialog_Setup_Dialag
    • Bedingungen
    • Aktionen
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Clicked dialog button) Equal Dialog_Setup_Buttons[0]
        • Then - Actions
          • Set Victory_Condition = 100
        • Else - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Clicked dialog button) Equal Dialog_Setup_Buttons[1]
            • Then - Actions
              • Set Victory_Condition = 50
            • Else - Actions
              • Set Victory_Condition = 25
Count up and Check for Win
  • Kill and Win
    • Ereignisse
      • Unit - A unit Dies
    • Conditions
      • ((Triggering unit) is a Hero) Equal True
      • ((Triggering unit) belongs to an enemy of (Owner of (Killing unit))) Equal True
    • Aktionen
      • Set Hero_Kills[(Player number of (Owner of (Killing unit)))] = (Hero_Kills[(Player number of (Owner of (Killing unit)))] + 1)
      • Set Team_Kills = 0
      • Set Force = (All allies of (Owner of (Killing unit)))
      • Spielergruppe - Pick every player in Force and do (Actions)
        • Schleifen - Aktionen
          • Set Team_Kills = (Team_Kills + Hero_Kills[(Player number of (Picked player))])
      • Custom script: call DestroyForce(udg_Force)
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • Team_Kills Greater Equal Victory_Condition
        • Then - Actions
          • Spielergruppe - Pick every player in (All allies of (Owner of (Killing unit))) and do (Actions)
            • Schleifen - Aktionen
              • Spiel - Victory (Picked player) (Zeigen dialogs, Zeigen scores)
          • Spielergruppe - Pick every player in (All enemies of (Owner of (Killing unit))) and do (Actions)
            • Schleifen - Aktionen
              • Spiel - Defeat (Picked player) with the message: Defeat!
        • Else - Actions
 
Last edited:
Importing is done following.
Make sure That the Option "Create unknown variables" is set. "World Editor Main Frame - File - Preferences - General".

You open your Map with World Editor.
Then inside World Editor you open the AoS Multiboard System with " File - Open Map".
Now World Editor has loaded Both Maps.
You can switch between them in the Menubar under Menu "Window - its last entries"
You switch to Trigger Editor.
Copy the "Advanced Multiboard Folder" in wacraft 3 called category.

Switch to your Map and paste it into your Triggers.
Now this system need to be started how is shown in "TEST"-Folder.
 
It should work, guess Red is no User in the insert map.
A impoved Version in which you don't need Red player to be a user.
additional it's now easier to define the Victory Conditions.
For the Test map Lumber is set to the amount of Team kills, Remove/Change it if not wanted.


  • Kill and Win Create Dialog
    • Ereignisse
      • Zeit - Elapsed game time is 0.00 seconds
    • Bedingungen
    • Aktionen
      • -------- Define Avaible Win Conditions; upto KaW_AvaibleOptions[6] --------
      • Set KaW_AvaibleOptions[0] = 100
      • Set KaW_AvaibleOptions[1] = 50
      • Set KaW_AvaibleOptions[2] = 25
      • Set KaW_AvaibleOptions[6] = 1
      • -------- Create Dialog: Choose Title --------
      • Dialog - Change the title of KaW_Dialog_Setup_Dialog to Kills to Win =
      • -------- Don't Change Below, only on own Risk --------
      • -------- Add Usefull Buttons --------
      • For each (Integer A) from 0 to 6, do (Actions)
        • Schleifen - Aktionen
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • KaW_AvaibleOptions[(Integer A)] Greater as 0
            • Then - Actions
              • Dialog - Create a dialog button for KaW_Dialog_Setup_Dialog labelled (String(KaW_AvaibleOptions[(Integer A)]))
              • Set KaW_Dialog_Setup_Buttons[(Integer A)] = (Last created dialog Button)
            • Else - Actions
      • -------- Show Dialog to first playing User --------
      • For each (Integer A) from 1 to 12, do (Actions)
        • Schleifen - Aktionen
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • ((Player((Integer A))) controller) is User
              • ((Player((Integer A))) slot status) is Playing
            • Then - Actions
              • Dialog - Zeigen KaW_Dialog_Setup_Dialog for (Player((Integer A)))
              • Skip remaining actions
            • Else - Actions
  • Kill and Wind Pick Option
    • Ereignisse
      • Dialog - A dialog button is clicked for KaW_Dialog_Setup_Dialog
    • Bedingungen
    • Aktionen
      • For each (Integer A) from 0 to 6, do (Actions)
        • Schleifen - Aktionen
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Clicked dialog button) is KaW_Dialog_Setup_Buttons[(Integer A)]
            • Then - Actions
              • Set KaW_Victory_Condition = KaW_AvaibleOptions[(Integer A)]
              • Skip remaining actions
            • Else - Actions
  • Kill and Win
    • Ereignisse
      • Einheit - A unit Stirbt
    • Bedingungen
      • ((Triggering unit) is Ein Hero)
      • ((Killing unit) belongs to an enemy of (Owner of (Triggering unit)))
    • Aktionen
      • Set KaW_Hero_Kills[(Player number of (Owner of (Killing unit)))] = (KaW_Hero_Kills[(Player number of (Owner of (Killing unit)))] + 1)
      • Set KaW_Team_Kills = 0
      • Set Force = (All allies of (Owner of (Killing unit)))
      • Spielergruppe - Pick every player in Force and do (Actions)
        • Schleifen - Aktionen
          • Set KaW_Team_Kills = (KaW_Team_Kills + KaW_Hero_Kills[(Player number of (Picked player))])
      • -------- Shows Kills as lumber- Remove if not wanted --------
      • Spielergruppe - Pick every player in Force and do (Actions)
        • Schleifen - Aktionen
          • Spieler - Set (Picked player) Aktuelles Holz to KaW_Team_Kills
      • -------- ---- --------
      • Custom script: call DestroyForce(udg_Force)
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • KaW_Team_Kills Greater Equal KaW_Victory_Condition
        • Then - Actions
          • -------- Prevent Further Executions --------
          • Trigger - Turn off (This trigger)
          • Spielergruppe - Pick every player in (All enemies of (Owner of (Killing unit))) and do (Actions)
            • Schleifen - Aktionen
              • Spiel - Defeat (Picked player) with the message: Niederlage!
          • Spielergruppe - Pick every player in (All allies of (Owner of (Killing unit))) and do (Actions)
            • Schleifen - Aktionen
              • Spiel - Victory (Picked player) (Zeigen dialogs, Zeigen scores)
        • Else - Actions

In this Test map Red will always win, cause his hero's are LVL 10.
 

Attachments

  • Kill and Win.w3x
    29.3 KB · Views: 29
Last edited:
Status
Not open for further replies.
Top