• Listen to a special audio message from Bill Roper to the Hive Workshop community (Bill is a former Vice President of Blizzard Entertainment, Producer, Designer, Musician, Voice Actor) 🔗Click here to hear his message!
  • Read Evilhog's interview with Gregory Alper, the original composer of the music for WarCraft: Orcs & Humans 🔗Click here to read the full interview.

[Trigger] Need Someone Very Experienced in Multiboard / Leaderboard

Status
Not open for further replies.
Level 4
Joined
Aug 9, 2012
Messages
84
Below is a link to two Screenshots of what I want my TEAMS 5 v 5 Multiboard and Leaderboard to look like and how I want both to work:

http://www.hiveworkshop.com/forums/pastebin.php?id=j7ues2

The above two Screenshot are somewhat Photo-shopped to show how I want my TEAMS 5 V 5 Multiboard and FFA Leaderboard to work and look like.

Here is the actual Map File: http://www.hiveworkshop.com/forums/pastebin.php?id=xsasqb

Yes, I do have and work in the NewGen Editor in case you work in it too.

NOTE: My knowledge in JASS / Triggers is quite limited and poor vs. a more experienced person's standards. With that said, I am looking for a debugger or someone who can code all of this better.

IN-DEPTH DETAIL ON THE PROBLEM(S):

Here is a YouTube video to look at on what's going on: http://www.youtube.com/watch?v=weq36JzOwvA&feature=youtu.be

FIRST and foremost, I am consulting the Hive community today (preferably the best person I can get for this task who will be credited) because I originally had a friend of mine, Bond009 (Maker of Custom Hero Footies) do what I needed done. However, I have not been able to contact him in many months for him to fix the issues he created I am about to explain. I cannot fix them myself.

Both my Multiboard and Leaderboard are in 98% working condition, except in that they don't add points one at a time from ZERO to the amount voted on to win come the time my REMATCH system kicks in, for player RED only. However, regardless if in 100% working condition or not, I've been told by quite a few people everything needs to be re-written/re-coded again.

What I mean by this is BOTH boards will run smoothly the first time, but when RED chooses the option to REMATCH --- restart the game without having to re-host --- the FIRST time you go out and kill someone it takes the Deaths voted to win from the LAST game, and adds it to the newly made Multiboard or Leaderboard, depending on if everyone votes for TEAMS 5 v 5 or FFA.

I am looking for someone who can re-create this system better than my friend made it. Included in the system I need working is the Voting system, Leaving Players and Observe Mode if someone is to help re-write/re-code these triggers. Those three things just mentioned can be found in the Multiboards subfolder in the Trigger Editor. The other stuff is in the Game Mode Voting subfolder and REMATCH subfolder.

In this video demonstrates my Observe Mode I need working with my TEAMS 5 v 5 Multiboard and FFA Leaderboard: http://www.youtube.com/watch?v=PbZgiBMzcBU

QUICK BREAKDOWN:

1. I need a new, better performing/working 5 v 5 TEAMS Multiboard displaying the Death count of the West and East teams, from left to right in that specific order as shown in the Screenshot.

2. Along with the 5 v 5 TEAMS Multiboard I need a new, better performing/working Vote System for a choice of 60, 80, 100 and 120 Kills to win.

3. Within the Title of the 5 v 5 TEAMS Multiboard, I need it to where the Death count of the West Team (Red) and East Team (Blue) are shown. The reason for this is so people don't have to always rely on the Multiboard being open all the time. Instead, they can always have it downsized unless they choose to have it open.

4. I need a new, better performing/working FFA Leaderboard displaying the Kills, Deaths and Levels of each player in that specific order.

5. I need the triggers 'Leaving Players' and 'Observer Mode' to work with both boards in any re-coding that's done, granted someone will help me with this.

6. I need 1 to 5 working properly without issues or leaks of any kind if possible.

-----------------------------------------

Here are the triggers to take a look at. These triggers are mainly for the TEAMS 5 v 5 Multiboard:

Everything from here, down, needs to be included within any re-coding that's done, granted someone can help me on this.

  • Vote Setup for 5v5
    • Events
      • Map initialization
    • Conditions
    • Actions
      • Set Dialog_5v5_Strings[1] = |cff82e77660 |cffffcc00Points to Win|r
      • Set Dialog_5v5_Strings[2] = |cff82e77680 |cffffcc00Points to Win|r
      • Set Dialog_5v5_Strings[3] = |cff82e776100 |cffffcc00Points to Win|r
      • Set Dialog_5v5_Strings[4] = |cff82e776120 |cffffcc00Points to Win|r
      • Set Dialog_5v5_Strings[5] = |cff82e776140 |cffffcc00Points to Win|r
      • -------- Votes to Win --------
      • Set Vote_Count[1] = 60
      • Set Vote_Count[2] = 80
      • Set Vote_Count[3] = 100
      • Set Vote_Count[4] = 120
      • Set Vote_Count[5] = 140
  • Show Vote
    • Events
      • Time - Elapsed game time is 1.00 seconds
    • Conditions
    • Actions
      • Trigger - Turn off Victory Update <gen>
      • Trigger - Turn off Victory Update 5 v 5 <gen>
      • Trigger - Turn off Level Update <gen>
      • Trigger - Turn off Observing Players <gen>
      • Multiboard - Destroy Multiboard_FFA
      • Multiboard - Destroy Multiboard_5v5
      • Set Temp_Integer = (Number of players in Force1)
      • Set Temp_Integer2 = (Number of players in Force2)
      • Game - Display to (All players) for 12.00 seconds the text: |cffCCCCFFObserve M...
      • Game - Display to (All players) for 12.00 seconds the text:
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • Temp_Integer Not equal to Temp_Integer2
        • Then - Actions
          • Sound - Play Warning <gen>
          • Game - Display to (All players) for 12.00 seconds the text: |cff3C7AFFTEAMS|r a...
          • Game - Display to (All players) for 12.00 seconds the text:
        • Else - Actions
      • Wait 8.00 seconds
      • Dialog - Clear Dialog_FFAor5v5
      • Dialog - Change the title of Dialog_FFAor5v5 to Game Mode: |cff3C7A...
      • Dialog - Create a dialog button for Dialog_FFAor5v5 labelled |cff3C7AFFTEAMS|r -...
      • Set Dialog_All_Buttons[1] = (Last created dialog Button)
      • Dialog - Create a dialog button for Dialog_FFAor5v5 labelled |cffCC0000FFA|r
      • Set Dialog_All_Buttons[2] = (Last created dialog Button)
      • Set Vote_Count[6] = 0
      • Set Vote_Count[7] = 0
      • Set Temp_PlayerGroup = (All players matching ((((Matching player) controller) Equal to User) and (((Matching player) slot status) Equal to Is playing)))
      • Player Group - Pick every player in Temp_PlayerGroup and do (Actions)
        • Loop - Actions
          • Dialog - Show Dialog_FFAor5v5 for (Picked player)
      • Custom script: call DestroyForce(udg_Temp_PlayerGroup)
      • Game - Display to (All players) for 15.00 seconds the text: |cffCCCCFFVote Tall...
      • Game - Display to (All players) for 15.00 seconds the text:
      • Wait 18.00 seconds
      • Trigger - Run Take Vote Tally <gen> (checking conditions)
  • Vote 5v5
    • Events
      • Dialog - A dialog button is clicked for Dialog_FFAor5v5
    • Conditions
      • (Clicked dialog button) Equal to Dialog_All_Buttons[1]
    • Actions
      • Dialog - Hide (Clicked dialog) for (Triggering player)
      • Game - Display to (All players) for 12.00 seconds the text: (Color[(Player number of (Triggering player))] + ((Name of (Triggering player)) + |cffCCCCFFvoted |cff3C7AFFTEAMS|r - |cffff00005|r vs |cff3C7AFF5|r))
      • Game - Display to (All players) for 12.00 seconds the text:
  • Take Vote Tally
    • Events
    • Conditions
    • Actions
      • For each (Integer A) from 1 to 12, do (Actions)
        • Loop - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • ((Player((Integer A))) controller) Equal to User
              • ((Player((Integer A))) slot status) Equal to Is playing
            • Then - Actions
              • Set Vote_Count[2] = (Vote_Count[2] + 1)
            • Else - Actions
      • Wait 0.00 seconds
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • Or - Any (Conditions) are true
            • Conditions
              • Vote_Count[6] Equal to 1
              • Vote_Count[6] Equal to 3
              • Vote_Count[6] Equal to 5
              • Vote_Count[6] Equal to 7
              • Vote_Count[6] Equal to 9
              • Vote_Count[6] Equal to 11
        • Then - Actions
          • Set Vote_Count[2] = (Vote_Count[2] + 1)
        • Else - Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • Vote_Count[6] Greater than or equal to (Vote_Count[6] / 2)
        • Then - Actions
          • Game - Display to (All players) for 12.00 seconds the text: |cffCCCCFFMajority ...
          • Game - Display to (All players) for 12.00 seconds the text:
          • For each (Integer A) from 1 to 10, do (For each (Integer B) from 1 to 10, do (If ((Integer A) Not equal to (Integer B)) then do (Player - Make (Player((Integer A))) treat (Player((Integer B))) as an Enemy) else do (Do nothing)))
          • Set GameMode_5v5 = False
          • Trigger - Turn on Victory Update <gen>
          • Trigger - Turn on Level Update <gen>
          • Trigger - Turn on Observing Players <gen>
          • Trigger - Run Create Multiboard <gen> (checking conditions)
        • Else - Actions
          • Game - Display to (All players) for 12.00 seconds the text: |cffCCCCFFMajority ...
          • Game - Display to (All players) for 12.00 seconds the text:
          • For each (Integer A) from 1 to 5, do (For each (Integer B) from 1 to 5, do (If ((Integer A) Not equal to (Integer B)) then do (Player - Make (Player((Integer A))) treat (Player((Integer B))) as an Ally with shared vision) else do (Do nothing)))
          • For each (Integer A) from 6 to 10, do (For each (Integer B) from 6 to 10, do (If ((Integer A) Not equal to (Integer B)) then do (Player - Make (Player((Integer A))) treat (Player((Integer B))) as an Ally with shared vision) else do (Do nothing)))
          • Set GameMode_5v5 = True
          • Trigger - Turn on Victory Update 5 v 5 <gen>
          • Trigger - Run Show Win Points <gen> (checking conditions)
      • Set Vote_Count[1] = 0
      • Set Vote_Count[2] = 0
  • Show Win Points
    • Events
    • Conditions
    • Actions
      • Set Vote_Count[1] = 0
      • Set Vote_Count[2] = 0
      • Trigger - Turn on Points to Win Buttons <gen>
      • Dialog - Clear Dialog_FFAor5v5
      • Dialog - Change the title of Dialog_FFAor5v5 to How Many Points to ...
      • For each (Integer A) from 1 to 5, do (Actions)
        • Loop - Actions
          • Dialog - Create a dialog button for Dialog_FFAor5v5 labelled Dialog_5v5_Strings[(Integer A)]
          • Set Dialog_WinPoints_Buttons[(Integer A)] = (Last created dialog Button)
      • Set Temp_PlayerGroup = (All players matching ((((Matching player) controller) Equal to User) and (((Matching player) slot status) Equal to Is playing)))
      • Player Group - Pick every player in Temp_PlayerGroup and do (Actions)
        • Loop - Actions
          • Dialog - Show Dialog_FFAor5v5 for (Picked player)
      • Custom script: call DestroyForce(udg_Temp_PlayerGroup)
      • Game - Display to (All players) for 15.00 seconds the text: |cffCCCCFFVote Tall...
      • Game - Display to (All players) for 15.00 seconds the text:
      • Wait 18.00 seconds
      • Trigger - Run Take Vote Tally 2 <gen> (checking conditions)
  • Points to Win Buttons
    • Events
      • Dialog - A dialog button is clicked for Dialog_FFAor5v5
    • Conditions
    • Actions
      • Dialog - Hide (Clicked dialog) for (Triggering player)
      • For each (Integer A) from 1 to 5, do (Actions)
        • Loop - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Clicked dialog button) Equal to Dialog_WinPoints_Buttons[(Integer A)]
            • Then - Actions
              • Game - Display to (All players) for 12.00 seconds the text: (Color[(Player number of (Triggering player))] + ((Name of (Triggering player)) + ( |cffCCCCFFvoted + (Dialog_5v5_Strings[(Integer A)] + .))))
              • Game - Display to (All players) for 12.00 seconds the text:
              • Set Vote_Count[(Integer A)] = (Vote_Count[(Integer A)] + 1)
              • Set CheckInteger = (Integer A)
            • Else - Actions
      • Set Win_Points_Cap2 = Vote_Count[CheckInteger]
  • Take Vote Tally 2
    • Events
    • Conditions
    • Actions
      • Set Win_Points_Cap = 0
      • For each (Integer A) from 1 to 5, do (Actions)
        • Loop - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • Vote_Count[(Integer A)] Greater than Win_Points_Cap
            • Then - Actions
              • Set Win_Points_Cap = Vote_Count[(Integer A)]
              • Set Temp_Integer = (Integer A)
            • Else - Actions
      • Set Win_Points_Cap = Vote_Count[(Temp_Integer + 5)]
      • Game - Display to (All players) for 20.00 seconds the text: (|cffCCCCFFMajority Voted|r |cff82e776 + ((String(Win_Points_Cap)) + |r |cffffcc00Points to Win.|r))
      • Game - Display to (All players) for 20.00 seconds the text:
      • Game - Display to (All players) for 20.00 seconds the text: |cffCCCCFFObserve M...
      • Game - Display to (All players) for 20.00 seconds the text:
      • Trigger - Run Create Multiboard 5 v 5 <gen> (checking conditions)
      • Trigger - Turn on Observing Players <gen>
These triggers are mainly for the FFA Leaderboard:

  • Create Multiboard
    • Events
    • Conditions
    • Actions
      • Multiboard - Create a multiboard with 4 columns and (1 + Player_Count) rows, titled |cffff0000FFA |cfff...
      • Set Multiboard_FFA = (Last created multiboard)
      • Multiboard - Set the text for (Last created multiboard) item in column 1, row 1 to |cffffdeadPlayers|r
      • Multiboard - Set the text for (Last created multiboard) item in column 2, row 1 to |cff82e776Kills|r
      • Multiboard - Set the text for (Last created multiboard) item in column 3, row 1 to |cffff7d46Deaths|r
      • Multiboard - Set the text for (Last created multiboard) item in column 4, row 1 to |c00FFFC01Level|r
      • Multiboard - Set the icon for (Last created multiboard) item in column 2, row 1 to ReplaceableTextures\CommandButtons\BTNCrossbones.blp
      • Multiboard - Set the icon for (Last created multiboard) item in column 2, row 2 to ReplaceableTextures\CommandButtons\BTNCrossbones.blp
      • Multiboard - Set the icon for (Last created multiboard) item in column 2, row 3 to ReplaceableTextures\CommandButtons\BTNCrossbones.blp
      • Multiboard - Set the icon for (Last created multiboard) item in column 2, row 4 to ReplaceableTextures\CommandButtons\BTNCrossbones.blp
      • Multiboard - Set the icon for (Last created multiboard) item in column 2, row 5 to ReplaceableTextures\CommandButtons\BTNCrossbones.blp
      • Multiboard - Set the icon for (Last created multiboard) item in column 2, row 6 to ReplaceableTextures\CommandButtons\BTNCrossbones.blp
      • Multiboard - Set the icon for (Last created multiboard) item in column 2, row 7 to ReplaceableTextures\CommandButtons\BTNCrossbones.blp
      • Multiboard - Set the icon for (Last created multiboard) item in column 2, row 8 to ReplaceableTextures\CommandButtons\BTNCrossbones.blp
      • Multiboard - Set the icon for (Last created multiboard) item in column 2, row 9 to ReplaceableTextures\CommandButtons\BTNCrossbones.blp
      • Multiboard - Set the icon for (Last created multiboard) item in column 2, row 10 to ReplaceableTextures\CommandButtons\BTNCrossbones.blp
      • Multiboard - Set the icon for (Last created multiboard) item in column 3, row 1 to ReplaceableTextures\CommandButtons\PASBTNDeath.blp
      • Multiboard - Set the icon for (Last created multiboard) item in column 3, row 2 to ReplaceableTextures\CommandButtons\PASBTNDeath.blp
      • Multiboard - Set the icon for (Last created multiboard) item in column 3, row 3 to ReplaceableTextures\CommandButtons\PASBTNDeath.blp
      • Multiboard - Set the icon for (Last created multiboard) item in column 3, row 4 to ReplaceableTextures\CommandButtons\PASBTNDeath.blp
      • Multiboard - Set the icon for (Last created multiboard) item in column 3, row 5 to ReplaceableTextures\CommandButtons\PASBTNDeath.blp
      • Multiboard - Set the icon for (Last created multiboard) item in column 3, row 6 to ReplaceableTextures\CommandButtons\PASBTNDeath.blp
      • Multiboard - Set the icon for (Last created multiboard) item in column 3, row 7 to ReplaceableTextures\CommandButtons\PASBTNDeath.blp
      • Multiboard - Set the icon for (Last created multiboard) item in column 3, row 8 to ReplaceableTextures\CommandButtons\PASBTNDeath.blp
      • Multiboard - Set the icon for (Last created multiboard) item in column 3, row 9 to ReplaceableTextures\CommandButtons\PASBTNDeath.blp
      • Multiboard - Set the icon for (Last created multiboard) item in column 3, row 10 to ReplaceableTextures\CommandButtons\PASBTNDeath.blp
      • Multiboard - Set the icon for (Last created multiboard) item in column 4, row 1 to ReplaceableTextures\PassiveButtons\PASBTNStatUp.blp
      • Multiboard - Set the icon for (Last created multiboard) item in column 4, row 2 to ReplaceableTextures\PassiveButtons\PASBTNStatUp.blp
      • Multiboard - Set the icon for (Last created multiboard) item in column 4, row 3 to ReplaceableTextures\PassiveButtons\PASBTNStatUp.blp
      • Multiboard - Set the icon for (Last created multiboard) item in column 4, row 4 to ReplaceableTextures\PassiveButtons\PASBTNStatUp.blp
      • Multiboard - Set the icon for (Last created multiboard) item in column 4, row 5 to ReplaceableTextures\PassiveButtons\PASBTNStatUp.blp
      • Multiboard - Set the icon for (Last created multiboard) item in column 4, row 6 to ReplaceableTextures\PassiveButtons\PASBTNStatUp.blp
      • Multiboard - Set the icon for (Last created multiboard) item in column 4, row 7 to ReplaceableTextures\PassiveButtons\PASBTNStatUp.blp
      • Multiboard - Set the icon for (Last created multiboard) item in column 4, row 8 to ReplaceableTextures\PassiveButtons\PASBTNStatUp.blp
      • Multiboard - Set the icon for (Last created multiboard) item in column 4, row 9 to ReplaceableTextures\PassiveButtons\PASBTNStatUp.blp
      • Multiboard - Set the icon for (Last created multiboard) item in column 4, row 10 to ReplaceableTextures\PassiveButtons\PASBTNStatUp.blp
      • For each (Integer A) from 1 to (1 + Player_Count), do (Actions)
        • Loop - Actions
          • Multiboard - Set the display style for (Last created multiboard) item in column 1, row 1 to Show text and Hide icons
          • Multiboard - Set the display style for (Last created multiboard) item in column 1, row (Integer A) to Show text and Hide icons
          • Multiboard - Set the display style for (Last created multiboard) item in column 2, row (Integer A) to Show text and Show icons
          • Multiboard - Set the display style for (Last created multiboard) item in column 3, row (Integer A) to Show text and Show icons
          • Multiboard - Set the display style for (Last created multiboard) item in column 4, row (Integer A) to Show text and Show icons
          • Multiboard - Set the width for (Last created multiboard) item in column 1, row (Integer A) to 9.50% of the total screen width
          • Multiboard - Set the width for (Last created multiboard) item in column 2, row (Integer A) to 4.50% of the total screen width
          • Multiboard - Set the width for (Last created multiboard) item in column 3, row (Integer A) to 6.00% of the total screen width
          • Multiboard - Set the width for (Last created multiboard) item in column 4, row (Integer A) to 5.00% of the total screen width
      • Set List = 2
      • For each (Integer A) from 1 to 10, do (Actions)
        • Loop - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • ((Player((Integer A))) controller) Equal to User
              • ((Player((Integer A))) slot status) Equal to Is playing
            • Then - Actions
              • Set Multiboard_Spots[(Integer A)] = List
              • Multiboard - Set the text for (Last created multiboard) item in column 1, row List to (Color[(Player number of (Player((Integer A))))] + ((Name of (Player((Integer A)))) + |r))
              • Multiboard - Set the text for (Last created multiboard) item in column 2, row List to (Color[(Player number of (Player((Integer A))))] + 0|r)
              • Multiboard - Set the text for (Last created multiboard) item in column 3, row List to (Color[(Player number of (Player((Integer A))))] + 0|r)
              • Multiboard - Set the text for (Last created multiboard) item in column 4, row List to (Color[(Player number of (Player((Integer A))))] + 1|r)
              • Set List = (List + 1)
            • Else - Actions
      • Multiboard - Show (Last created multiboard)
      • Set Temp_Integer = 2
      • Set Temp_Integer2 = 2
      • Player Group - Pick every player in (All players matching ((((Matching player) slot status) Equal to Is playing) and (((Matching player) controller) Equal to User))) and do (Actions)
        • Loop - Actions
          • Set Leaver[Temp_Integer] = (Picked player)
          • Set Temp_Integer = (Temp_Integer + 1)
          • Set Observe[Temp_Integer2] = (Picked player)
          • Set Temp_Integer2 = (Temp_Integer2 + 1)
  • Level Update
    • Events
      • Unit - A unit Gains a level
    • Conditions
      • ((Owner of (Leveling Hero)) controller) Equal to User
    • Actions
      • Set Player_Levels[(Player number of (Owner of (Leveling Hero)))] = (Level of (Leveling Hero))
      • Multiboard - Set the text for Multiboard_FFA item in column 4, row Multiboard_Spots[(Player number of (Owner of (Leveling Hero)))] to (Color[(Player number of (Owner of (Leveling Hero)))] + ((String(Player_Levels[(Player number of (Owner of (Leveling Hero)))])) + |r))
  • Victory Update
    • Events
      • Unit - A unit Dies
    • Conditions
      • (((Owner of (Triggering unit)) controller) Equal to User) and (((Triggering unit) is A Hero) Equal to True)
    • Actions
      • Set Player_Kills[(Player number of (Owner of (Killing unit)))] = (Player_Kills[(Player number of (Owner of (Killing unit)))] + 1)
      • Set Player_Deaths[(Player number of (Owner of (Dying unit)))] = (Player_Deaths[(Player number of (Owner of (Dying unit)))] + 1)
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • ((Owner of (Killing unit)) controller) Equal to User
        • Then - Actions
          • Multiboard - Set the text for Multiboard_FFA item in column 2, row Multiboard_Spots[(Player number of (Owner of (Killing unit)))] to (Color[(Player number of (Owner of (Killing unit)))] + ((String(Player_Kills[(Player number of (Owner of (Killing unit)))])) + |r))
        • Else - Actions
      • Multiboard - Set the text for Multiboard_FFA item in column 3, row Multiboard_Spots[(Player number of (Owner of (Triggering unit)))] to (Color[(Player number of (Owner of (Triggering unit)))] + ((String(Player_Deaths[(Player number of (Owner of (Triggering unit)))])) + |r))
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • Player_Kills[(Player number of (Owner of (Killing unit)))] Greater than or equal to 32
        • Then - Actions
          • Trigger - Turn off Coin Earned <gen>
          • Set Temp_UnitGroup = (Units of type Explosive Mine)
          • Unit Group - Pick every unit in Temp_UnitGroup and do (Actions)
            • Loop - Actions
              • Unit - Remove (Picked unit) from the game
          • Custom script: call DestroyGroup(udg_Temp_UnitGroup)
          • Player Group - Pick every player in (All players) and do (Actions)
            • Loop - Actions
              • Player - Set (Picked player) Current gold to 100
              • Player - Set (Picked player) Current lumber to 1
          • Game - Display to (All players) the text: ((Color[(Player number of (Owner of (Killing unit)))] + (Name of (Owner of (Killing unit)))) + |r has won the game! |cffff0000RED|r can now choose to |cffff0000REMATCH|r.)
          • Game - Display to (All players) the text:
          • Game - Display to (All players) the text: Please wait while |...
          • Game - Display to (All players) the text:
          • Multiboard - Destroy Multiboard_FFA
          • Trigger - Run Dialog Box <gen> (ignoring conditions)
          • Trigger - Run Remove All Items <gen> (ignoring conditions)
        • Else - Actions
  • Create Multiboard 5 v 5
    • Events
    • Conditions
    • Actions
      • Set Temp_String = (|cffff00005|r |cffFFFFFFvs |cff3C7AFF5|r - |cffffdeadOP|r - Win at |cff82e776 + ((String(Win_Points_Cap)) + ( Kills|r - ( |cffFF1D1D + ((String(Force1_Kills)) + (|r ) / ( |cff3C7AFF + ((String(Force2_Kills)) + |r )))))))
      • Multiboard - Create a multiboard with 3 columns and (5 + Player_Count) rows, titled Temp_String
      • Set Multiboard_5v5 = (Last created multiboard)
      • Multiboard - Set the text for (Last created multiboard) item in column 1, row 1 to |cffffdeadTEAMS|r
      • Multiboard - Set the icon for (Last created multiboard) item in column 1, row 1 to ReplaceableTextures\WorldEditUI\Editor-MultipleUnits.blp
      • Multiboard - Set the text for (Last created multiboard) item in column 2, row 1 to |cff82e776Kills|r
      • Multiboard - Set the text for (Last created multiboard) item in column 3, row 1 to |cffff7d46Deaths|r
      • Multiboard - Set the text for (Last created multiboard) item in column 1, row 2 to |cffFF1D1DWest|r Te...
      • Multiboard - Set the text for (Last created multiboard) item in column 2, row 2 to 0
      • Multiboard - Set the text for (Last created multiboard) item in column 3, row 2 to 0
      • Multiboard - Set the text for (Last created multiboard) item in column 1, row 3 to |cff3C7AFFEast|r Te...
      • Multiboard - Set the text for (Last created multiboard) item in column 2, row 3 to 0
      • Multiboard - Set the text for (Last created multiboard) item in column 3, row 3 to 0
      • Multiboard - Set the text for (Last created multiboard) item in column 1, row 4 to |cffFF1D1DWest |cff...
      • Multiboard - Set the text for (Last created multiboard) item in column 2, row 4 to |cff82e776Kills|r
      • Multiboard - Set the text for (Last created multiboard) item in column 3, row 4 to |cffff7d46Deaths|r
      • Multiboard - Set the icon for (Last created multiboard) item in column 1, row 4 to ReplaceableTextures\WorldEditUI\Editor-MultipleUnits.blp
      • For each (Integer A) from 1 to (5 + Player_Count), do (Actions)
        • Loop - Actions
          • Multiboard - Set the icon for (Last created multiboard) item in column 2, row (Integer A) to ReplaceableTextures\CommandButtons\BTNCrossbones.blp
          • Multiboard - Set the icon for (Last created multiboard) item in column 3, row (Integer A) to ReplaceableTextures\CommandButtons\PASBTNDeath.blp
      • For each (Integer A) from 1 to (5 + Player_Count), do (Actions)
        • Loop - Actions
          • Multiboard - Set the display style for (Last created multiboard) item in column 1, row (Integer A) to Show text and Hide icons
          • Multiboard - Set the display style for (Last created multiboard) item in column 2, row (Integer A) to Show text and Show icons
          • Multiboard - Set the display style for (Last created multiboard) item in column 3, row (Integer A) to Show text and Show icons
          • Multiboard - Set the width for (Last created multiboard) item in column 1, row (Integer A) to 11.00% of the total screen width
          • Multiboard - Set the width for (Last created multiboard) item in column 2, row (Integer A) to 6.00% of the total screen width
          • Multiboard - Set the width for (Last created multiboard) item in column 3, row (Integer A) to 6.00% of the total screen width
      • Set List = 5
      • Player Group - Pick every player in Force1 and do (Actions)
        • Loop - Actions
          • Set Multiboard_Spots[(Player number of (Picked player))] = List
          • Multiboard - Set the text for (Last created multiboard) item in column 1, row List to (Color[(Player number of (Picked player))] + ((Name of (Picked player)) + |r))
          • Multiboard - Set the text for (Last created multiboard) item in column 2, row List to (Color[(Player number of (Picked player))] + 0|r)
          • Multiboard - Set the text for (Last created multiboard) item in column 3, row List to (Color[(Player number of (Picked player))] + 0|r)
          • Set Leaver[List] = (Picked player)
          • Set Observe[List] = (Picked player)
          • Set List = (List + 1)
      • Multiboard - Set the text for (Last created multiboard) item in column 1, row List to |cff3C7AFFEast |cff...
      • Multiboard - Set the icon for (Last created multiboard) item in column 1, row List to ReplaceableTextures\WorldEditUI\Editor-MultipleUnits.blp
      • Multiboard - Set the display style for (Last created multiboard) item in column 1, row List to Show text and Show icons
      • Multiboard - Set the text for (Last created multiboard) item in column 2, row List to |cff82e776Kills|r
      • Multiboard - Set the text for (Last created multiboard) item in column 3, row List to |cffff7d46Deaths|r
      • Set List = (List + 1)
      • Player Group - Pick every player in Force2 and do (Actions)
        • Loop - Actions
          • Set Multiboard_Spots[(Player number of (Picked player))] = List
          • Multiboard - Set the text for (Last created multiboard) item in column 1, row List to (Color[(Player number of (Picked player))] + ((Name of (Picked player)) + |r))
          • Multiboard - Set the text for (Last created multiboard) item in column 2, row List to (Color[(Player number of (Picked player))] + 0|r)
          • Multiboard - Set the text for (Last created multiboard) item in column 3, row List to (Color[(Player number of (Picked player))] + 0|r)
          • Set Leaver[List] = (Picked player)
          • Set Observe[List] = (Picked player)
          • Set List = (List + 1)
      • Multiboard - Set the display style for (Last created multiboard) item in column 1, row 1 to Show text and Show icons
      • Multiboard - Set the display style for (Last created multiboard) item in column 1, row 4 to Show text and Show icons
      • Multiboard - Show (Last created multiboard)
  • Victory Update 5 v 5
    • Events
      • Unit - A unit Dies
    • Conditions
      • (((Owner of (Triggering unit)) controller) Equal to User) and (((Triggering unit) is A Hero) Equal to True)
    • Actions
      • Set Player_Kills[(Player number of (Owner of (Killing unit)))] = (Player_Kills[(Player number of (Owner of (Killing unit)))] + 1)
      • Set Player_Deaths[(Player number of (Owner of (Triggering unit)))] = (Player_Deaths[(Player number of (Owner of (Triggering unit)))] + 1)
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • ((Owner of (Triggering unit)) is an ally of Player 1 (Red)) Equal to True
        • Then - Actions
          • Set Force1_Deaths = (Force1_Deaths + 1)
          • Set Force2_Kills = (Force2_Kills + 1)
          • Multiboard - Set the text for Multiboard_5v5 item in column 3, row 2 to (String(Force1_Deaths))
          • Multiboard - Set the text for Multiboard_5v5 item in column 2, row 3 to (String(Force2_Kills))
        • Else - Actions
          • Set Force2_Deaths = (Force2_Deaths + 1)
          • Set Force1_Kills = (Force1_Kills + 1)
          • Multiboard - Set the text for Multiboard_5v5 item in column 3, row 3 to (String(Force2_Deaths))
          • Multiboard - Set the text for Multiboard_5v5 item in column 2, row 2 to (String(Force1_Kills))
      • Set Temp_String = (|cffff00005|r |cffFFFFFFvs |cff3C7AFF5|r - |cffffdeadOP|r - Win at |cff82e776 + ((String(Win_Points_Cap)) + ( Kills|r - ( |cffFF1D1D + ((String(Force1_Kills)) + (|r ) / ( |cff3C7AFF + ((String(Force2_Kills)) + |r )))))))
      • Multiboard - Change the title of Multiboard_5v5 to Temp_String
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • ((Owner of (Killing unit)) controller) Equal to User
        • Then - Actions
          • Multiboard - Set the text for Multiboard_5v5 item in column 2, row Multiboard_Spots[(Player number of (Owner of (Killing unit)))] to (Color[(Player number of (Owner of (Killing unit)))] + ((String(Player_Kills[(Player number of (Owner of (Killing unit)))])) + |r))
        • Else - Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • ((Owner of (Triggering unit)) controller) Equal to User
        • Then - Actions
          • Multiboard - Set the text for Multiboard_5v5 item in column 3, row Multiboard_Spots[(Player number of (Owner of (Triggering unit)))] to (Color[(Player number of (Owner of (Triggering unit)))] + ((String(Player_Deaths[(Player number of (Owner of (Triggering unit)))])) + |r))
        • Else - Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • Player_Kills[(Player number of (Owner of (Killing unit)))] Greater than or equal to Win_Points_Cap2
        • Then - Actions
          • Trigger - Turn off Coin Earned <gen>
          • Set Temp_UnitGroup = (Units of type Explosive Mine)
          • Set Force1 = (All allies of Player 1 (Red))
          • Set Force2 = (All allies of Player 6 (Orange))
          • Set Player_Wins[(Integer A)] = (Owner of (Killing unit))
          • Unit Group - Pick every unit in Temp_UnitGroup and do (Actions)
            • Loop - Actions
              • Unit - Remove (Picked unit) from the game
          • Custom script: call DestroyGroup(udg_Temp_UnitGroup)
          • Player Group - Pick every player in (All players) and do (Actions)
            • Loop - Actions
              • Player - Set (Picked player) Current gold to 100
              • Player - Set (Picked player) Current lumber to 1
          • Multiboard - Destroy Multiboard_5v5
          • Trigger - Run Dialog Box <gen> (ignoring conditions)
          • Trigger - Run Remove All Items <gen> (ignoring conditions)
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Player_Wins[(Player number of (Triggering player))] is an ally of Player 1 (Red)) Equal to True
            • Then - Actions
              • Player Group - Pick every player in Force1 and do (Actions)
                • Loop - Actions
              • Game - Display to (All players) for 15.00 seconds the text: The |cffFF1D1DWEST|...
              • Game - Display to (All players) for 15.00 seconds the text:
            • Else - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • (Player_Wins[(Player number of (Triggering player))] is an ally of Player 6 (Orange)) Equal to True
                • Then - Actions
                  • Player Group - Pick every player in Force2 and do (Actions)
                    • Loop - Actions
                  • Game - Display to (All players) for 15.00 seconds the text: The |cff3C7AFFEAST|...
                  • Game - Display to (All players) for 15.00 seconds the text:
                • Else - Actions
        • Else - Actions
THIS is needed within the re-coding
  • Observing Players
    • Events
      • Player - Player 1 (Red) types a chat message containing -Observe as A substring
      • Player - Player 2 (Blue) types a chat message containing -Observe as A substring
      • Player - Player 3 (Teal) types a chat message containing -Observe as A substring
      • Player - Player 4 (Purple) types a chat message containing -Observe as A substring
      • Player - Player 5 (Yellow) types a chat message containing -Observe as A substring
      • Player - Player 6 (Orange) types a chat message containing -Observe as A substring
      • Player - Player 7 (Green) types a chat message containing -Observe as A substring
      • Player - Player 8 (Pink) types a chat message containing -Observe as A substring
      • Player - Player 9 (Gray) types a chat message containing -Observe as A substring
      • Player - Player 10 (Light Blue) types a chat message containing -Observe as A substring
    • Conditions
      • (String((Entered chat string)) as Lower case) Equal to -observe
      • Observer[(Player number of (Triggering player))] Equal to False
    • Actions
      • Set Observer[(Player number of (Triggering player))] = True
      • Set Temp_UnitGroup = (Units owned by (Triggering player) of type Spy Unit)
      • Set Temp_UnitGroup2 = (Units owned by (Triggering player) of type Explosive Mine)
      • Unit Group - Pick every unit in Temp_UnitGroup and do (Actions)
        • Loop - Actions
          • Unit - Remove (Picked unit) from the game
      • Custom script: call DestroyGroup(udg_Temp_UnitGroup)
      • Unit Group - Pick every unit in Temp_UnitGroup2 and do (Actions)
        • Loop - Actions
          • Unit - Remove (Picked unit) from the game
      • Custom script: call DestroyGroup(udg_Temp_UnitGroup2)
      • Game - Display to (All players) the text: ((Color[(Player number of (Triggering player))] + (Name of (Triggering player))) + |r chose to be an Observer!)
      • Game - Display to (All players) the text:
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • GameMode_5v5 Equal to True
        • Then - Actions
          • For each (Integer A) from 1 to 10, do (Actions)
            • Loop - Actions
          • Multiboard - Set the icon for Multiboard_5v5 item in column 2, row Multiboard_Spots[(Player number of (Triggering player))] to ReplaceableTextures\CommandButtons\PASScout.blp
          • Multiboard - Set the icon for Multiboard_5v5 item in column 3, row Multiboard_Spots[(Player number of (Triggering player))] to ReplaceableTextures\CommandButtons\PASScout.blp
          • Multiboard - Set the text for Multiboard_5v5 item in column 1, row Multiboard_Spots[(Player number of (Triggering player))] to (Color[(Player number of (Triggering player))] + Observer|r)
          • Multiboard - Set the text for Multiboard_5v5 item in column 2, row Multiboard_Spots[(Player number of (Triggering player))] to <Empty String>
          • Multiboard - Set the text for Multiboard_5v5 item in column 3, row Multiboard_Spots[(Player number of (Triggering player))] to <Empty String>
        • Else - Actions
          • Multiboard - Set the icon for Multiboard_FFA item in column 2, row ((Player number of (Triggering player)) + 1) to ReplaceableTextures\CommandButtons\PASScout.blp
          • Multiboard - Set the icon for Multiboard_FFA item in column 3, row ((Player number of (Triggering player)) + 1) to ReplaceableTextures\CommandButtons\PASScout.blp
          • Multiboard - Set the icon for Multiboard_FFA item in column 4, row ((Player number of (Triggering player)) + 1) to ReplaceableTextures\CommandButtons\PASScout.blp
          • Multiboard - Set the text for Multiboard_FFA item in column 1, row ((Player number of (Triggering player)) + 1) to (Color[(Player number of (Triggering player))] + Observer|r)
          • Multiboard - Set the text for Multiboard_FFA item in column 2, row ((Player number of (Triggering player)) + 1) to <Empty String>
          • Multiboard - Set the text for Multiboard_FFA item in column 3, row ((Player number of (Triggering player)) + 1) to <Empty String>
          • Multiboard - Set the text for Multiboard_FFA item in column 4, row ((Player number of (Triggering player)) + 1) to <Empty String>
      • Unit - Remove Hero[(Player number of (Triggering player))] from the game
      • Unit - Create 1 Observer for (Triggering player) at (Center of (Playable map area)) facing Default building facing degrees
      • Player - Set (Triggering player) Current gold to 0
      • Player - Set (Triggering player) Current lumber to 0
      • Camera - Pan camera for (Triggering player) to (Position of (Triggering unit)) over 0.00 seconds
      • Visibility - Create an initially Enabled visibility modifier for (Triggering player) emitting Visibility across (Entire map)

And THIS is needed within the re-coding
  • Leavers
    • Events
      • Player - Player 1 (Red) leaves the game
      • Player - Player 2 (Blue) leaves the game
      • Player - Player 3 (Teal) leaves the game
      • Player - Player 4 (Purple) leaves the game
      • Player - Player 5 (Yellow) leaves the game
      • Player - Player 6 (Orange) leaves the game
      • Player - Player 7 (Green) leaves the game
      • Player - Player 8 (Pink) leaves the game
      • Player - Player 9 (Gray) leaves the game
      • Player - Player 10 (Light Blue) leaves the game
    • Conditions
    • Actions
      • Game - Display to (All players) the text: ((Color[(Player number of (Triggering player))] + (Name of (Triggering player))) + |r has left the game!)
      • Game - Display to (All players) the text:
      • Set Temp_UnitGroup = (Units owned by (Triggering player) of type Spy Unit)
      • Set Temp_UnitGroup2 = (Units owned by (Triggering player) of type Explosive Mine)
      • Unit Group - Pick every unit in Temp_UnitGroup and do (Actions)
        • Loop - Actions
          • Unit - Remove (Picked unit) from the game
      • Custom script: call DestroyGroup(udg_Temp_UnitGroup)
      • Unit Group - Pick every unit in Temp_UnitGroup2 and do (Actions)
        • Loop - Actions
          • Unit - Remove (Picked unit) from the game
      • Custom script: call DestroyGroup(udg_Temp_UnitGroup2)
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • ((Triggering player) is in Force1) Equal to True
        • Then - Actions
          • Player Group - Remove (Triggering player) from Force1
        • Else - Actions
          • Player Group - Remove (Triggering player) from Force2
      • Unit - Remove Hero[(Player number of (Triggering player))] from the game
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • GameMode_5v5 Equal to True
        • Then - Actions
          • Multiboard - Set the icon for Multiboard_5v5 item in column 1, row Multiboard_Spots[(Player number of (Triggering player))] to UI\Minimap\MinimapIconCreepLoc.blp
          • Multiboard - Set the display style for Multiboard_5v5 item in column 1, row Multiboard_Spots[(Player number of (Triggering player))] to Show text and Show icons
          • Multiboard - Set the text for Multiboard_5v5 item in column 2, row Multiboard_Spots[(Player number of (Triggering player))] to |cffA1A1A1Left|r
          • Multiboard - Set the display style for Multiboard_5v5 item in column 2, row Multiboard_Spots[(Player number of (Triggering player))] to Show text and Hide icons
          • Multiboard - Set the text for Multiboard_5v5 item in column 3, row Multiboard_Spots[(Player number of (Triggering player))] to |cffA1A1A1Left|r
          • Multiboard - Set the display style for Multiboard_5v5 item in column 3, row Multiboard_Spots[(Player number of (Triggering player))] to Show text and Hide icons
        • Else - Actions
          • For each (Integer A) from 2 to (Player_Count + 2), do (Actions)
            • Loop - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • Leaver[(Integer A)] Equal to (Triggering player)
                • Then - Actions
                  • Multiboard - Set the display style for Multiboard_FFA item in column 1, row (Integer A) to Hide text and Hide icons
                  • Multiboard - Set the display style for Multiboard_FFA item in column 2, row (Integer A) to Hide text and Hide icons
                  • Multiboard - Set the display style for Multiboard_FFA item in column 3, row (Integer A) to Hide text and Hide icons
                  • Multiboard - Set the display style for Multiboard_FFA item in column 4, row (Integer A) to Hide text and Hide icons
                • Else - Actions

REMATCH MODE Triggers that relate to the FFA Leaderboard and TEAMS 5 v 5 Multiboard:

  • Dialog Box
    • Events
    • Conditions
    • Actions
      • Dialog - Clear DialogBox
      • Dialog - Change the title of DialogBox to |cffff0000Rematch|r...
      • Dialog - Create a dialog button for DialogBox labelled Yes
      • Set Yes = (Last created dialog Button)
      • Dialog - Create a dialog button for DialogBox labelled No
      • Set No = (Last created dialog Button)
      • Dialog - Show DialogBox for Player 1 (Red)
  • Red Clicks
    • Events
      • Dialog - A dialog button is clicked for DialogBox
    • Conditions
    • Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Clicked dialog button) Equal to Yes
        • Then - Actions
          • Set NoRematch = False
          • Set Temp_UnitGroup = (Units of type Spy Unit)
          • Set Temp_UnitGroup2 = (Units of type Explosive Mine)
          • Unit Group - Pick every unit in Temp_UnitGroup and do (Actions)
            • Loop - Actions
              • Unit - Remove (Picked unit) from the game
          • Custom script: call DestroyGroup(udg_Temp_UnitGroup)
          • Unit Group - Pick every unit in Temp_UnitGroup2 and do (Actions)
            • Loop - Actions
              • Unit - Remove (Picked unit) from the game
          • Custom script: call DestroyGroup(udg_Temp_UnitGroup2)
          • Player Group - Pick every player in (All players) and do (Actions)
            • Loop - Actions
              • Trigger - Turn on Coin Earned <gen>
              • Visibility - Destroy (Last created visibility modifier)
              • Player - Make (Unit-type of Hero[(Player number of (Picked player))]) Available for training/construction by (Picked player)
              • Unit - Remove Hero[(Player number of (Picked player))] from the game
              • Unit - Remove (Random unit from (Random 1 units from (Units owned by (Picked player) of type Observer))) from the game
              • Set Player_Kills[(Player number of (Picked player))] = 0
              • Set Player_Deaths[(Player number of (Picked player))] = 0
              • Set HeroLevel[(Player number of (Picked player))] = 0
              • Camera - Pan camera for (Picked player) to ((Picked player) start location) over 0.00 seconds
          • Game - Display to (All players) the text: |cffff0000RED|r cho...
          • Game - Display to (All players) the text:
          • Trigger - Run Show Vote <gen> (checking conditions)
        • Else - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Clicked dialog button) Equal to No
            • Then - Actions
              • Game - Display to (All players) for 30.00 seconds the text: Game Over. Thank Yo...
              • Wait 4.00 seconds
              • Player Group - Pick every player in (All players) and do (Actions)
                • Loop - Actions
                  • Game - Defeat (Picked player) with the message: |cffff0000RED|r cho...
                  • Game - Display to (All players) the text:
            • Else - Actions
  • Remove All Items
    • Events
    • Conditions
    • Actions
      • Item - Pick every item in (Playable map area) and do (Actions)
        • Loop - Actions
          • Item - Remove (Picked item)

If anyone can help rat out the issue(s) it would be of great help. This has been the biggest setback of my map, ever.
 
Last edited:
just as the others have told u i would rip this apart and redo it. it will be a lot less work that way.

first u should not use for each integer a instead use ur own integer it is faster and more efficient. anything that u use more than twice put into a variable and use that.
example ( last created multiboard) put it into a variable.
u should make temp variables to help u with this.

this would take a very long time to repair but i can help u by showing u how to do it.
i would do it but i dont have the time to do all this work.

my tutorial shows a lot of usefull points on efficiency and other things that may help u http://www.hiveworkshop.com/forums/tutorial-submission-283/things-gui-user-should-know-233242/

after u look at that try to fix ur multiboard. also look at http://www.hiveworkshop.com/forums/triggers-scripts-269/things-leak-35124/

this shows u the things that leaks as u have a lot of point / location leaks. these can be the death of ur map. to many leaks add up to lag and poor game play

also plz edit ur post with hidden tags so it doesnt take forever to scroll. it also helps everyone to see a specific trigger at a time.


here is the hidden tags [.hidden="ur text here "]
to end the hidden tag [./hidden]
just make sure to take out the periods
 
Level 4
Joined
Aug 9, 2012
Messages
84
I take it you kind of skimmed through, like most people do with my in-depth posts.

None of these triggers shown is my doing. They are all the doing of my friend who I can no longer get a hold of anymore. Now, I'm stuck with a map I've worked almost 5 years on and cannot get it complete because of this.

While I appreciate your tutorials and have looked at them, for some reason for the life of me I cannot 'grasp' the concept of advanced triggering so as to know how to do it without it messing up. And as far as step 3 goes where it says BREAKDOWN, I don't even know where to start with something like that.

P.S. IF ever you could help me whenever you'd get more time (because I am looking for a debugger afterall as stated), let me know. If not, recommend me to someone you know that'd be up for this task.

I am in NO rush and will not be pushy on due dates when I want this done. I would be grateful no matter how long it took them on their time to help me on this.



Let me know.
Siryan
 
well i think ur main problem is that u dont reset the values since u use an integer array to show the kills / deaths u have to set them to 0 when the new game starts. also u should not destroy the multiboard since u dont have to make a new one.

also using these
  • Set Temp_UnitGroup = (Units of type Spy Unit)
  • Set Temp_UnitGroup2 = (Units of type Explosive Mine)
is a very bad idea as it always leaks and u cant stop it from leaking.

i could help u fix it if u do the work. but u really should try to learn GUI more even if it does take a bit in the beginning it gets far easier when u know how to do things on ur own. if u want to try to learn this way u can pm me on things u dont understand and i can help. if u just want someone else to fix it for u then im betting someone will be able to help u sooner than i will but if i can help b4 someone else does i will.
 
Level 4
Joined
Aug 9, 2012
Messages
84
How is that leaking when the leak is destroyed (I'm quite sure) in a custom script?

5 yrs in on this map, I don't think I want to spend another 6 months or year to get more into GUI. In fact, the 5 yrs I've been working on this I have looked up tutorials, and to no avail, don't get the more advanced stuff.

In short, I'll see what happens if anyone else comes around that'd be willing to do this. Me, I know what will happen, it will get 10x more messed up than it already is. I understand almost none of this on how my friend began to make all of this stuff via the Vote System (especially), setting up the boards the way I told him to (through my idea of one), etc.

I'm almost so desperate now for help that if I had the funds I'd pay someone $150-200 bucks sent to their address to fix this. I'm not even lying about that.

P.S. I'll keep you in mind though.
 
Level 4
Joined
Aug 9, 2012
Messages
84
Well, I just got a contradicting Private Message from a friend of mine (I won't name here) saying he wouldn't do it or help originally, then lead me on thinking he would when saying this is not complex and easier than I thought, and now he says (again) he won't be helping or doing this whatsoever. Happens all the time.

Yeah well, when you're not getting help for almost a year (like me,) you get to thinking like I do that the only way this is gonna get fixed is through physical cash money, and I don't want to get this desperate. I close though.

And as far as that thing still leaking, it just goes to show what one person tells you contradicts what another tells you. My friend said it would remove the leak, but you say the custom script does not remove the leak issue.
 
Level 4
Joined
Aug 9, 2012
Messages
84
Shortening the post makes for unnecessary questions people will ask me if I fail to cover everything. Everything in this post is exactly what I'm having issues with/exactly what I need done.

Now I get what you mean but it's not working.
 
Last edited by a moderator:
Level 4
Joined
Aug 9, 2012
Messages
84
I didn't exactly do


I had to look it up on Google.

And now that I think about it, this only happens with the Deaths in each Board. It never happens with the Kills, or in my FFA Leaderboard, the tallied Levels of each player.

And take a look at this (which should work for the FFA Leaderboard)

  • Red Clicks
    • Events
      • Dialog - A dialog button is clicked for DialogBox
    • Conditions
    • Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Clicked dialog button) Equal to Yes
        • Then - Actions
          • Set NoRematch = False
          • Set Temp_UnitGroup = (Units of type Spy Unit)
          • Set Temp_UnitGroup2 = (Units of type Explosive Mine)
          • Unit Group - Pick every unit in Temp_UnitGroup and do (Actions)
            • Loop - Actions
              • Unit - Remove (Picked unit) from the game
          • Custom script: call DestroyGroup(udg_Temp_UnitGroup)
          • Unit Group - Pick every unit in Temp_UnitGroup2 and do (Actions)
            • Loop - Actions
              • Unit - Remove (Picked unit) from the game
          • Custom script: call DestroyGroup(udg_Temp_UnitGroup2)
          • Player Group - Pick every player in (All players) and do (Actions)
            • Loop - Actions
              • Trigger - Turn on Coin Earned <gen>
              • Visibility - Destroy (Last created visibility modifier)
              • Player - Make (Unit-type of Hero[(Player number of (Picked player))]) Available for training/construction by (Picked player)
              • Unit - Remove Hero[(Player number of (Picked player))] from the game
              • Unit - Remove (Random unit from (Random 1 units from (Units owned by (Picked player) of type Observer))) from the game
              • Set Player_Kills[(Player number of (Picked player))] = 0
              • Set Player_Deaths[(Player number of (Picked player))] = 0
              • Set HeroLevel[(Player number of (Picked player))] = 0
              • Camera - Pan camera for (Picked player) to ((Picked player) start location) over 0.00 seconds
          • Game - Display to (All players) the text: |cffff0000RED|r cho...
          • Game - Display to (All players) the text:
          • Trigger - Run Show Vote <gen> (checking conditions)
        • Else - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Clicked dialog button) Equal to No
            • Then - Actions
              • Game - Display to (All players) for 30.00 seconds the text: Game Over. Thank Yo...
              • Wait 4.00 seconds
              • Player Group - Pick every player in (All players) and do (Actions)
                • Loop - Actions
                  • Game - Defeat (Picked player) with the message: |cffff0000RED|r cho...
                  • Game - Display to (All players) the text:
            • Else - Actions
In that trigger there is:

  • Set Player_Kills[(Player number of (Picked player))] = 0
  • Set Player_Deaths[(Player number of (Picked player))] = 0
  • Set HeroLevel[(Player number of (Picked player))] = 0
Is this not supposed to put the kills/deaths back to 0? It does work for the Hero Levels AND Kills, but why not Deaths? Why are Deaths not resetting as they should.

Re-reading back, yeah I do have to keep destroying the boards, because there's a REMATCH system in my game, that is, until RED or IF RED chooses not to pick REMATCH.

And as far that leak goes, it's only used when/if units from the old games played are still around via Explosive Mines / Spy Units, or if a player leaves the game. There's not many of those units that can be spammed, nor does everyone constantly leave for the leak to crash and/or slow the game. It'd have to happen 50-100 times to feel anything.

Whenever I've hosted this game ppl played no more than 3-4 games per hosting.
 
Last edited by a moderator:
Yes it should set them to 0. This probably means that that trigger is broken. Try putting some messages in there to make sure all the actions run. Also u shouldn't use all players like that. If u want to use all players then put an ITE in there put all ur actions in the then block then use conditions to make sure that player is a user and that that player is playing. All players also loops through the neutral hostile and all the others and can bug up when used like that. Also take the visibility modifier out of the trigger. Use a temp integer to store player number of picked player to make it more efficient.

Leaks should always be taken care of whether it happens on e or twice of watever. The reason for this is that if u don't take care of leaks they add up faster than u think.

Also y do u need to destroy the multiboard ? U say u do because of the rematch. U should elaborate more cause I really do not think u need to destroy it.
 
Level 4
Joined
Aug 9, 2012
Messages
84
What my REMATCH system does is destroy the last created Multiboard after red chooses 'YES' to REMATCH in the dialog box (shown for RED,) then runs the 'Show Vote' trigger again for everyone to pick between the Modes: TEAMS 5 v 5 or FFA.

If I don't destroy the previously made board it wouldn't do how I want it to do.

Anyway, regarding leaks, I don't know all the fancy shortcuts on fixing a lot of the ones you speak of. I mean, arguably, people have told me the only way to really get rid of leaks is to have the code(s) reworked in vJASS, which I don't know a thing about.

That's why I'm looking for a debugger (at least), or someone who can help re-write this.

I was told these leaks were so minute, that as said, would require the game to keep redoing the leak 10-50 times. It doesn't even do it 4 times. In other words, every hosting I've ever done with my map no one's complained about lags or hiccups, especially after I optimize the map, regardless of all this messy coding.

And yes, the triggers are working in those action lines. I put a game message to be sure. What I think it is, is it's not able to acquire the players that were once dead. What's been dead is dead, no getting them back. It can only recognize players that have done the killing only. There's a difference.

If that's not the case, why does everything but the DEATHS section on both my Multiboard and Leaderboard work?

The visibility modifier is linked to my 'OBSERVE MODE' for players who type -observe as a substring. What it does is gets rid of the player, turns them into an observer bird, sets their gold and lumber to zero, and grants them visibility over the entire map.

Now, let's say RED chooses to REMATCH for everyone in the game, that visibility modifier is destroyed for anyone who chose to be an observer, the bird unit is removed, your gold and lumber is reset to the exact amount you need to buy a hero, and you can play again. What also happens is if any mines or spy units are remaining after a player types -observe at any time in the game, or leaves the game, they are removed. You say how I go about doing this leaks and I don't know how to do the fix for it.
 
Last edited:
Level 4
Joined
Aug 9, 2012
Messages
84
I'm fairly new to the site so pardon me. I haven't got all of this figured out. I don't know how you just did that, merged all my posts into one but thanks.
 
Status
Not open for further replies.
Top