• 🏆 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!
  • 🏆 Hive's 6th HD Modeling Contest: Mechanical is now open! Design and model a mechanical creature, mechanized animal, a futuristic robotic being, or anything else your imagination can tinker with! 📅 Submissions close on June 30, 2024. Don't miss this opportunity to let your creativity shine! Enter now and show us your mechanical masterpiece! 🔗 Click here to enter!

Random Map

This bundle is marked as useful / simple. Simplicity is bliss, low effort and/or may contain minor bugs.
This is a random melee map. The idea came from the triggers. I was searching for another trigger when i saw the trigger which changes terrain type. The map is not protected and you can use it's triggers in any of your maps and you may edit this map. But just give credit.
The map features are listed below:

You can see where trees are. it was very hard to me but i have done it at last.
Creep camps never appear near players.
Terrains are Outland,Summer,Fall,Winter,Sunken Ruins,Icecrown,Barrens and Ashenvale.
Weather effects for each Terrain is different.For example you will just see snow in Winter and Icecrown.
Is fast.

Please report all the bugs you can find.

Known bugs:
Leaks!!!!.

Updated 9/24/2009
Players now have a forest near themselves. Also they no longer appear in the middle of the forest.
Creeps now drop items on death.
Creep camps are now weaker.
Added a preview screen.
Fixed some leaks(Thanks to OffGraphic)
More neutral buildings appear now.

Updated 9/28/2009
Player locations are now changed to a circular one.You won't be near a player again.
Fixed more leaks(Again thanks to OffGraphic)
Fixed a bug when about item drop when you kill a creep with level more than 8.
Added a feature Completely Random Map.Just check random hero option to see what it is.
Neutral buildings and creeps have less chance to be created in a forest.

Updated 10/30/2009
Fixed more and more leaks
Player location problem fixed. It was because of removing the location.


Keywords:
Random,Melee,Altered Melee
Contents

Random Map (Map)

Reviews
ap0: Rejected 12:25, 21st Sep 2009 ap0calypse: Rejected (until updated) Aye, this many leaks... that's not good, my warcraft actually crashed. But, well... when I checked the trigger CreateFirstTerrain, I wasn't surprised why it did. You...

Moderator

M

Moderator

ap0: Rejected

12:25, 21st Sep 2009
ap0calypse: Rejected (until updated)

Aye, this many leaks... that's not good, my warcraft actually crashed.
But, well... when I checked the trigger CreateFirstTerrain, I wasn't surprised why it did.
You should REALLY fix those leaks, even if warcraft does not crash, it will still lag.

edit: I can see OffGraphic has created a really helpful post, try to edit all your triggers so they look like his.
If you need information about leaks, you can check this tutorial
 
Level 28
Joined
Jan 26, 2007
Messages
4,789
Which version are you using? Maybe it crashes in your computer because you are using a newer version. It works fine for mine. I don't have v 1.24b so i can't underestand if it causes error. But I will check the forums if my map will crash in newer versions.
...I use v1.24b as well, maps do not crash from other version, they simply do not work at all (you won't be able to start them).
The map starts, I see "Wait until the map ...." and then it crashes.
My PC is custom-built, I can run new games at a high quality, so that isn't the problem either.

I blame the 1000+ leaks made in about 0.01 second ;)
 
Hello!
I was working on your map only for few hours but well, hope it was worth it.
My edit shouldn't need version update to Warcraft III since I just added few stuffs.

Buttons 'o Helpfullness


  • Build Map
    • Events
      • Map initialization
    • Conditions
    • Actions
      • Set Rect = (Playable map area)
      • Cinematic - Fade in over 2.00 seconds using texture Black Mask and color (0.00%, 0.00%, 0.00%) with 0.00% transparency
      • Game - Display to (All players) the text: Wait until the map ...
      • Set Vib = (Random integer number between 1 and 8)
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • Vib Equal to 1
        • Then - Actions
          • Set FTer = Ashenvale - Dirt
          • Set FiTer = Ashenvale - Lumpy Grass
          • Set FoTer = Ashenvale - Grass
          • Set STer = Ashenvale - Grassy Dirt
          • Set TTer = Ashenvale - Rough Dirt
          • Set Leaves = Ashenvale - Leaves
          • Set Unbuild = Ashenvale - Rock
          • Set MT = Ashenvale Tree Wall
          • Set Creep1Level1 = Dark Troll
          • Set Creep2Level1 = Dark Troll Shadow Priest
          • Set Creep3Level1 = Green Dragon Whelp
          • Set Creep4Level1 = Furbolg
          • Set Creep5Level1 = Furbolg Shaman
          • Set Creep6Level1 = Satyr
          • Set Creep7Level1 = Satyr Trickster
          • Set Creep1Level2 = Dark Troll Trapper
          • Set Creep2Level2 = Dark Troll Berserker
          • Set Creep3Level2 = Satyr Shadowdancer
          • Set Creep4Level2 = Green Drake
          • Set Creep5Level2 = Furbolg Tracker
          • Set Creep6Level2 = Satyr Soulstealer
          • Set Creep1Level3 = Dark Troll Warlord
          • Set Creep2Level3 = Furbolg Ursa Warrior
          • Set Creep3Level3 = Satyr Hellcaller
          • Set NBUG = Green Dragon Roost
          • Set NBUG2 = Mercenary Camp (Ashenvale)
          • Set Vib = (Random integer number between 1 and 3)
          • If (Vib Equal to 1) then do (Environment - Create at Rect the weather effect Ashenvale Rain (Light)) else do (Do nothing)
          • If (Vib Equal to 2) then do (Environment - Create at Rect the weather effect Ashenvale Rain (Heavy)) else do (Do nothing)
        • Else - Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • Vib Equal to 2
        • Then - Actions
          • Set FTer = Barrens - Dirt
          • Set FiTer = Barrens - Dark Desert
          • Set FoTer = Barrens - Grassy Dirt
          • Set STer = Barrens - Desert
          • Set TTer = Barrens - Rough Dirt
          • Set Leaves = Barrens - Grass
          • Set Unbuild = Barrens - Rock
          • Set MT = Barrens Tree Wall
          • Set ST = Barrens Canopy Tree
          • Set Creep1Level1 = Centaur Archer
          • Set Creep2Level1 = Centaur Drudge
          • Set Creep3Level1 = Bronze Dragon Whelp
          • Set Creep4Level1 = Harpy Scout
          • Set Creep5Level1 = Harpy Rogue
          • Set Creep6Level1 = Quillboar
          • Set Creep7Level1 = Razormane Scout
          • Set Creep1Level2 = Centaur Impaler
          • Set Creep2Level2 = Centaur Outrunner
          • Set Creep3Level2 = Bronze Drake
          • Set Creep4Level2 = Harpy Windwitch
          • Set Creep5Level2 = Harpy Storm-hag
          • Set Creep6Level2 = Quillboar Hunter
          • Set Creep1Level3 = Centaur Khan
          • Set Creep2Level3 = Harpy Queen
          • Set Creep3Level3 = Razormane Chieftain
          • Set NBUG = Bronze Dragon Roost
          • Set NBUG2 = Mercenary Camp (Barrens)
        • Else - Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • Vib Equal to 3
        • Then - Actions
          • Set FTer = Lordaeron Summer - Dirt
          • Set FiTer = Lordaeron Summer - Dark Grass
          • Set FoTer = Lordaeron Summer - Grassy Dirt
          • Set STer = Lordaeron Summer - Dirt
          • Set TTer = Lordaeron Summer - Rough Dirt
          • Set Leaves = Lordaeron Summer - Grass
          • Set Unbuild = Lordaeron Summer - Rock
          • Set MT = Summer Tree Wall
          • Set ST = Summer Tree Wall
          • Set Creep1Level1 = Forest Troll
          • Set Creep2Level1 = Forest Troll Shadow Priest
          • Set Creep3Level1 = Red Dragon Whelp
          • Set Creep4Level1 = Gnoll Poacher
          • Set Creep5Level1 = Gnoll
          • Set Creep7Level1 = Ogre Warrior
          • Set Creep6Level1 = Red Drake
          • Set Creep1Level2 = Forest Troll Trapper
          • Set Creep2Level2 = Gnoll Assassin
          • Set Creep3Level2 = Gnoll Brute
          • Set Creep4Level2 = Ogre Magi
          • Set Creep5Level2 = Ogre Mauler
          • Set Creep6Level2 = Mud Golem
          • Set Creep1Level3 = Forest Troll Warlord
          • Set Creep2Level3 = Gnoll Overseer
          • Set Creep3Level3 = Ogre Lord
          • Set NBUG = Red Dragon Roost
          • Set NBUG2 = Mercenary Camp (Lordaeron Summer)
          • Set Vib = (Random integer number between 1 and 2)
          • If (Vib Equal to 1) then do (Environment - Create at Rect the weather effect Lordaeron Rain (Light)) else do (Do nothing)
        • Else - Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • Vib Equal to 4
        • Then - Actions
          • Set FTer = Lordaeron Fall - Dirt
          • Set FiTer = Lordaeron Fall - Dark Grass
          • Set FoTer = Lordaeron Fall - Grassy Dirt
          • Set STer = Lordaeron Fall - Dirt
          • Set TTer = Lordaeron Fall - Rough Dirt
          • Set Leaves = Lordaeron Fall - Grass
          • Set Unbuild = Lordaeron Fall - Rock
          • Set MT = Fall Tree Wall
          • Set ST = Fall Tree Wall
          • Set Creep1Level1 = Forest Troll
          • Set Creep2Level1 = Forest Troll Shadow Priest
          • Set Creep3Level1 = Black Dragon Whelp
          • Set Creep4Level1 = Gnoll Poacher
          • Set Creep5Level1 = Gnoll
          • Set Creep7Level1 = Ogre Warrior
          • Set Creep6Level1 = Black Drake
          • Set Creep1Level2 = Forest Troll Trapper
          • Set Creep2Level2 = Gnoll Assassin
          • Set Creep3Level2 = Gnoll Brute
          • Set Creep4Level2 = Ogre Magi
          • Set Creep5Level2 = Ogre Mauler
          • Set Creep6Level2 = Mud Golem
          • Set Creep1Level3 = Forest Troll Warlord
          • Set Creep2Level3 = Gnoll Overseer
          • Set Creep3Level3 = Ogre Lord
          • Set NBUG = Black Dragon Roost
          • Set NBUG2 = Mercenary Camp (Lordaeron Fall)
          • Set Vib = (Random integer number between 1 and 3)
          • If (Vib Equal to 1) then do (Environment - Create at Rect the weather effect Lordaeron Rain (Light)) else do (Do nothing)
          • If (Vib Equal to 2) then do (Environment - Create at Rect the weather effect Lordaeron Rain (Heavy)) else do (Do nothing)
        • Else - Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • Vib Equal to 5
        • Then - Actions
          • Set FTer = Lordaeron Winter - Dirt
          • Set FiTer = Lordaeron Winter - Snow
          • Set FoTer = Lordaeron Winter - Grassy Snow
          • Set STer = Lordaeron Winter - Dirt
          • Set TTer = Lordaeron Winter - Rough Dirt
          • Set Leaves = Lordaeron Winter - Grass
          • Set Unbuild = Lordaeron Winter - Rock
          • Set MT = Snowy Tree Wall
          • Set ST = Snowy Tree Wall
          • Set Creep1Level1 = Ice Troll
          • Set Creep2Level1 = Ice Troll Priest
          • Set Creep3Level1 = Blue Dragon Whelp
          • Set Creep4Level1 = Gnoll Poacher
          • Set Creep5Level1 = Gnoll
          • Set Creep7Level1 = Ogre Warrior
          • Set Creep6Level1 = Blue Drake
          • Set Creep1Level2 = Ice Troll Trapper
          • Set Creep2Level2 = Gnoll Assassin
          • Set Creep3Level2 = Gnoll Brute
          • Set Creep4Level2 = Ogre Magi
          • Set Creep5Level2 = Ogre Mauler
          • Set Creep6Level2 = Mud Golem
          • Set Creep1Level3 = Ice Troll Warlord
          • Set Creep2Level3 = Gnoll Overseer
          • Set Creep3Level3 = Ogre Lord
          • Set NBUG = Blue Dragon Roost
          • Set NBUG2 = Mercenary Camp (Lordaeron Winter)
          • Set Vib = (Random integer number between 1 and 2)
          • If (Vib Equal to 1) then do (Environment - Create at Rect the weather effect Northrend Snow (Light)) else do (Do nothing)
        • Else - Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • Vib Equal to 6
        • Then - Actions
          • Set FTer = Outland - Dirt
          • Set FiTer = Outland - Cracked Dirt
          • Set FoTer = Outland - Rough Dirt
          • Set STer = Outland - Light Dirt
          • Set TTer = Outland - Flat Stones
          • Set Leaves = Outland - Rough Dirt
          • Set Unbuild = Outland - Rock
          • Set MT = Outland Tree Wall
          • Set ST = Outland Tree Wall
          • Set Creep1Level1 = Draenei Protector
          • Set Creep2Level1 = Draenei Harbinger
          • Set Creep3Level1 = Nether Dragon Hatchling
          • Set Creep4Level1 = Felguard
          • Set Creep5Level1 = Succubus
          • Set Creep7Level1 = Vile Tormentor
          • Set Creep6Level1 = Fel Beast
          • Set Creep1Level2 = Draenei Darkslayer
          • Set Creep2Level2 = Nether Drake
          • Set Creep3Level2 = Bloodfiend
          • Set Creep4Level2 = Fel Stalker
          • Set Creep5Level2 = Vile Temptress
          • Set Creep6Level2 = Maiden of Pain
          • Set Creep1Level3 = Overlord
          • Set Creep2Level3 = Queen of Suffering
          • Set Creep3Level3 = Fel Ravager
          • Set NBUG = Nether Dragon Roost
          • Set NBUG2 = Mercenary Camp (Outland)
        • Else - Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • Vib Equal to 7
        • Then - Actions
          • Set Vib = (Random integer number between 1 and 2)
          • If (Vib Equal to 1) then do (Environment - Create at Rect the weather effect Lordaeron Rain (Heavy)) else do (Do nothing)
          • Set FTer = Sunken Ruins - Dirt
          • Set FiTer = Sunken Ruins - Rough Dirt
          • Set FoTer = Sunken Ruins - Grassy Dirt
          • Set STer = Sunken Ruins - Dark Grass
          • Set TTer = Sunken Ruins - Sand
          • Set Leaves = Sunken Ruins - Grass
          • Set Unbuild = Sunken Ruins - Large Bricks
          • Set MT = Ruins Tree Wall
          • Set ST = Ruins Canopy Tree
          • Set Creep1Level1 = Sea Giant
          • Set Creep2Level1 = Hydra Hatchling
          • Set Creep3Level1 = Makrura Prawn
          • Set Creep4Level1 = Makrura Pooldweller
          • Set Creep5Level1 = Mur'gul Tidewarrior
          • Set Creep7Level1 = Revenant of the Tides
          • Set Creep6Level1 = Stormreaver Apprentice
          • Set Creep1Level2 = Sea Giant Hunter
          • Set Creep2Level2 = Hydra
          • Set Creep3Level2 = Makrura Tidecaller
          • Set Creep4Level2 = Mur'gul Snarecaster
          • Set Creep5Level2 = Revenant of the Seas
          • Set Creep6Level2 = Stormreaver Necrolyte
          • Set Creep1Level3 = Ancient Hydra
          • Set Creep2Level3 = Stormreaver Warlock
          • Set Creep3Level3 = Deeplord Revenant
          • Set NBUG = Green Dragon Roost
          • Set NBUG2 = Mercenary Camp (Sunken Ruins)
          • Set Vib = (Random integer number between 1 and 3)
          • If (Vib Equal to 1) then do (Environment - Create at Rect the weather effect Ashenvale Rain (Light)) else do (Do nothing)
          • If (Vib Equal to 2) then do (Environment - Create at Rect the weather effect Ashenvale Rain (Heavy)) else do (Do nothing)
        • Else - Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • Vib Equal to 8
        • Then - Actions
          • Set FTer = Icecrown Glacier - Dirt
          • Set FiTer = Icecrown Glacier - Rough Dirt
          • Set FoTer = Icecrown Glacier - Dark Ice
          • Set STer = Icecrown Glacier - Snow
          • Set TTer = Icecrown Glacier - Snow
          • Set Leaves = Icecrown Glacier - Dirt
          • Set Unbuild = Icecrown Glacier - Rune Bricks
          • Set MT = Icecrown Tree Wall
          • Set ST = Icecrown Canopy Tree
          • Set Creep1Level1 = Barbed Arachnathid
          • Set Creep2Level1 = Crystal Arachnathid
          • Set Creep3Level1 = Blue Dragonspawn Meddler
          • Set Creep4Level1 = Faceless One Trickster
          • Set Creep5Level1 = Spiderling
          • Set Creep7Level1 = Tuskarr Fighter
          • Set Creep6Level1 = Tuskarr Spearman
          • Set Creep1Level2 = Arachnathid Earth-borer
          • Set Creep2Level2 = Blue Dragonspawn Apprentice
          • Set Creep3Level2 = Faceless One Terror
          • Set Creep4Level2 = Nerubian Webspinner
          • Set Creep5Level2 = Tuskarr Trapper
          • Set Creep6Level2 = Tuskarr Warrior
          • Set Creep1Level3 = Tuskarr Chieftain
          • Set Creep2Level3 = Faceless One Deathbringer
          • Set Creep3Level3 = Nerubian Queen
          • Set NBUG = Blue Dragon Roost
          • Set NBUG2 = Mercenary Camp (Icecrown Glacier)
          • Set Vib = (Random integer number between 1 and 4)
          • If (Vib Equal to 1) then do (Environment - Create at Rect the weather effect Northrend Snow (Heavy)) else do (Do nothing)
          • If (Vib Equal to 2) then do (Environment - Create at Rect the weather effect Northrend Snow (Light)) else do (Do nothing)
          • If (Vib Equal to 3) then do (Environment - Create at Rect the weather effect Northrend Blizzard) else do (Do nothing)
        • Else - Actions
      • Custom script: call RemoveRect(udg_Rect)
      • Trigger - Run CreateFirstTerrain <gen> (checking conditions)
      • Trigger - Run CreateStartingTrees <gen> (checking conditions)
      • Trigger - Run CreateMainTrees <gen> (checking conditions)
      • Trigger - Run CreateStartLoc <gen> (checking conditions)
      • Trigger - Run CreateFirstGoldmines <gen> (checking conditions)
      • Trigger - Run CreateMoreGoldMines <gen> (checking conditions)
      • Trigger - Run CreatePlayerUnits <gen> (checking conditions)
      • Trigger - Run CreateNaturalBuildings <gen> (checking conditions)
      • Trigger - Run CreateCreeps <gen> (checking conditions)
      • Trigger - Run ShowTrees <gen> (checking conditions)
      • Trigger - Run InitialazeMap <gen> (checking conditions)

  • CreateFirstTerrain
    • Events
    • Conditions
    • Actions
      • Set APoint = (Center of (Playable map area))
      • Environment - Change terrain type at APoint to FTer using variation -1 in an area of size 180 and shape Square
      • Custom script: call RemoveLocation(udg_APoint)
      • For each (Integer A) from 1 to (Random integer number between 100 and 200), do (Actions)
        • Loop - Actions
          • Set Vib = (Random integer number between 1 and 7)
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • Vib Equal to 1
            • Then - Actions
              • Set APoint = (Random point in (Playable map area))
              • Environment - Change terrain type at APoint to FTer using variation -1 in an area of size (Random integer number between 1 and 10) and shape Circle
              • Custom script: call RemoveLocation(udg_APoint)
            • Else - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • Vib Equal to 2
            • Then - Actions
              • Set APoint = (Random point in (Playable map area))
              • Environment - Change terrain type at APoint to FiTer using variation -1 in an area of size (Random integer number between 1 and 10) and shape Circle
              • Custom script: call RemoveLocation(udg_APoint)
            • Else - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • Vib Equal to 3
            • Then - Actions
              • Set APoint = (Random point in (Playable map area))
              • Environment - Change terrain type at APoint to FoTer using variation -1 in an area of size (Random integer number between 1 and 10) and shape Circle
              • Custom script: call RemoveLocation(udg_APoint)
            • Else - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • Vib Equal to 4
            • Then - Actions
              • Set APoint = (Random point in (Playable map area))
              • Environment - Change terrain type at APoint to Leaves using variation -1 in an area of size (Random integer number between 1 and 10) and shape Circle
              • Custom script: call RemoveLocation(udg_APoint)
            • Else - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • Vib Equal to 5
            • Then - Actions
              • Set APoint = (Random point in (Playable map area))
              • Environment - Change terrain type at APoint to STer using variation -1 in an area of size (Random integer number between 1 and 10) and shape Circle
              • Custom script: call RemoveLocation(udg_APoint)
            • Else - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • Vib Equal to 6
            • Then - Actions
              • Set APoint = (Random point in (Playable map area))
              • Environment - Change terrain type at APoint to TTer using variation -1 in an area of size (Random integer number between 1 and 10) and shape Circle
              • Custom script: call RemoveLocation(udg_APoint)
            • Else - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • Vib Equal to 7
            • Then - Actions
              • Set APoint = (Random point in (Playable map area))
              • Environment - Change terrain type at APoint to STer using variation -1 in an area of size (Random integer number between 1 and 10) and shape Circle
              • Custom script: call RemoveLocation(udg_APoint)
            • Else - Actions

  • CreateStartingTrees
    • Events
    • Conditions
    • Actions
      • Set Vib = (Random integer number between 1 and 10)
      • For each (Integer A) from 1 to (Random integer number between 37 and 50), do (Actions)
        • Loop - Actions
          • Set APoint = (Random point in (Playable map area))
          • Destructible - Create a ST at APoint facing (Random angle) with scale 1.00 and variation Vib
          • Unit - Create 1 Zone Indicator (Custom Campaign) for Neutral Passive at APoint facing Default building facing degrees
          • Custom script: call RemoveLocation(udg_APoint)

  • CreateMainTrees
    • Events
    • Conditions
    • Actions
      • Set Rect = (Playable map area)
      • Destructible - Pick every destructible in Rect and do (Actions)
        • Loop - Actions
          • For each (Integer A) from 1 to (Random integer number between 30 and 90), do (Actions)
            • Loop - Actions
              • Set Point_A = (Position of (Picked destructible))
              • Set Point_B = (Point_A offset by (Random real number between 100.00 and 1000.00) towards (Random angle) degrees)
              • Set Vib2 = (Random integer number between 1 and 10)
              • Destructible - Create a MT at Point_B facing (Random angle) with scale 1.00 and variation Vib2
              • Set APoint = (Position of (Last created destructible))
              • Environment - Change terrain type at APoint to Leaves using variation -1 in an area of size 2 and shape Circle
              • Custom script: call RemoveLocation(udg_APoint)
      • Custom script: call RemoveRect(udg_Rect)

  • CreateStartLoc
    • Events
    • Conditions
    • Actions
      • For each (Integer A) from 1 to 8, do (Actions)
        • Loop - Actions
          • Set SLoc[(Integer A)] = (Random point in (Playable map area))

  • CreateFirstGoldmines
    • Events
    • Conditions
    • Actions
      • Set PGroup = (All players)
      • Player Group - Pick every player in PGroup and do (Actions)
        • Loop - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Race of (Picked player)) Equal to Human
            • Then - Actions
              • Unit - Create 1 Gold Mine for Neutral Passive at (SLoc[(Player number of (Picked player))] offset by 500.00 towards (Random real number between 0.00 and 360.00) degrees) facing Default building facing degrees
            • Else - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Race of (Picked player)) Equal to Orc
            • Then - Actions
              • Unit - Create 1 Gold Mine for Neutral Passive at (SLoc[(Player number of (Picked player))] offset by 500.00 towards (Random real number between 0.00 and 360.00) degrees) facing Default building facing degrees
            • Else - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Race of (Picked player)) Equal to Undead
            • Then - Actions
              • Unit - Create 1 Haunted Gold Mine for (Picked player) at (SLoc[(Player number of (Picked player))] offset by 500.00 towards (Random real number between 0.00 and 360.00) degrees) facing Default building facing degrees
            • Else - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Race of (Picked player)) Equal to Night Elf
            • Then - Actions
              • Unit - Create 1 Entangled Gold Mine for (Picked player) at (SLoc[(Player number of (Picked player))] offset by 500.00 towards (Random real number between 0.00 and 360.00) degrees) facing Default building facing degrees
              • Neutral Building - Set (Last created unit) to 12500 gold
            • Else - Actions
          • Custom script: call DestroyForce(udg_PGroup)

  • CreateMoreGoldMines
    • Events
    • Conditions
    • Actions
      • For each (Integer A) from 1 to (Random integer number between (Number of players) and 20), do (Actions)
        • Loop - Actions
          • Set APoint = (Random point in (Playable map area))
          • Unit - Create 1 Gold Mine for Neutral Passive at APoint facing Default building facing degrees
          • Custom script: call RemoveLocation(udg_APoint)

  • CreatePlayerUnits
    • Events
    • Conditions
    • Actions
      • Player Group - Pick every player in (All players) and do (Actions)
        • Loop - Actions
          • Camera - Pan camera for (Picked player) to SLoc[(Player number of (Picked player))] over 0.00 seconds
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Race of (Picked player)) Equal to Human
            • Then - Actions
              • Unit - Create 1 Town Hall for (Picked player) at (SLoc[(Player number of (Picked player))] offset by 100.00 towards (Random real number between 0.00 and 360.00) degrees) facing Default building facing degrees
              • Unit - Create 5 Peasant for (Picked player) at (SLoc[(Player number of (Picked player))] offset by 200.00 towards (Random real number between 0.00 and 360.00) degrees) facing Default building facing degrees
            • Else - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Race of (Picked player)) Equal to Orc
            • Then - Actions
              • Unit - Create 1 Great Hall for (Picked player) at (SLoc[(Player number of (Picked player))] offset by 100.00 towards (Random real number between 0.00 and 360.00) degrees) facing Default building facing degrees
              • Unit - Create 5 Peon for (Picked player) at (SLoc[(Player number of (Picked player))] offset by 200.00 towards (Random real number between 0.00 and 360.00) degrees) facing Default building facing degrees
            • Else - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Race of (Picked player)) Equal to Undead
            • Then - Actions
              • Unit - Create 1 Necropolis for (Picked player) at (SLoc[(Player number of (Picked player))] offset by 100.00 towards (Random real number between 0.00 and 360.00) degrees) facing Default building facing degrees
              • Unit - Create 3 Acolyte for (Picked player) at (SLoc[(Player number of (Picked player))] offset by 200.00 towards (Random real number between 0.00 and 360.00) degrees) facing Default building facing degrees
              • Unit - Create 1 Ghoul for (Picked player) at (SLoc[(Player number of (Picked player))] offset by 200.00 towards (Random real number between 0.00 and 360.00) degrees) facing Default building facing degrees
            • Else - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Race of (Picked player)) Equal to Night Elf
            • Then - Actions
              • Unit - Create 1 Tree of Life for (Picked player) at (SLoc[(Player number of (Picked player))] offset by 100.00 towards (Random real number between 0.00 and 360.00) degrees) facing Default building facing degrees
              • Unit - Create 5 Wisp for (Picked player) at (SLoc[(Player number of (Picked player))] offset by 200.00 towards (Random real number between 0.00 and 360.00) degrees) facing Default building facing degrees
            • Else - Actions

  • CreateNaturalBuildings
    • Events
    • Conditions
    • Actions
      • For each (Integer A) from 1 to (Random integer number between 0 and 20), do (Actions)
        • Loop - Actions
          • Set Vib = (Random integer number between 1 and 7)
          • Set Vib2 = (Random integer number between 1 and 6)
          • Set Poin = (Random point in (Playable map area))
          • Set Accept = True
          • For each (Integer A) from 1 to 8, do (Actions)
            • Loop - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • And - All (Conditions) are true
                    • Conditions
                      • ((Player((Integer A))) slot status) Equal to Is playing
                      • (Distance between Poin and SLoc[(Integer A)]) Less than or equal to 1300.00
                • Then - Actions
                  • Set Accept = False
                • Else - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • Accept Equal to True
            • Then - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • Vib Equal to 1
                • Then - Actions
                  • Unit - Create 1 Goblin Merchant for Neutral Passive at Poin facing Default building facing degrees
                  • Set APoint = (Position of (Last created unit))
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • Vib2 Equal to 1
                    • Then - Actions
                      • Unit - Create (Random integer number between 3 and 5) Creep1Level1 for Neutral Hostile at APoint facing (Random angle) degrees
                      • Unit - Create (Random integer number between 1 and 2) Creep1Level2 for Neutral Hostile at APoint facing (Random angle) degrees
                    • Else - Actions
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • Vib2 Equal to 2
                    • Then - Actions
                      • Unit - Create (Random integer number between 3 and 5) Creep2Level1 for Neutral Hostile at APoint facing (Random angle) degrees
                      • Unit - Create (Random integer number between 1 and 2) Creep2Level2 for Neutral Hostile at APoint facing (Random angle) degrees
                    • Else - Actions
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • Vib2 Equal to 3
                    • Then - Actions
                      • Unit - Create (Random integer number between 3 and 5) Creep3Level1 for Neutral Hostile at APoint facing (Random angle) degrees
                      • Unit - Create (Random integer number between 1 and 2) Creep3Level2 for Neutral Hostile at APoint facing (Random angle) degrees
                    • Else - Actions
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • Vib2 Equal to 4
                    • Then - Actions
                      • Unit - Create (Random integer number between 3 and 5) Creep4Level1 for Neutral Hostile at APoint facing (Random angle) degrees
                      • Unit - Create (Random integer number between 1 and 2) Creep4Level2 for Neutral Hostile at APoint facing (Random angle) degrees
                    • Else - Actions
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • Vib2 Equal to 5
                    • Then - Actions
                      • Unit - Create (Random integer number between 3 and 5) Creep5Level1 for Neutral Hostile at APoint facing (Random angle) degrees
                      • Unit - Create (Random integer number between 1 and 2) Creep5Level2 for Neutral Hostile at APoint facing (Random angle) degrees
                    • Else - Actions
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • Vib2 Equal to 6
                    • Then - Actions
                      • Unit - Create (Random integer number between 3 and 5) Creep6Level1 for Neutral Hostile at APoint facing (Random angle) degrees
                      • Unit - Create (Random integer number between 1 and 2) Creep6Level2 for Neutral Hostile at APoint facing (Random angle) degrees
                    • Else - Actions
                  • Custom script: call RemoveLocation(udg_APoint)
                • Else - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • Vib Equal to 2
                • Then - Actions
                  • Unit - Create 1 Fountain of Health for Neutral Passive at Poin facing Default building facing degrees
                  • Set APoint = (Position of (Last created unit))
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • Vib2 Equal to 1
                    • Then - Actions
                      • Unit - Create (Random integer number between 3 and 5) Creep1Level1 for Neutral Hostile at APoint facing (Random angle) degrees
                      • Unit - Create (Random integer number between 1 and 2) Creep1Level2 for Neutral Hostile at APoint facing (Random angle) degrees
                    • Else - Actions
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • Vib2 Equal to 2
                    • Then - Actions
                      • Unit - Create (Random integer number between 3 and 5) Creep2Level1 for Neutral Hostile at APoint facing (Random angle) degrees
                      • Unit - Create (Random integer number between 1 and 2) Creep2Level2 for Neutral Hostile at APoint facing (Random angle) degrees
                    • Else - Actions
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • Vib2 Equal to 3
                    • Then - Actions
                      • Unit - Create (Random integer number between 3 and 5) Creep3Level1 for Neutral Hostile at APoint facing (Random angle) degrees
                      • Unit - Create (Random integer number between 1 and 2) Creep3Level2 for Neutral Hostile at APoint facing (Random angle) degrees
                    • Else - Actions
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • Vib2 Equal to 4
                    • Then - Actions
                      • Unit - Create (Random integer number between 3 and 5) Creep4Level1 for Neutral Hostile at APoint facing (Random angle) degrees
                      • Unit - Create (Random integer number between 1 and 2) Creep4Level2 for Neutral Hostile at APoint facing (Random angle) degrees
                    • Else - Actions
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • Vib2 Equal to 5
                    • Then - Actions
                      • Unit - Create (Random integer number between 3 and 5) Creep5Level1 for Neutral Hostile at APoint facing (Random angle) degrees
                      • Unit - Create (Random integer number between 1 and 2) Creep5Level2 for Neutral Hostile at APoint facing (Random angle) degrees
                    • Else - Actions
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • Vib2 Equal to 6
                    • Then - Actions
                      • Unit - Create (Random integer number between 3 and 5) Creep6Level1 for Neutral Hostile at APoint facing (Random angle) degrees
                      • Unit - Create (Random integer number between 1 and 2) Creep6Level2 for Neutral Hostile at APoint facing (Random angle) degrees
                    • Else - Actions
                  • Custom script: call RemoveLocation(udg_APoint)
                • Else - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • Vib Equal to 3
                • Then - Actions
                  • Unit - Create 1 Fountain of Mana for Neutral Passive at Poin facing Default building facing degrees
                  • Set APoint = (Position of (Last created unit))
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • Vib2 Equal to 1
                    • Then - Actions
                      • Unit - Create (Random integer number between 3 and 5) Creep1Level1 for Neutral Hostile at APoint facing (Random angle) degrees
                      • Unit - Create (Random integer number between 1 and 2) Creep1Level2 for Neutral Hostile at APoint facing (Random angle) degrees
                    • Else - Actions
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • Vib2 Equal to 2
                    • Then - Actions
                      • Unit - Create (Random integer number between 3 and 5) Creep2Level1 for Neutral Hostile at APoint facing (Random angle) degrees
                      • Unit - Create (Random integer number between 1 and 2) Creep2Level2 for Neutral Hostile at APoint facing (Random angle) degrees
                    • Else - Actions
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • Vib2 Equal to 3
                    • Then - Actions
                      • Unit - Create (Random integer number between 3 and 5) Creep3Level1 for Neutral Hostile at APoint facing (Random angle) degrees
                      • Unit - Create (Random integer number between 1 and 2) Creep3Level2 for Neutral Hostile at APoint facing (Random angle) degrees
                    • Else - Actions
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • Vib2 Equal to 4
                    • Then - Actions
                      • Unit - Create (Random integer number between 3 and 5) Creep4Level1 for Neutral Hostile at APoint facing (Random angle) degrees
                      • Unit - Create (Random integer number between 1 and 2) Creep4Level2 for Neutral Hostile at APoint facing (Random angle) degrees
                    • Else - Actions
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • Vib2 Equal to 5
                    • Then - Actions
                      • Unit - Create (Random integer number between 3 and 5) Creep5Level1 for Neutral Hostile at APoint facing (Random angle) degrees
                      • Unit - Create (Random integer number between 1 and 2) Creep5Level2 for Neutral Hostile at APoint facing (Random angle) degrees
                    • Else - Actions
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • Vib2 Equal to 6
                    • Then - Actions
                      • Unit - Create (Random integer number between 3 and 5) Creep6Level1 for Neutral Hostile at APoint facing (Random angle) degrees
                      • Unit - Create (Random integer number between 1 and 2) Creep6Level2 for Neutral Hostile at APoint facing (Random angle) degrees
                    • Else - Actions
                  • Custom script: call RemoveLocation(udg_APoint)
                • Else - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • Vib Equal to 4
                • Then - Actions
                  • Unit - Create 1 Goblin Laboratory for Neutral Passive at Poin facing Default building facing degrees
                  • Set APoint = (Position of (Last created unit))
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • Vib2 Equal to 1
                    • Then - Actions
                      • Unit - Create (Random integer number between 3 and 5) Creep1Level1 for Neutral Hostile at APoint facing (Random angle) degrees
                      • Unit - Create (Random integer number between 1 and 2) Creep1Level2 for Neutral Hostile at APoint facing (Random angle) degrees
                    • Else - Actions
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • Vib2 Equal to 2
                    • Then - Actions
                      • Unit - Create (Random integer number between 3 and 5) Creep2Level1 for Neutral Hostile at APoint facing (Random angle) degrees
                      • Unit - Create (Random integer number between 1 and 2) Creep2Level2 for Neutral Hostile at APoint facing (Random angle) degrees
                    • Else - Actions
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • Vib2 Equal to 3
                    • Then - Actions
                      • Unit - Create (Random integer number between 3 and 5) Creep3Level1 for Neutral Hostile at APoint facing (Random angle) degrees
                      • Unit - Create (Random integer number between 1 and 2) Creep3Level2 for Neutral Hostile at APoint facing (Random angle) degrees
                    • Else - Actions
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • Vib2 Equal to 4
                    • Then - Actions
                      • Unit - Create (Random integer number between 3 and 5) Creep4Level1 for Neutral Hostile at APoint facing (Random angle) degrees
                      • Unit - Create (Random integer number between 1 and 2) Creep4Level2 for Neutral Hostile at APoint facing (Random angle) degrees
                    • Else - Actions
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • Vib2 Equal to 5
                    • Then - Actions
                      • Unit - Create (Random integer number between 3 and 5) Creep5Level1 for Neutral Hostile at APoint facing (Random angle) degrees
                      • Unit - Create (Random integer number between 1 and 2) Creep5Level2 for Neutral Hostile at APoint facing (Random angle) degrees
                    • Else - Actions
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • Vib2 Equal to 6
                    • Then - Actions
                      • Unit - Create (Random integer number between 3 and 5) Creep6Level1 for Neutral Hostile at APoint facing (Random angle) degrees
                      • Unit - Create (Random integer number between 1 and 2) Creep6Level2 for Neutral Hostile at APoint facing (Random angle) degrees
                    • Else - Actions
                  • Custom script: call RemoveLocation(udg_APoint)
                • Else - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • Vib Equal to 5
                • Then - Actions
                  • Unit - Create 1 Tavern for Neutral Passive at Poin facing Default building facing degrees
                  • Set APoint = (Position of (Last created unit))
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • Vib2 Equal to 1
                    • Then - Actions
                      • Unit - Create (Random integer number between 3 and 5) Creep1Level1 for Neutral Hostile at APoint facing (Random angle) degrees
                      • Unit - Create (Random integer number between 1 and 2) Creep1Level2 for Neutral Hostile at APoint facing (Random angle) degrees
                    • Else - Actions
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • Vib2 Equal to 2
                    • Then - Actions
                      • Unit - Create (Random integer number between 3 and 5) Creep2Level1 for Neutral Hostile at APoint facing (Random angle) degrees
                      • Unit - Create (Random integer number between 1 and 2) Creep2Level2 for Neutral Hostile at APoint facing (Random angle) degrees
                    • Else - Actions
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • Vib2 Equal to 3
                    • Then - Actions
                      • Unit - Create (Random integer number between 3 and 5) Creep3Level1 for Neutral Hostile at APoint facing (Random angle) degrees
                      • Unit - Create (Random integer number between 1 and 2) Creep3Level2 for Neutral Hostile at APoint facing (Random angle) degrees
                    • Else - Actions
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • Vib2 Equal to 4
                    • Then - Actions
                      • Unit - Create (Random integer number between 3 and 5) Creep4Level1 for Neutral Hostile at APoint facing (Random angle) degrees
                      • Unit - Create (Random integer number between 1 and 2) Creep4Level2 for Neutral Hostile at APoint facing (Random angle) degrees
                    • Else - Actions
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • Vib2 Equal to 5
                    • Then - Actions
                      • Unit - Create (Random integer number between 3 and 5) Creep5Level1 for Neutral Hostile at APoint facing (Random angle) degrees
                      • Unit - Create (Random integer number between 1 and 2) Creep5Level2 for Neutral Hostile at APoint facing (Random angle) degrees
                    • Else - Actions
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • Vib2 Equal to 6
                    • Then - Actions
                      • Unit - Create (Random integer number between 3 and 5) Creep6Level1 for Neutral Hostile at APoint facing (Random angle) degrees
                      • Unit - Create (Random integer number between 1 and 2) Creep6Level2 for Neutral Hostile at APoint facing (Random angle) degrees
                    • Else - Actions
                  • Custom script: call RemoveLocation(udg_APoint)
                • Else - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • Vib Equal to 6
                • Then - Actions
                  • Unit - Create 1 Marketplace for Neutral Passive at Poin facing Default building facing degrees
                  • Set APoint = (Position of (Last created unit))
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • Vib2 Equal to 1
                    • Then - Actions
                      • Unit - Create (Random integer number between 3 and 5) Creep1Level1 for Neutral Hostile at APoint facing (Random angle) degrees
                      • Unit - Create (Random integer number between 1 and 2) Creep1Level2 for Neutral Hostile at APoint facing (Random angle) degrees
                    • Else - Actions
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • Vib2 Equal to 2
                    • Then - Actions
                      • Unit - Create (Random integer number between 3 and 5) Creep2Level1 for Neutral Hostile at APoint facing (Random angle) degrees
                      • Unit - Create (Random integer number between 1 and 2) Creep2Level2 for Neutral Hostile at APoint facing (Random angle) degrees
                    • Else - Actions
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • Vib2 Equal to 3
                    • Then - Actions
                      • Unit - Create (Random integer number between 3 and 5) Creep3Level1 for Neutral Hostile at APoint facing (Random angle) degrees
                      • Unit - Create (Random integer number between 1 and 2) Creep3Level2 for Neutral Hostile at APoint facing (Random angle) degrees
                    • Else - Actions
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • Vib2 Equal to 4
                    • Then - Actions
                      • Unit - Create (Random integer number between 3 and 5) Creep4Level1 for Neutral Hostile at APoint facing (Random angle) degrees
                      • Unit - Create (Random integer number between 1 and 2) Creep4Level2 for Neutral Hostile at APoint facing (Random angle) degrees
                    • Else - Actions
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • Vib2 Equal to 5
                    • Then - Actions
                      • Unit - Create (Random integer number between 3 and 5) Creep5Level1 for Neutral Hostile at APoint facing (Random angle) degrees
                      • Unit - Create (Random integer number between 1 and 2) Creep5Level2 for Neutral Hostile at APoint facing (Random angle) degrees
                    • Else - Actions
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • Vib2 Equal to 6
                    • Then - Actions
                      • Unit - Create (Random integer number between 3 and 5) Creep6Level1 for Neutral Hostile at APoint facing (Random angle) degrees
                      • Unit - Create (Random integer number between 1 and 2) Creep6Level2 for Neutral Hostile at APoint facing (Random angle) degrees
                    • Else - Actions
                  • Custom script: call RemoveLocation(udg_APoint)
                • Else - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • Vib Equal to 7
                • Then - Actions
                  • Unit - Create 1 NBUG for Neutral Passive at Poin facing Default building facing degrees
                  • Set APoint = (Position of (Last created unit))
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • Vib2 Equal to 1
                    • Then - Actions
                      • Unit - Create (Random integer number between 3 and 5) Creep1Level1 for Neutral Hostile at APoint facing (Random angle) degrees
                      • Unit - Create (Random integer number between 1 and 2) Creep1Level2 for Neutral Hostile at APoint facing (Random angle) degrees
                    • Else - Actions
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • Vib2 Equal to 2
                    • Then - Actions
                      • Unit - Create (Random integer number between 3 and 5) Creep2Level1 for Neutral Hostile at APoint facing (Random angle) degrees
                      • Unit - Create (Random integer number between 1 and 2) Creep2Level2 for Neutral Hostile at APoint facing (Random angle) degrees
                    • Else - Actions
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • Vib2 Equal to 3
                    • Then - Actions
                      • Unit - Create (Random integer number between 3 and 5) Creep3Level1 for Neutral Hostile at APoint facing (Random angle) degrees
                      • Unit - Create (Random integer number between 1 and 2) Creep3Level2 for Neutral Hostile at APoint facing (Random angle) degrees
                    • Else - Actions
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • Vib2 Equal to 4
                    • Then - Actions
                      • Unit - Create (Random integer number between 3 and 5) Creep4Level1 for Neutral Hostile at APoint facing (Random angle) degrees
                      • Unit - Create (Random integer number between 1 and 2) Creep4Level2 for Neutral Hostile at APoint facing (Random angle) degrees
                    • Else - Actions
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • Vib2 Equal to 5
                    • Then - Actions
                      • Unit - Create (Random integer number between 3 and 5) Creep5Level1 for Neutral Hostile at APoint facing (Random angle) degrees
                      • Unit - Create (Random integer number between 1 and 2) Creep5Level2 for Neutral Hostile at APoint facing (Random angle) degrees
                    • Else - Actions
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • Vib2 Equal to 6
                    • Then - Actions
                      • Unit - Create (Random integer number between 3 and 5) Creep6Level1 for Neutral Hostile at APoint facing (Random angle) degrees
                      • Unit - Create (Random integer number between 1 and 2) Creep6Level2 for Neutral Hostile at APoint facing (Random angle) degrees
                    • Else - Actions
                  • Custom script: call RemoveLocation(udg_APoint)
                • Else - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • Vib Equal to 8
                • Then - Actions
                  • Unit - Create 1 NBUG2 for Neutral Passive at Poin facing Default building facing degrees
                  • Set APoint = (Position of (Last created unit))
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • Vib2 Equal to 1
                    • Then - Actions
                      • Unit - Create (Random integer number between 3 and 5) Creep1Level1 for Neutral Hostile at APoint facing (Random angle) degrees
                      • Unit - Create (Random integer number between 1 and 2) Creep1Level2 for Neutral Hostile at APoint facing (Random angle) degrees
                    • Else - Actions
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • Vib2 Equal to 2
                    • Then - Actions
                      • Unit - Create (Random integer number between 3 and 5) Creep2Level1 for Neutral Hostile at APoint facing (Random angle) degrees
                      • Unit - Create (Random integer number between 1 and 2) Creep2Level2 for Neutral Hostile at APoint facing (Random angle) degrees
                    • Else - Actions
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • Vib2 Equal to 3
                    • Then - Actions
                      • Unit - Create (Random integer number between 3 and 5) Creep3Level1 for Neutral Hostile at APoint facing (Random angle) degrees
                      • Unit - Create (Random integer number between 1 and 2) Creep3Level2 for Neutral Hostile at APoint facing (Random angle) degrees
                    • Else - Actions
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • Vib2 Equal to 4
                    • Then - Actions
                      • Unit - Create (Random integer number between 3 and 5) Creep4Level1 for Neutral Hostile at APoint facing (Random angle) degrees
                      • Unit - Create (Random integer number between 1 and 2) Creep4Level2 for Neutral Hostile at APoint facing (Random angle) degrees
                    • Else - Actions
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • Vib2 Equal to 5
                    • Then - Actions
                      • Unit - Create (Random integer number between 3 and 5) Creep5Level1 for Neutral Hostile at APoint facing (Random angle) degrees
                      • Unit - Create (Random integer number between 1 and 2) Creep5Level2 for Neutral Hostile at APoint facing (Random angle) degrees
                    • Else - Actions
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • Vib2 Equal to 6
                    • Then - Actions
                      • Unit - Create (Random integer number between 3 and 5) Creep6Level1 for Neutral Hostile at APoint facing (Random angle) degrees
                      • Unit - Create (Random integer number between 1 and 2) Creep6Level2 for Neutral Hostile at APoint facing (Random angle) degrees
                    • Else - Actions
                  • Custom script: call RemoveLocation(udg_APoint)
                • Else - Actions
            • Else - Actions

  • CreateCreeps
    • Events
    • Conditions
    • Actions
      • For each (Integer B) from 20 to 40, do (Actions)
        • Loop - Actions
          • Set Accept = False
          • Set Poin = (Random point in (Playable map area))
          • For each (Integer A) from 1 to 8, do (Actions)
            • Loop - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • (Distance between Poin and SLoc[(Integer A)]) Less than 3000.00
                • Then - Actions
                  • Set Accept = True
                • Else - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • Accept Equal to False
            • Then - Actions
              • Set Vib = (Random integer number between 1 and 7)
              • Set Vib2 = (Random integer number between 1 and 7)
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • Or - Any (Conditions) are true
                    • Conditions
                      • Vib Equal to 1
                      • Vib2 Equal to 1
                • Then - Actions
                  • Unit - Create (Random integer number between 2 and 5) Creep1Level1 for Neutral Hostile at Poin facing (Random angle) degrees
                • Else - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • Or - Any (Conditions) are true
                    • Conditions
                      • Vib Equal to 2
                      • Vib2 Equal to 2
                • Then - Actions
                  • Unit - Create (Random integer number between 2 and 5) Creep2Level1 for Neutral Hostile at Poin facing (Random angle) degrees
                • Else - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • Or - Any (Conditions) are true
                    • Conditions
                      • Vib Equal to 3
                      • Vib2 Equal to 3
                • Then - Actions
                  • Unit - Create (Random integer number between 2 and 5) Creep3Level1 for Neutral Hostile at Poin facing (Random angle) degrees
                • Else - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • Or - Any (Conditions) are true
                    • Conditions
                      • Vib Equal to 4
                      • Vib2 Equal to 4
                • Then - Actions
                  • Unit - Create (Random integer number between 2 and 5) Creep4Level1 for Neutral Hostile at Poin facing (Random angle) degrees
                • Else - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • Or - Any (Conditions) are true
                    • Conditions
                      • Vib Equal to 5
                      • Vib2 Equal to 5
                • Then - Actions
                  • Unit - Create (Random integer number between 2 and 5) Creep5Level1 for Neutral Hostile at Poin facing (Random angle) degrees
                • Else - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • Or - Any (Conditions) are true
                    • Conditions
                      • Vib Equal to 6
                      • Vib2 Equal to 6
                • Then - Actions
                  • Unit - Create (Random integer number between 2 and 5) Creep6Level1 for Neutral Hostile at Poin facing (Random angle) degrees
                • Else - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • Or - Any (Conditions) are true
                    • Conditions
                      • Vib Equal to 7
                      • Vib2 Equal to 7
                • Then - Actions
                  • Unit - Create (Random integer number between 2 and 5) Creep7Level1 for Neutral Hostile at Poin facing (Random angle) degrees
                • Else - Actions
              • Set Vib = (Random integer number between 1 and 6)
              • Set Vib2 = (Random integer number between 1 and 6)
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • Or - Any (Conditions) are true
                    • Conditions
                      • Vib Equal to 1
                      • Vib2 Equal to 1
                • Then - Actions
                  • Unit - Create (Random integer number between 0 and 3) Creep1Level2 for Neutral Hostile at Poin facing (Random angle) degrees
                • Else - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • Or - Any (Conditions) are true
                    • Conditions
                      • Vib Equal to 2
                      • Vib2 Equal to 2
                • Then - Actions
                  • Unit - Create (Random integer number between 0 and 3) Creep2Level2 for Neutral Hostile at Poin facing (Random angle) degrees
                • Else - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • Or - Any (Conditions) are true
                    • Conditions
                      • Vib Equal to 3
                      • Vib2 Equal to 3
                • Then - Actions
                  • Unit - Create (Random integer number between 0 and 3) Creep3Level2 for Neutral Hostile at Poin facing (Random angle) degrees
                • Else - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • Or - Any (Conditions) are true
                    • Conditions
                      • Vib Equal to 4
                      • Vib2 Equal to 4
                • Then - Actions
                  • Unit - Create (Random integer number between 0 and 3) Creep4Level2 for Neutral Hostile at Poin facing (Random angle) degrees
                • Else - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • Or - Any (Conditions) are true
                    • Conditions
                      • Vib Equal to 5
                      • Vib2 Equal to 5
                • Then - Actions
                  • Unit - Create (Random integer number between 0 and 3) Creep5Level2 for Neutral Hostile at Poin facing (Random angle) degrees
                • Else - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • Or - Any (Conditions) are true
                    • Conditions
                      • Vib Equal to 6
                      • Vib2 Equal to 6
                • Then - Actions
                  • Unit - Create (Random integer number between 0 and 3) Creep6Level2 for Neutral Hostile at Poin facing (Random angle) degrees
                • Else - Actions
              • Set Vib = (Random integer number between 1 and 6)
              • Set Vib2 = (Random integer number between 1 and 6)
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • Or - Any (Conditions) are true
                    • Conditions
                      • Vib Equal to 1
                      • Vib2 Equal to 1
                • Then - Actions
                  • Unit - Create (Random integer number between 0 and 1) Creep1Level3 for Neutral Hostile at Poin facing (Random angle) degrees
                • Else - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • Or - Any (Conditions) are true
                    • Conditions
                      • Vib Equal to 3
                      • Vib2 Equal to 3
                • Then - Actions
                  • Unit - Create (Random integer number between 0 and 1) Creep2Level3 for Neutral Hostile at Poin facing (Random angle) degrees
                • Else - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • Or - Any (Conditions) are true
                    • Conditions
                      • Vib Equal to 5
                      • Vib2 Equal to 5
                • Then - Actions
                  • Unit - Create (Random integer number between 0 and 1) Creep3Level3 for Neutral Hostile at Poin facing (Random angle) degrees
                • Else - Actions
            • Else - Actions

  • InitialazeMap
    • Events
    • Conditions
    • Actions
      • Melee Game - Use melee time of day (for all players)
      • Melee Game - Limit Heroes to 1 per Hero-type (for all players)
      • Melee Game - Give trained Heroes a Scroll of Town Portal (for all players)
      • Melee Game - Set starting resources (for all players)
      • Melee Game - Run melee AI scripts (for computer players)
      • Melee Game - Enforce victory/defeat conditions (for all players)

  • ShowTrees
    • Events
    • Conditions
    • Actions
      • Neutral Building - Change the special minimap icon to ReplaceableTextures\WorldEditUI\Doodad-Destructible
      • Set Group = (Units in (Playable map area))
      • Unit Group - Pick every unit in Group and do (Actions)
        • Loop - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Unit-type of (Picked unit)) Equal to Zone Indicator (Custom Campaign)
            • Then - Actions
              • Neutral Building - Turn special minimap icon On for (Picked unit)
              • Custom script: call DestroyGroup(udg_Group)
            • Else - Actions
Version History


Fixed the the "RemoveLocation(udg_Point)" by "RemoveLocation(udg_APoint)" since the variable changed.
Triggers working? Should!
Added Version History

Made the buttonz.
ActionsActions
 
Last edited:
Level 31
Joined
May 3, 2008
Messages
3,155
all the if/then/else should be set into 1 like this

  • Build Map
    • Events
      • Map initialization
    • Conditions
    • Actions
      • Cinematic - Fade in over 2.00 seconds using texture Black Mask and color (0.00%, 0.00%, 0.00%) with 0.00% transparency
      • Game - Display to (All players) the text: Wait until the map ...
      • Set Vib = (Random integer number between 1 and 8)
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • Vib Equal to 1
        • Then - Actions
          • Set FTer = Ashenvale - Dirt
          • Set FiTer = Ashenvale - Lumpy Grass
          • Set FoTer = Ashenvale - Grass
          • Set STer = Ashenvale - Grassy Dirt
          • Set TTer = Ashenvale - Rough Dirt
          • Set Leaves = Ashenvale - Leaves
          • Set Unbuild = Ashenvale - Rock
          • Set MT = Ashenvale Tree Wall
          • Set Creep1Level1 = Dark Troll
          • Set Creep2Level1 = Dark Troll Shadow Priest
          • Set Creep3Level1 = Green Dragon Whelp
          • Set Creep4Level1 = Furbolg
          • Set Creep5Level1 = Furbolg Shaman
          • Set Creep6Level1 = Satyr
          • Set Creep7Level1 = Satyr Trickster
          • Set Creep1Level2 = Dark Troll Trapper
          • Set Creep2Level2 = Dark Troll Berserker
          • Set Creep3Level2 = Satyr Shadowdancer
          • Set Creep4Level2 = Green Drake
          • Set Creep5Level2 = Furbolg Tracker
          • Set Creep6Level2 = Satyr Soulstealer
          • Set Creep1Level3 = Dark Troll Warlord
          • Set Creep2Level3 = Furbolg Ursa Warrior
          • Set Creep3Level3 = Satyr Hellcaller
          • Set NBUG = Green Dragon Roost
          • Set NBUG2 = Mercenary Camp (Ashenvale)
          • Set Vib = (Random integer number between 1 and 3)
          • If (Vib Equal to 1) then do (Environment - Create at (Playable map area) the weather effect Ashenvale Rain (Light)) else do (Do nothing)
          • If (Vib Equal to 2) then do (Environment - Create at (Playable map area) the weather effect Ashenvale Rain (Heavy)) else do (Do nothing)
        • Else - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • Vib Equal to 2
            • Then - Actions
              • Set FTer = Barrens - Dirt
              • Set FiTer = Barrens - Dark Desert
              • Set FoTer = Barrens - Grassy Dirt
              • Set STer = Barrens - Desert
              • Set TTer = Barrens - Rough Dirt
              • Set Leaves = Barrens - Grass
              • Set Unbuild = Barrens - Rock
              • Set MT = Barrens Tree Wall
              • Set ST = Barrens Canopy Tree
              • Set Creep1Level1 = Centaur Archer
              • Set Creep2Level1 = Centaur Drudge
              • Set Creep3Level1 = Bronze Dragon Whelp
              • Set Creep4Level1 = Harpy Scout
              • Set Creep5Level1 = Harpy Rogue
              • Set Creep6Level1 = Quillboar
              • Set Creep7Level1 = Razormane Scout
              • Set Creep1Level2 = Centaur Impaler
              • Set Creep2Level2 = Centaur Outrunner
              • Set Creep3Level2 = Bronze Drake
              • Set Creep4Level2 = Harpy Windwitch
              • Set Creep5Level2 = Harpy Storm-hag
              • Set Creep6Level2 = Quillboar Hunter
              • Set Creep1Level3 = Centaur Khan
              • Set Creep2Level3 = Harpy Queen
              • Set Creep3Level3 = Razormane Chieftain
              • Set NBUG = Bronze Dragon Roost
              • Set NBUG2 = Mercenary Camp (Barrens)
            • Else - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • Vib Equal to 3
                • Then - Actions
                  • Set FTer = Lordaeron Summer - Dirt
                  • Set FiTer = Lordaeron Summer - Dark Grass
                  • Set FoTer = Lordaeron Summer - Grassy Dirt
                  • Set STer = Lordaeron Summer - Dirt
                  • Set TTer = Lordaeron Summer - Rough Dirt
                  • Set Leaves = Lordaeron Summer - Grass
                  • Set Unbuild = Lordaeron Summer - Rock
                  • Set MT = Summer Tree Wall
                  • Set ST = Summer Tree Wall
                  • Set Creep1Level1 = Forest Troll
                  • Set Creep2Level1 = Forest Troll Shadow Priest
                  • Set Creep3Level1 = Red Dragon Whelp
                  • Set Creep4Level1 = Gnoll Poacher
                  • Set Creep5Level1 = Gnoll
                  • Set Creep7Level1 = Ogre Warrior
                  • Set Creep6Level1 = Red Drake
                  • Set Creep1Level2 = Forest Troll Trapper
                  • Set Creep2Level2 = Gnoll Assassin
                  • Set Creep3Level2 = Gnoll Brute
                  • Set Creep4Level2 = Ogre Magi
                  • Set Creep5Level2 = Ogre Mauler
                  • Set Creep6Level2 = Mud Golem
                  • Set Creep1Level3 = Forest Troll Warlord
                  • Set Creep2Level3 = Gnoll Overseer
                  • Set Creep3Level3 = Ogre Lord
                  • Set NBUG = Red Dragon Roost
                  • Set NBUG2 = Mercenary Camp (Lordaeron Summer)
                  • Set Vib = (Random integer number between 1 and 2)
                  • If (Vib Equal to 1) then do (Environment - Create at (Playable map area) the weather effect Lordaeron Rain (Light)) else do (Do nothing)
                • Else - Actions
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • Vib Equal to 4
                    • Then - Actions
                      • Set FTer = Lordaeron Fall - Dirt
                      • Set FiTer = Lordaeron Fall - Dark Grass
                      • Set FoTer = Lordaeron Fall - Grassy Dirt
                      • Set STer = Lordaeron Fall - Dirt
                      • Set TTer = Lordaeron Fall - Rough Dirt
                      • Set Leaves = Lordaeron Fall - Grass
                      • Set Unbuild = Lordaeron Fall - Rock
                      • Set MT = Fall Tree Wall
                      • Set ST = Fall Tree Wall
                      • Set Creep1Level1 = Forest Troll
                      • Set Creep2Level1 = Forest Troll Shadow Priest
                      • Set Creep3Level1 = Black Dragon Whelp
                      • Set Creep4Level1 = Gnoll Poacher
                      • Set Creep5Level1 = Gnoll
                      • Set Creep7Level1 = Ogre Warrior
                      • Set Creep6Level1 = Black Drake
                      • Set Creep1Level2 = Forest Troll Trapper
                      • Set Creep2Level2 = Gnoll Assassin
                      • Set Creep3Level2 = Gnoll Brute
                      • Set Creep4Level2 = Ogre Magi
                      • Set Creep5Level2 = Ogre Mauler
                      • Set Creep6Level2 = Mud Golem
                      • Set Creep1Level3 = Forest Troll Warlord
                      • Set Creep2Level3 = Gnoll Overseer
                      • Set Creep3Level3 = Ogre Lord
                      • Set NBUG = Black Dragon Roost
                      • Set NBUG2 = Mercenary Camp (Lordaeron Fall)
                      • Set Vib = (Random integer number between 1 and 3)
                      • If (Vib Equal to 1) then do (Environment - Create at (Playable map area) the weather effect Lordaeron Rain (Light)) else do (Do nothing)
                      • If (Vib Equal to 2) then do (Environment - Create at (Playable map area) the weather effect Lordaeron Rain (Heavy)) else do (Do nothing)
                    • Else - Actions
                      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                        • If - Conditions
                          • Vib Equal to 5
                        • Then - Actions
                          • Set FTer = Lordaeron Winter - Dirt
                          • Set FiTer = Lordaeron Winter - Snow
                          • Set FoTer = Lordaeron Winter - Grassy Snow
                          • Set STer = Lordaeron Winter - Dirt
                          • Set TTer = Lordaeron Winter - Rough Dirt
                          • Set Leaves = Lordaeron Winter - Grass
                          • Set Unbuild = Lordaeron Winter - Rock
                          • Set MT = Snowy Tree Wall
                          • Set ST = Snowy Tree Wall
                          • Set Creep1Level1 = Ice Troll
                          • Set Creep2Level1 = Ice Troll Priest
                          • Set Creep3Level1 = Blue Dragon Whelp
                          • Set Creep4Level1 = Gnoll Poacher
                          • Set Creep5Level1 = Gnoll
                          • Set Creep7Level1 = Ogre Warrior
                          • Set Creep6Level1 = Blue Drake
                          • Set Creep1Level2 = Ice Troll Trapper
                          • Set Creep2Level2 = Gnoll Assassin
                          • Set Creep3Level2 = Gnoll Brute
                          • Set Creep4Level2 = Ogre Magi
                          • Set Creep5Level2 = Ogre Mauler
                          • Set Creep6Level2 = Mud Golem
                          • Set Creep1Level3 = Ice Troll Warlord
                          • Set Creep2Level3 = Gnoll Overseer
                          • Set Creep3Level3 = Ogre Lord
                          • Set NBUG = Blue Dragon Roost
                          • Set NBUG2 = Mercenary Camp (Lordaeron Winter)
                          • Set Vib = (Random integer number between 1 and 2)
                          • If (Vib Equal to 1) then do (Environment - Create at (Playable map area) the weather effect Northrend Snow (Light)) else do (Do nothing)
                        • Else - Actions
                          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                            • If - Conditions
                              • Vib Equal to 6
                            • Then - Actions
                              • Set FTer = Outland - Dirt
                              • Set FiTer = Outland - Cracked Dirt
                              • Set FoTer = Outland - Rough Dirt
                              • Set STer = Outland - Light Dirt
                              • Set TTer = Outland - Flat Stones
                              • Set Leaves = Outland - Rough Dirt
                              • Set Unbuild = Outland - Rock
                              • Set MT = Outland Tree Wall
                              • Set ST = Outland Tree Wall
                              • Set Creep1Level1 = Draenei Protector
                              • Set Creep2Level1 = Draenei Harbinger
                              • Set Creep3Level1 = Nether Dragon Hatchling
                              • Set Creep4Level1 = Felguard
                              • Set Creep5Level1 = Succubus
                              • Set Creep7Level1 = Vile Tormentor
                              • Set Creep6Level1 = Fel Beast
                              • Set Creep1Level2 = Draenei Darkslayer
                              • Set Creep2Level2 = Nether Drake
                              • Set Creep3Level2 = Bloodfiend
                              • Set Creep4Level2 = Fel Stalker
                              • Set Creep5Level2 = Vile Temptress
                              • Set Creep6Level2 = Maiden of Pain
                              • Set Creep1Level3 = Overlord
                              • Set Creep2Level3 = Queen of Suffering
                              • Set Creep3Level3 = Fel Ravager
                              • Set NBUG = Nether Dragon Roost
                              • Set NBUG2 = Mercenary Camp (Outland)
                            • Else - Actions
                              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                                • If - Conditions
                                  • Vib Equal to 7
                                • Then - Actions
                                  • Set Vib = (Random integer number between 1 and 2)
                                  • If (Vib Equal to 1) then do (Environment - Create at (Playable map area) the weather effect Lordaeron Rain (Heavy)) else do (Do nothing)
                                  • Set FTer = Sunken Ruins - Dirt
                                  • Set FiTer = Sunken Ruins - Rough Dirt
                                  • Set FoTer = Sunken Ruins - Grassy Dirt
                                  • Set STer = Sunken Ruins - Dark Grass
                                  • Set TTer = Sunken Ruins - Sand
                                  • Set Leaves = Sunken Ruins - Grass
                                  • Set Unbuild = Sunken Ruins - Large Bricks
                                  • Set MT = Ruins Tree Wall
                                  • Set ST = Ruins Canopy Tree
                                  • Set Creep1Level1 = Sea Giant
                                  • Set Creep2Level1 = Hydra Hatchling
                                  • Set Creep3Level1 = Makrura Prawn
                                  • Set Creep4Level1 = Makrura Pooldweller
                                  • Set Creep5Level1 = Mur'gul Tidewarrior
                                  • Set Creep7Level1 = Revenant of the Tides
                                  • Set Creep6Level1 = Stormreaver Apprentice
                                  • Set Creep1Level2 = Sea Giant Hunter
                                  • Set Creep2Level2 = Hydra
                                  • Set Creep3Level2 = Makrura Tidecaller
                                  • Set Creep4Level2 = Mur'gul Snarecaster
                                  • Set Creep5Level2 = Revenant of the Seas
                                  • Set Creep6Level2 = Stormreaver Necrolyte
                                  • Set Creep1Level3 = Ancient Hydra
                                  • Set Creep2Level3 = Stormreaver Warlock
                                  • Set Creep3Level3 = Deeplord Revenant
                                  • Set NBUG = Green Dragon Roost
                                  • Set NBUG2 = Mercenary Camp (Sunken Ruins)
                                  • Set Vib = (Random integer number between 1 and 3)
                                  • If (Vib Equal to 1) then do (Environment - Create at (Playable map area) the weather effect Ashenvale Rain (Light)) else do (Do nothing)
                                  • If (Vib Equal to 2) then do (Environment - Create at (Playable map area) the weather effect Ashenvale Rain (Heavy)) else do (Do nothing)
                                • Else - Actions
                                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                                    • If - Conditions
                                      • Vib Equal to 8
                                    • Then - Actions
                                      • Set FTer = Icecrown Glacier - Dirt
                                      • Set FiTer = Icecrown Glacier - Rough Dirt
                                      • Set FoTer = Icecrown Glacier - Dark Ice
                                      • Set STer = Icecrown Glacier - Snow
                                      • Set TTer = Icecrown Glacier - Snow
                                      • Set Leaves = Icecrown Glacier - Dirt
                                      • Set Unbuild = Icecrown Glacier - Rune Bricks
                                      • Set MT = Icecrown Tree Wall
                                      • Set ST = Icecrown Canopy Tree
                                      • Set Creep1Level1 = Barbed Arachnathid
                                      • Set Creep2Level1 = Crystal Arachnathid
                                      • Set Creep3Level1 = Blue Dragonspawn Meddler
                                      • Set Creep4Level1 = Faceless One Trickster
                                      • Set Creep5Level1 = Spiderling
                                      • Set Creep7Level1 = Tuskarr Fighter
                                      • Set Creep6Level1 = Tuskarr Spearman
                                      • Set Creep1Level2 = Arachnathid Earth-borer
                                      • Set Creep2Level2 = Blue Dragonspawn Apprentice
                                      • Set Creep3Level2 = Faceless One Terror
                                      • Set Creep4Level2 = Nerubian Webspinner
                                      • Set Creep5Level2 = Tuskarr Trapper
                                      • Set Creep6Level2 = Tuskarr Warrior
                                      • Set Creep1Level3 = Tuskarr Chieftain
                                      • Set Creep2Level3 = Faceless One Deathbringer
                                      • Set Creep3Level3 = Nerubian Queen
                                      • Set NBUG = Blue Dragon Roost
                                      • Set NBUG2 = Mercenary Camp (Icecrown Glacier)
                                      • Set Vib = (Random integer number between 1 and 4)
                                      • If (Vib Equal to 1) then do (Environment - Create at (Playable map area) the weather effect Northrend Snow (Heavy)) else do (Do nothing)
                                      • If (Vib Equal to 2) then do (Environment - Create at (Playable map area) the weather effect Northrend Snow (Light)) else do (Do nothing)
                                      • If (Vib Equal to 3) then do (Environment - Create at (Playable map area) the weather effect Northrend Blizzard) else do (Do nothing)
                                    • Else - Actions
      • Trigger - Run CreateFirstTerrain <gen> (checking conditions)
      • Trigger - Run CreateStartLoc <gen> (checking conditions)
      • Trigger - Run CreateStartingTrees <gen> (checking conditions)
      • Trigger - Run CreateMainTrees <gen> (checking conditions)
      • Trigger - Run CreateFirstGoldmines <gen> (checking conditions)
      • Trigger - Run CreateMoreGoldMines <gen> (checking conditions)
      • Trigger - Run CreatePlayerUnits <gen> (checking conditions)
      • Trigger - Run CreateNaturalBuildings <gen> (checking conditions)
      • Trigger - Run CreateCreeps <gen> (checking conditions)
      • Trigger - Run ShowTrees <gen> (checking conditions)
      • Trigger - Run InitialazeMap <gen> (checking conditions)
this leak about 20-39 times because the destroy location was outside the loop

  • CreateCreeps
    • Events
    • Conditions
    • Actions
      • For each (Integer B) from 20 to 40, do (Actions)
        • Loop - Actions
          • Set Accept = False
          • Set Poin = (Random point in (Playable map area))
          • For each (Integer A) from 1 to 8, do (Actions)
            • Loop - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • (Distance between Poin and SLoc[(Integer A)]) Less than 3000.00
                • Then - Actions
                  • Set Accept = True
                • Else - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • Accept Equal to False
            • Then - Actions
              • Set Vib = (Random integer number between 1 and 7)
              • Set Vib2 = (Random integer number between 1 and 7)
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • Or - Any (Conditions) are true
                    • Conditions
                      • Vib Equal to 1
                      • Vib2 Equal to 1
                • Then - Actions
                  • Unit - Create (Random integer number between 0 and 4) Creep1Level1 for Neutral Hostile at Poin facing (Random angle) degrees
                • Else - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • Or - Any (Conditions) are true
                    • Conditions
                      • Vib Equal to 2
                      • Vib2 Equal to 2
                • Then - Actions
                  • Unit - Create (Random integer number between 0 and 4) Creep2Level1 for Neutral Hostile at Poin facing (Random angle) degrees
                • Else - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • Or - Any (Conditions) are true
                    • Conditions
                      • Vib Equal to 3
                      • Vib2 Equal to 3
                • Then - Actions
                  • Unit - Create (Random integer number between 0 and 4) Creep3Level1 for Neutral Hostile at Poin facing (Random angle) degrees
                • Else - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • Or - Any (Conditions) are true
                    • Conditions
                      • Vib Equal to 4
                      • Vib2 Equal to 4
                • Then - Actions
                  • Unit - Create (Random integer number between 0 and 4) Creep4Level1 for Neutral Hostile at Poin facing (Random angle) degrees
                • Else - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • Or - Any (Conditions) are true
                    • Conditions
                      • Vib Equal to 5
                      • Vib2 Equal to 5
                • Then - Actions
                  • Unit - Create (Random integer number between 0 and 4) Creep5Level1 for Neutral Hostile at Poin facing (Random angle) degrees
                • Else - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • Or - Any (Conditions) are true
                    • Conditions
                      • Vib Equal to 6
                      • Vib2 Equal to 6
                • Then - Actions
                  • Unit - Create (Random integer number between 0 and 4) Creep6Level1 for Neutral Hostile at Poin facing (Random angle) degrees
                • Else - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • Or - Any (Conditions) are true
                    • Conditions
                      • Vib Equal to 7
                      • Vib2 Equal to 7
                • Then - Actions
                  • Unit - Create (Random integer number between 0 and 4) Creep7Level1 for Neutral Hostile at Poin facing (Random angle) degrees
                • Else - Actions
              • Set Vib = (Random integer number between 1 and 6)
              • Set Vib2 = (Random integer number between 1 and 6)
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • Or - Any (Conditions) are true
                    • Conditions
                      • Vib Equal to 1
                      • Vib2 Equal to 1
                • Then - Actions
                  • Unit - Create (Random integer number between 0 and 2) Creep1Level2 for Neutral Hostile at Poin facing (Random angle) degrees
                • Else - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • Or - Any (Conditions) are true
                    • Conditions
                      • Vib Equal to 2
                      • Vib2 Equal to 2
                • Then - Actions
                  • Unit - Create (Random integer number between 0 and 2) Creep2Level2 for Neutral Hostile at Poin facing (Random angle) degrees
                • Else - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • Or - Any (Conditions) are true
                    • Conditions
                      • Vib Equal to 3
                      • Vib2 Equal to 3
                • Then - Actions
                  • Unit - Create (Random integer number between 0 and 2) Creep3Level2 for Neutral Hostile at Poin facing (Random angle) degrees
                • Else - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • Or - Any (Conditions) are true
                    • Conditions
                      • Vib Equal to 4
                      • Vib2 Equal to 4
                • Then - Actions
                  • Unit - Create (Random integer number between 0 and 2) Creep4Level2 for Neutral Hostile at Poin facing (Random angle) degrees
                • Else - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • Or - Any (Conditions) are true
                    • Conditions
                      • Vib Equal to 5
                      • Vib2 Equal to 5
                • Then - Actions
                  • Unit - Create (Random integer number between 0 and 2) Creep5Level2 for Neutral Hostile at Poin facing (Random angle) degrees
                • Else - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • Or - Any (Conditions) are true
                    • Conditions
                      • Vib Equal to 6
                      • Vib2 Equal to 6
                • Then - Actions
                  • Unit - Create (Random integer number between 0 and 2) Creep6Level2 for Neutral Hostile at Poin facing (Random angle) degrees
                • Else - Actions
              • Set Vib = (Random integer number between 1 and 6)
              • Set Vib2 = (Random integer number between 1 and 6)
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • Or - Any (Conditions) are true
                    • Conditions
                      • Vib Equal to 1
                      • Vib2 Equal to 1
                • Then - Actions
                  • Unit - Create (Random integer number between 0 and 1) Creep1Level3 for Neutral Hostile at Poin facing (Random angle) degrees
                • Else - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • Or - Any (Conditions) are true
                    • Conditions
                      • Vib Equal to 3
                      • Vib2 Equal to 3
                • Then - Actions
                  • Unit - Create (Random integer number between 0 and 1) Creep2Level3 for Neutral Hostile at Poin facing (Random angle) degrees
                • Else - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • Or - Any (Conditions) are true
                    • Conditions
                      • Vib Equal to 5
                      • Vib2 Equal to 5
                • Then - Actions
                  • Unit - Create (Random integer number between 0 and 1) Creep3Level3 for Neutral Hostile at Poin facing (Random angle) degrees
                • Else - Actions
            • Else - Actions
      • Custom script: call RemoveLocation(udg_Poin)
 
Last edited by a moderator:
Level 28
Joined
Jan 26, 2007
Messages
4,789
I've never seen a melee race map with random terrain so this one is good, but sometimes too unpredictable...
I'm not surprised he made so much leaks... when 99% of maps are trrigers andthere are lots of them, its really hard to find all the leaks.

There's a really good one, though... (another one), it's been made a while ago, but I don't know the link and if I did, I wouldn't really bother unless you wanted me to send it :D
 
Level 3
Joined
Sep 5, 2008
Messages
21
i think the idea of the map is quite ineresting Warcraft 3 dont have the "random map" option unlike many other games of the same type.
you are "adding" the random map option but it still contain a lot of leaks (Ex: i played and 2 or 3 shops were swamped INTO trees so it makes it a little weird) for instance you shoud start the terraining of the map then reveale it then hide it so the player can know where are the trees and evrything because these weird icons on the minimap are not very nice to see ...
 
for instance you shoud start the terraining of the map then reveale it then hide it so the player can know where are the trees and evrything because these weird icons on the minimap are not very nice to see ...

I have tried all the ways i could and this one only WORKED to show where the forests are at least.Revealing map at first won't help because minimap is a picture which is generated by WE and won't change ingame.Also i'm trying to make a better icon for the forest(Removing black area at least).
 
Some bugs:
- Creeps aren't removed properly, I spawned 2 times near creeps that attacked me overtime
- First heroes cost gold and lumber. They should cost only 5 food. Try using the Melee Functions
- Too much randomness. It would be impossible to find an opponent in this map. There should be 12 fixed spots sorted randomly to players
- There should be a briefing until everything is ready, of 2 or 3 seconds...

Overall, the idea is interesting, but the execution isn't efficient. I know you put a lot of effort on it, but it is Lacking (2/5)
 
Level 3
Joined
Mar 20, 2008
Messages
27
Tested the map a single time, and guess what? I started right beside the enemy, i will give it a 1/5 since thats not good enough!
 
Level 3
Joined
Jan 20, 2005
Messages
23
Looking good, but it's a bit too random.

Playing 1P with the rest computers, two computers appeared right next to each other (screenie). I revealed the map and as you can see from the minimap, there were six neutral buildings and five were pretty much right next to each other.

Is it possible to split the map into four quarters and create 1-2 neutral buildings in each? This would almost guarantee that the buildings are distributed across the map. Could do a similar thing with player/goldmine/tree placement too

The tree symbols in the minimap are also kind of distracting. Instead of triggering them in (as I assume you're doing, I don't know much about triggering at all) maybe reveal the map for a second so all players can see the other players and the trees. Or reveal the map before placing the players so everyone can just see the trees and neutral buildings.

If you must keep those tree icons, do they disappear when a group of trees is mined out?

The creeps were appropriate to the terrain, as were the trees. Aside from these issues it looks to be a good map. 3/5

(btw, I just booted it up again and there were two computers even closer together, less than half a sceen-height apart)
 

Attachments

  • Random.png
    Random.png
    324.6 KB · Views: 88
Level 28
Joined
Jan 26, 2007
Messages
4,789
Okay, hmm, let's see.

First of all: for a melee game, this will never provide a good gameplay.
Some people can start out with multiple mines, some with hostile creatures/merchants near their base.
The imbalance is far too great to get an actual decent gameplay.

Although I do realize that making a balanced random terrain would take loads of logarithms and a great deal of your time (if you've ever played Civilization IV, it's always a random terrain, but it's usually balanced as well).
If you could, perhaps provide a few options? (Such as Amount of gold mines/stacked trees/number of green-orange-red creep camps/...).

Also, IF you're going to do this: use JASS, as you'll need a lot of distance calculation and the GUI loc-form sucks for that.
And save more data: save all goldmines, tree patches etc.
Then you can create actual bases (where the workers form a circle halfway the gold mine and town hall).


The level of the dropped items is far too high, you should definitely lower that (and perhaps differentiate certain classes/types as well).

Rejected, as - although it's an interesting project - the gameplay is far too lacking.
 
Top