1. Are you planning to upload your awesome spell or system to Hive? Please review the rules here.
    Dismiss Notice
  2. Updated Resource Submission Rules: All model & skin resource submissions must now include an in-game screenshot. This is to help speed up the moderation process and to show how the model and/or texture looks like from the in-game camera.
    Dismiss Notice
  3. DID YOU KNOW - That you can unlock new rank icons by posting on the forums or winning contests? Click here to customize your rank or read our User Rank Policy to see a list of ranks that you can unlock. Have you won a contest and still havn't received your rank award? Then please contact the administration.
    Dismiss Notice
  4. The Lich King demands your service! We've reached the 19th edition of the Icon Contest. Come along and make some chilling servants for the one true king.
    Dismiss Notice
  5. The 4th SFX Contest has started. Be sure to participate and have a fun factor in it.
    Dismiss Notice
  6. The poll for the 21st Terraining Contest is LIVE. Be sure to check out the entries and vote for one.
    Dismiss Notice
  7. The results are out! Check them out.
    Dismiss Notice
  8. Don’t forget to sign up for the Hive Cup. There’s a 555 EUR prize pool. Sign up now!
    Dismiss Notice
  9. The Hive Workshop Cup contest results have been announced! See the maps that'll be featured in the Hive Workshop Cup tournament!
    Dismiss Notice
  10. Check out the Staff job openings thread.
    Dismiss Notice
Dismiss Notice
60,000 passwords have been reset on July 8, 2019. If you cannot login, read this.

Trigger Viewer

DAS - DatAllianceSystemv3.w3x
Variables
Dat Alliance System
DAS
Enter map-specific custom script code below. This text will be included in the map script after variables are declared and before any trigger code.

		
Name Type Is Array Initial Value
To get players to know how to work this system then just let them know to type -info
Just copy and then load up your map then paste and you don't have to worry about a thing. It works no matter what.
There's a reason why the other player sometimes can't see if you shared vision or not because for one it is rather obvious and for two, spammers would have a feature to exploit.
DAS
  Events
    Player - Player 1 (Red) types a chat message containing - as A substring
    Player - Player 2 (Blue) types a chat message containing - as A substring
    Player - Player 3 (Teal) types a chat message containing - as A substring
    Player - Player 4 (Purple) types a chat message containing - as A substring
    Player - Player 5 (Yellow) types a chat message containing - as A substring
    Player - Player 6 (Orange) types a chat message containing - as A substring
    Player - Player 7 (Green) types a chat message containing - as A substring
    Player - Player 8 (Pink) types a chat message containing - as A substring
    Player - Player 9 (Gray) types a chat message containing - as A substring
    Player - Player 10 (Light Blue) types a chat message containing - as A substring
    Player - Player 11 (Dark Green) types a chat message containing - as A substring
    Player - Player 12 (Brown) types a chat message containing - as A substring
  Conditions
    Or - Any (Conditions) are true
      Conditions
        (Substring((Entered chat string), 1, 6)) Equal to -ally
        (Substring((Entered chat string), 1, 8)) Equal to -unally
        (Substring((Entered chat string), 1, 5)) Equal to -war
        (Substring((Entered chat string), 1, 5)) Equal to -info
        (Substring((Entered chat string), 1, 7)) Equal to -vision
        (Substring((Entered chat string), 1, 9)) Equal to -unvision
  Actions
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        (Substring((Entered chat string), 1, 10)) Equal to -unvision
        ((Triggering player) is giving (Player((Integer((Substring((Entered chat string), 11, 11)))))) Shared vision) Equal to True
      Then - Actions
        Player - For (Triggering player), turn Shared vision Off toward (Player((Integer((Substring((Entered chat string), 11, 11))))))
        Game - Display to (Player group((Triggering player))) the text: (You have removed your vision with + (Name of (Player((Integer((Substring((Entered chat string), 11, 11))))))))
      Else - Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
          If - Conditions
            (Substring((Entered chat string), 1, 8)) Equal to -vision
            ((Triggering player) is giving (Player((Integer((Substring((Entered chat string), 9, 9)))))) Shared vision) Equal to False
          Then - Actions
            Player - For (Triggering player), turn Shared vision On toward (Player((Integer((Substring((Entered chat string), 9, 9))))))
            Game - Display to (Player group((Triggering player))) the text: (You have shared vision with + (Name of (Player((Integer((Substring((Entered chat string), 9, 9))))))))
          Else - Actions
            If (All Conditions are True) then do (Then Actions) else do (Else Actions)
              If - Conditions
                (Substring((Entered chat string), 1, 6)) Equal to -ally
                ((Triggering player) is an ally of (Player((Integer((Substring((Entered chat string), 7, 7))))))) Equal to False
              Then - Actions
                Player - Make (Triggering player) treat (Player((Integer((Substring((Entered chat string), 7, 7)))))) as an Ally
                Game - Display to (All players) the text: ((Name of (Triggering player)) + ( has decided to ally + (Name of (Player((Integer((Substring((Entered chat string), 7, 7)))))))))
              Else - Actions
                If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                  If - Conditions
                    (Substring((Entered chat string), 1, 8)) Equal to -unally
                    ((Triggering player) is an ally of (Player((Integer((Substring((Entered chat string), 9, 9))))))) Equal to True
                    (Triggering player) Not equal to (Player((Integer((Substring((Entered chat string), 9, 9))))))
                  Then - Actions
                    Player - Make (Triggering player) treat (Player((Integer((Substring((Entered chat string), 9, 9)))))) as an Neutral
                    Game - Display to (All players) the text: ((Name of (Triggering player)) + ( has unallied + (Name of (Player((Integer((Substring((Entered chat string), 9, 9)))))))))
                  Else - Actions
                    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                      If - Conditions
                        (Substring((Entered chat string), 1, 5)) Equal to -war
                        ((Triggering player) is an enemy of (Player((Integer((Substring((Entered chat string), 6, 6))))))) Equal to False
                        (Triggering player) Not equal to (Player((Integer((Substring((Entered chat string), 6, 6))))))
                      Then - Actions
                        Player - Make (Triggering player) treat (Player((Integer((Substring((Entered chat string), 6, 6)))))) as an Enemy
                        Game - Display to (All players) the text: ((Name of (Triggering player)) + ( has declared war on + (Name of (Player((Integer((Substring((Entered chat string), 6, 6)))))))))
                      Else - Actions
                        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                          If - Conditions
                            (Substring((Entered chat string), 1, 5)) Equal to -info
                          Then - Actions
                            Player Group - Pick every player in (All players) and do (Actions)
                              Loop - Actions
                                If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                                  If - Conditions
                                    ((Picked player) slot status) Equal to Is playing
                                  Then - Actions
                                    Game - Display to (Player group((Triggering player))) the text: ((Name of (Picked player)) + ('s player number is + ((String((Player number of (Picked player)))) + , so just type -ally,-unally,-war that number to do said command.)))
                                    Game - Display to (Player group((Triggering player))) the text: Extra commands are -vision,-unvision
                                  Else - Actions
                          Else - Actions