1. Are you planning to upload your awesome map to Hive? Please review the rules here.
    Dismiss Notice
  2. Updated Resource Submission Rules: All model & skin resource submissions must now include an in-game screenshot. This is to help speed up the moderation process and to show how the model and/or texture looks like from the in-game camera.
    Dismiss Notice
  3. DID YOU KNOW - That you can unlock new rank icons by posting on the forums or winning contests? Click here to customize your rank or read our User Rank Policy to see a list of ranks that you can unlock. Have you won a contest and still havn't received your rank award? Then please contact the administration.
    Dismiss Notice
  4. Don’t forget to sign up for the Hive Cup. There’s a 555 EUR prize pool. Sign up now!
    Dismiss Notice
  5. The Hive Workshop Cup contest results have been announced! See the maps that'll be featured in the Hive Workshop Cup tournament!
    Dismiss Notice
  6. The results are out! Check them out.
    Dismiss Notice
  7. The poll for Hive's 12th Concept Art Contest is up! Go cast your vote for your favourite genie!
    Dismiss Notice
  8. The raddest synthwave tracks were chosen - Check out our Music Contest #12 - Results and congratulate the winners!
    Dismiss Notice
  9. Check out the Staff job openings thread.
    Dismiss Notice
Dismiss Notice
60,000 passwords have been reset on July 8, 2019. If you cannot login, read this.

Trigger Viewer

2P Undead06 v2.2.w3x
Variables
Starting
PreInit
Map Initialization
Make Demon Gate Invulnerable
Setup Allies
Setup Variables
Setup Blademaster01
Setup Blademaster02
Setup Blademaster03
Setup Farseer02
Setup Blademaster04
Setup Farseer01
Setup Scorescreen
Make Dragon Camps Red
SetupAI
Cage Dies
Money for the AI
Blue Town Gold
Orange Town Gold
Light Blue Town Gold
Brown Town Gold
Red Town Gold
Blue Town Lumber
Orange Town Lumber
Light Blue Town Lumber
Brown Town Lumber
Red Town Lumber
Hero Level Lock
Arthas Lock Levels
KelThuzad Lock Levels
Slow Exp Gain
Opening Cinematic
Opening Cinematic
Escape
Frosts Wyrms Reveal
They come in
Orcs Lines about Undead
Orc Enters Trigger Next line
Orc Lines Play
Orc Hero Dies
Teal Hero Takes Damage
Send Attack to Player
Event Hero Dies Discovered Quest
First Hero
First Hero Queue
Orange
Light Blue
Blue
Brown
Red
Logicals
Display Quest Message
All Dead
Entering Red Orc Town
Final Town Area
Final Town Area Lines
TriggerAIAttacks
TriggerBlueAIHarass
TriggerBrownAIHarass
TriggerOrangeAIHarass
TriggerLightBlueAIHarass
TriggerRedAIHarassOrangeDead
TriggerRedAIHarassLightBlueDead
TriggerRedAIHarassBrownDead
End Cinematic
Red Town Dead
Start Ending
Ending Cancel
Defeat
Defeat Lose Buildings
Interlude
Initialization
Start Music
For Tim
Escape Interlude
remove flying unit
remove felhounds unit
Meteor A
Meteor B
Meteor C
Meteor D
Desolve A
Desolve B
Desolve C
Desolve D
Other Triggers
Item Drop Bonuses
Custom Variables
Timer Trigger
Combine Books
Blue Base Destroyed
Orange Base Destroyed
Light Blue Base Destroyed
Brown Base Destroyed
Setup Insane
Systems
Research Init
Research Begins
Research Cancelled
Research Complete
Requirement Init
Requirement Update
Computer Upkeeps
Player Limits
Gametext
Init Gametext
Skip Cinematic
Leaves Game
Endgame Text
Startgame Text
Startgame Text 2
Startgame Text 3
Startgame New
Startgame Load
ResourceDrop Order
ResourceDrop Destroy
ResourceDrop Build
ResourceDrop Starters
ResourceDrop Init
Send Lumber
Send Gold
Exchange Unit
Death Select
Deselect Unit
Select Unit
function SaveLoad_InitialSetup takes nothing returns nothing
    local integer i = 0
    local integer j = 0

    loop
        set udg_SaveLoad_Compress[i + 48] = j
        set udg_SaveLoad_Uncompress[i] = i + 48
        set j = j + 1
        set i = i + 1
        exitwhen i >= 10
    endloop
    set i = 0
    loop
        set udg_SaveLoad_Compress[i + 97] = j
        set udg_SaveLoad_Compress[i + 65] = j + 26
        set udg_SaveLoad_Uncompress[i + 10] = i + 97
        set udg_SaveLoad_Uncompress[i + 26 + 10] = i + 65
        set j = j + 1
        set i = i + 1
        exitwhen i >= 26
    endloop
endfunction

function SaveLoad_Id2CId takes integer n returns integer
    local integer i = n / (256 * 256 * 256)
    local integer r
    set n = n - i * (256 * 256 * 256)
    set r = udg_SaveLoad_Compress[i]
    set i = n / (256 * 256)
    set n = n - i * (256 * 256)
    set r = r * 64 + udg_SaveLoad_Compress[i]
    set i = n / 256
    set r = r * 64 + udg_SaveLoad_Compress[i]
    return r * 64 + udg_SaveLoad_Compress[n - i * 256]
endfunction

function SaveLoad_CId2Id takes integer n returns integer
    local integer i = n / (64 * 64 * 64)
    local integer r
    set n = n - i * (64 * 64 * 64)
    set r = udg_SaveLoad_Uncompress[i]
    set i = n / (64 * 64)
    set n = n - i * (64 * 64)
    set r = r * 256 + udg_SaveLoad_Uncompress[i]
    set i = n / 64
    set r = r * 256 + udg_SaveLoad_Uncompress[i]
    return r * 256 + udg_SaveLoad_Uncompress[n - i * 64]
endfunction

function SaveLoad_Unit2Integer takes unit u returns integer
    local integer i = 0
    local integer n = GetUnitTypeId(u)
    if udg_SaveLoad_Initialized == false then
        set udg_SaveLoad_Initialized = true
        call SaveLoad_InitialSetup()
    endif
    loop
        set i = i + 1
        exitwhen i > udg_SaveLoad_Heroes_LastIndex
        if udg_SaveLoad_Heroes[i] == n then
            return i
        endif
    endloop
    return SaveLoad_Id2CId(n)
endfunction
function SaveLoad_Integer2Unit takes integer i returns integer
    if udg_SaveLoad_Initialized == false then
        set udg_SaveLoad_Initialized = true
        call SaveLoad_InitialSetup()
    endif
    if i <= udg_SaveLoad_Heroes_LastIndex then
        return udg_SaveLoad_Heroes[i]
    endif
    return SaveLoad_CId2Id(i)
endfunction

function SaveLoad_Item2Integer takes item t returns integer
    local integer i = 0
    local integer n = GetItemTypeId(t)
    if udg_SaveLoad_Initialized == false then
        set udg_SaveLoad_Initialized = true
        call SaveLoad_InitialSetup()
    endif
    loop
        set i = i + 1
        exitwhen i > udg_SaveLoad_Items_LastIndex
        if udg_SaveLoad_Items[i] == n then
            return i
        endif
    endloop
    return SaveLoad_Id2CId(n)
endfunction
function SaveLoad_Integer2Item takes integer i returns integer
    if udg_SaveLoad_Initialized == false then
        set udg_SaveLoad_Initialized = true
        call SaveLoad_InitialSetup()
    endif
    if i <= udg_SaveLoad_Items_LastIndex then
        return udg_SaveLoad_Items[i]
    endif
    return SaveLoad_CId2Id(i)
endfunction

function SaveLoad_Ability2Integer takes integer a returns integer
    local integer i = 0
    if udg_SaveLoad_Initialized == false then
        set udg_SaveLoad_Initialized = true
        call SaveLoad_InitialSetup()
    endif
    loop
        set i = i + 1
        exitwhen i > udg_SaveLoad_Abilities_LastIndex
        if udg_SaveLoad_Abilities[i] == a then
            return i
        endif
    endloop
    return SaveLoad_Id2CId(a)
endfunction
function SaveLoad_Integer2Ability takes integer i returns integer
    if udg_SaveLoad_Initialized == false then
        set udg_SaveLoad_Initialized = true
        call SaveLoad_InitialSetup()
    endif
    if i <= udg_SaveLoad_Abilities_LastIndex then
        return udg_SaveLoad_Abilities[i]
    endif
    return SaveLoad_CId2Id(i)
endfunction

function SaveLoad_Color takes string s returns string
    local integer i = StringLength(s)
    local string c
    local string r = ""

    loop
        set i = i - 1
        set c = SubString(s,i,i + 1)
        if c == "0" or c == "1" or c == "2" or c == "3" or c == "4" or c == "5" or c == "6" or c == "7" or c == "8" or c == "9" then
            set r = "|cffff9999" + c + "|r" + r
        elseif c == "-" then
            set r = "|cffdddddd-|r" + r
        elseif c == "a" or c == "b" or c == "c" or c == "d" or c == "e" or c == "f" or c == "g" or c == "h" or c == "i" or c == "j" or c == "k" or c == "l" or c == "m" or c == "n" or c == "o" or c == "p" or c == "q" or c == "r" or c == "s" or c == "t" or c == "u" or c == "v" or c == "w" or c == "x" or c == "y" or c == "z" then
            set r = "|cff99ff99" + c + "|r" + r
        elseif c == "A" or c == "B" or c == "C" or c == "D" or c == "E" or c == "F" or c == "G" or c == "H" or c == "I" or c == "J" or c == "K" or c == "L" or c == "M" or c == "N" or c == "O" or c == "P" or c == "Q" or c == "R" or c == "S" or c == "T" or c == "U" or c == "V" or c == "W" or c == "X" or c == "Y" or c == "Z" then
            set r = "|cff9999ff" + c + "|r" + r
        else
            set r = c + r
        endif
        exitwhen i <= 0
    endloop
    return r
endfunction

function SaveLoad_EncodeChar takes string n returns integer
    local integer i = 0
    local string s1 = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
    local string s2 = "abcdefghijklmnopqrstuvwxyz"
    local string s3 = "0123456789"

    loop
        if SubString(s1,i,i + 1) == n then
            return i
        endif
        if SubString(s2,i,i + 1) == n then
            return i
        endif
        set i = i + 1
        exitwhen i >= 26
    endloop
    set i = 0
    loop
        if SubString(s3,i,i + 1) == n then
            return i
        endif
        set i = i + 1
        exitwhen i >= 10
    endloop
    return 0
endfunction

function SaveLoad_EncodeVerify takes string buffer returns integer
    local integer i = 0
    local integer j = 0
    local string name = GetPlayerName(GetTriggerPlayer())
    if udg_SaveLoad_UsePlayername == true then
        loop
            set j = j + SaveLoad_EncodeChar(SubString(name,i,i + 1))
            set i = i + 1
            exitwhen i >= StringLength(name)
        endloop
    endif
    set i = 0
    loop
        set j = j + SaveLoad_EncodeChar(SubString(buffer,i,i + 1))
        set i = i + 1
        exitwhen i >= StringLength(buffer)
    endloop
    return j
endfunction

function SaveLoad_EncodeValues takes nothing returns string
    local integer i
    local integer j
    local integer k
    local integer l
    local integer m
    local integer CodeLength = StringLength(udg_SaveLoad_Alphabet)
    local integer array a
    local string buffer = ""
    local string c = ""
    local integer skip = 0
    local integer CONST = 1000000
    local string abc = "0123456789"

    set i = 0
    loop
        set i = i + 1
        exitwhen i > udg_SaveCount
        set buffer = buffer + I2S(udg_Save[i]) + "-"
    endloop
    set buffer = buffer + I2S(SaveLoad_EncodeVerify(buffer))
    if udg_Save[1] == 0 then
        set buffer = "-" + buffer
    endif

    set i = 0
    loop
        set a[i] = 0
        set i = i + 1
        exitwhen i >= 100
    endloop

    set m = 0
    set i = 0
    loop
        set j = 0
        loop
            set a[j] = a[j] * 11
            set j = j + 1
            exitwhen j > m
        endloop

        set l = 0
        set c = SubString(buffer,i,i + 1)
        loop
            exitwhen SubString(abc,l,l + 1) == c
            set l = l + 1
            exitwhen l > 9
        endloop
        set a[0] = a[0] + l

        set j = 0
        loop
            set k = a[j] / CONST
            set a[j] = a[j] - k * CONST
            set a[j + 1] = a[j + 1] + k
            set j = j + 1
            exitwhen j > m
        endloop
        if k > 0 then
            set m = m + 1
        endif
        set i = i + 1
        exitwhen i >= StringLength(buffer)
    endloop

    set buffer = ""
    loop
        exitwhen m < 0
        set j = m
        loop
            exitwhen j <= 0
            set k = a[j] / CodeLength
            set a[j - 1] = a[j - 1] + (a[j] - k * CodeLength) * CONST
            set a[j] = k
            set j = j - 1
        endloop
        set k = a[j] / CodeLength
        set i = a[j] - k * CodeLength
        set buffer = buffer + SubString(udg_SaveLoad_Alphabet,i,i + 1)
        set a[j] = k
        if a[m] == 0 then
            set m = m - 1
        endif
    endloop

    set i = StringLength(buffer)
    set skip = 0
    set c = ""
    loop
        set i = i - 1
        set c = c + SubString(buffer,i,i + 1)
        set skip = skip + 1
        if skip == 4 and i > 0 then
            set c = c + "-"
            set skip = 0
        endif
        exitwhen i <= 0
    endloop
    return c
endfunction

function SaveLoad_DecodeValues takes string s returns boolean
    local integer i
    local integer j
    local integer k
    local integer l
    local integer SaveCode = 0
    local integer m
    local integer array a
    local string buffer = ""
    local integer CodeLength = StringLength(udg_SaveLoad_Alphabet)
    local integer skip = -1
    local integer CONST = 1000000
    local string abc = "0123456789-"
    local string c

    set i = 0
    loop
        set a[i] = 0
        set i = i + 1
        exitwhen i >= 100
    endloop

    set m = 0

    set i = 0
    loop
        set j = 0
        loop
            set a[j] = a[j] * CodeLength
            set j = j + 1
            exitwhen j > m
        endloop

        set skip = skip + 1
        if skip == 4 then
            set skip = 0
            set i = i + 1
        endif

        set l = CodeLength
        set c = SubString(s,i,i + 1)
        loop
            set l = l - 1
            exitwhen l < 1
            exitwhen SubString(udg_SaveLoad_Alphabet,l,l + 1) == c
        endloop
        set a[0] = a[0] + l

        set j = 0
        loop
            set k = a[j] / CONST
            set a[j] = a[j] - k * CONST
            set a[j + 1] = a[j + 1] + k
            set j = j + 1
            exitwhen j > m
        endloop
        if k > 0 then
            set m = m + 1
        endif
        set i = i + 1
        exitwhen i >= StringLength(s)
    endloop

    loop
        exitwhen m < 0
        set j = m
        loop
            exitwhen j <= 0
            set k = a[j] / 11
            set a[j - 1] = a[j - 1] + (a[j] - k * 11) * CONST
            set a[j] = k
            set j = j - 1
        endloop
        set k = a[j] / 11
        set i = a[j] - k * 11
        set buffer = SubString(abc,i,i + 1) + buffer
        set a[j] = k
        if a[m] == 0 then
            set m = m - 1
        endif
    endloop

    set i = 0
    set j = 0
    loop
        loop
            exitwhen i >= StringLength(buffer)
            exitwhen i > 0 and SubString(buffer,i,i + 1) == "-" and SubString(buffer,i - 1,i) != "-"
            set i = i + 1
        endloop
        if i < StringLength(buffer) then
            set k = i
        endif
        set SaveCode = SaveCode + 1
        set udg_Save[SaveCode] = S2I(SubString(buffer,j,i))
        set j = i + 1
        set i = i + 1
        exitwhen i >= StringLength(buffer)
    endloop

    set j = SaveLoad_EncodeVerify(SubString(buffer,0,k))
    set udg_SaveCount = SaveCode - 1
    if j == udg_Save[SaveCode] then
        return true
    endif
    return false
endfunction

function SaveLoad_Encode takes nothing returns string
    if udg_SaveLoad_CaseSensitive == false then
        set udg_SaveLoad_Alphabet = StringCase(udg_SaveLoad_Alphabet,true)
    endif
    return SaveLoad_Color(SaveLoad_EncodeValues())
endfunction

function SaveLoad_Decode takes string s returns boolean
    if udg_SaveLoad_CaseSensitive == false then
        set udg_SaveLoad_Alphabet = StringCase(udg_SaveLoad_Alphabet,true)
        set s = StringCase(s,true)
    endif
    if SaveLoad_DecodeValues(s) then
        return true
    endif
    return false
endfunction
Name Type Is Array Initial Value
Acolyte01 unit No
Acolyte02 unit No
Archimonde unit No
Blademaster01 unit No
Blademaster02 unit No
Blademaster03 unit No
BlademasterBlackrock unit No
BlueHero leaderboard No
BonusesFound integer No
BonusesTotal integer No
BrownHero leaderboard No
CampaignScore integer No
Cinematic boolean No true
Code string No
CryptFiend01 unit No
CryptFiend02 unit No
CryptFiends group No
DeadDragon location No
DefeatOk boolean No false
DiscoveredOrcHeroes boolean No false
DyingDragon unit No
EndCinematicCancel boolean No false
EnoughPlayers boolean No
Escape boolean No
EvilArthas unit No
ExchangeFail1 boolean No
ExchangeFail2 boolean No
ExchangeFail3 boolean No
ExchangeSelection1 group No
ExchangeSelection2 group No
ExchangeSuccess boolean No
Exchanging1 boolean No
Exchanging2 boolean No
Extra integer No
ExtraTotal integer No
Falric unit No
FalricsSpells integer Yes
Farseer01 unit No
Farseer02 unit No
FellhoundGroup group No
FinalInventory string Yes
FinalRank string No
Flyers group No
FrostWyrm01 unit No
FrostWyrm02 unit No
GameOver boolean No false
GameSelection boolean No true
Gargoyle01 unit No
Gargoyle02 unit No
Gargoyle03 unit No
Gargoyle04 unit No
GargoyleCinematicRunning boolean No
Gargoyles group No
Ghoul01 unit No
Ghoul02 unit No
GhoulGroup group No
Goldmine unit No
Goldmine2 unit No
Graveyard unit No
GuardianGroup group No
Hero1 unit No
Hero2 unit No
Heros group No
INSANEMODE boolean No
IntroCancel boolean No false
KelThuzad unit No
LightBlueHero leaderboard No
MeatWagon01 unit No
MeatWagon02 unit No
MeatWagons group No
MissionNumber integer No
Nercopolis unit No
NewVote1 boolean No
NewVote2 boolean No
OrangeHero leaderboard No
OrcWarlock unit No
QUESTBlueHeroDead questitem No
QUESTBrownHeroDead questitem No
QUESTDemonGate quest No
QUESTKillRedOrcs questitem No
QUESTLightBlueHeroDead questitem No
QUESTOrangeHeroDead questitem No
QUESTOrcHeroes quest No
QUESTRedHeroDead questitem No
RankInteger integer No
RedTown01 boolean No false
RedTown02 boolean No false
RedTown03 boolean No false
Requirement_Region rect No
RequirementTech boolean Yes
RequirementUnitP1 unit Yes
RequirementUnitP2 unit Yes
RequirementUnitType unitcode Yes
ResearchEnabledT2 boolean Yes
ResearchEnabledT3 boolean Yes
ResearchStringT1 string Yes
ResearchStringT2 string Yes
ResearchStringT3 string Yes
ResearchType techcode Yes
ResourceDropBuildings group No
ResourceDropHashtable hashtable No
Save integer Yes
SaveCount integer No
SaveLoad_Abilities abilcode Yes
SaveLoad_Abilities_LastIndex integer No
SaveLoad_Alphabet string No
SaveLoad_CaseSensitive boolean No
SaveLoad_Compress integer Yes
SaveLoad_Heroes unitcode Yes
SaveLoad_Heroes_LastIndex integer No
SaveLoad_Initialized boolean No
SaveLoad_Items itemcode Yes
SaveLoad_Items_LastIndex integer No
SaveLoad_TotalGrades integer Yes
SaveLoad_TotalTime integer No
SaveLoad_Uncompress integer Yes
SaveLoad_UsePlayername boolean No
ScoreBonuses integer No
ScoreExtra integer No
ScoreLimit integer Yes
ScoreMax integer No
ScoreSubquests integer No
ScoreTime integer No
SelectionGroup1 group No
SelectionGroup2 group No
SkeletonA unit No
SkeletonB unit No
SkeletonC unit No
SkeletonD unit No
SkipVote1 boolean No
SkipVote2 boolean No
StopLineFromPlaying boolean No false
SubquestsComplete integer No
SubquestsTotal integer No
SumRank integer No
SylvanasCinematicRunning boolean No
TealGroup group No
TempBoolean boolean No
TempInteger integer No
TempItem item No
TempItemType itemcode No
TempPGroup force No
TempPGroup2 force No
TempPlayer player No
TempPoint location No
TempUGroup group No
TempUnit unit No
TempUnitType unitcode No
TimeHours integer No
TimeMax real No
TimeMin real No
TimeMins integer No
TimeRange real No
TIMERBrown timer No
TIMERLightBlue timer No
TIMEROrange timer No
TIMERSendTealWave timer No
TimeSeconds integer No
TimeSecondsTotal integer No
TimeTakenString string No
TotalGhouls integer No 1
UnitGroup group No
UnitsLost integer No
Validate boolean No
VismodBase1 fogmodifier No
VismodBase2 fogmodifier No
x real No
y real No
PreInit
  Events
    Map initialization
  Conditions
  Actions
    Set EvilArthas = Death Knight 0277 <gen>
    Set KelThuzad = Lich 0276 <gen>
    Set Hero1 = EvilArthas
    Set Hero2 = KelThuzad
Map Initialization
  Events
  Conditions
  Actions
    Unit - Change ownership of EvilArthas to Player 4 (Purple) and Change color
    Unit - Change ownership of KelThuzad to Player 7 (Green) and Change color
    Unit - Change ownership of Necropolis 0036 <gen> to Player 4 (Purple) and Change color
    Unit - Change ownership of Sacrificial Pit 0301 <gen> to Player 4 (Purple) and Change color
    Unit - Change ownership of Crypt 0037 <gen> to Player 4 (Purple) and Change color
    Unit - Change ownership of Shade 0302 <gen> to Player 4 (Purple) and Change color
    Unit - Change ownership of Ghoul 0038 <gen> to Player 4 (Purple) and Change color
    Unit - Change ownership of Acolyte 0073 <gen> to Player 4 (Purple) and Change color
    Unit - Change ownership of Acolyte 0063 <gen> to Player 4 (Purple) and Change color
    Unit - Change ownership of Crypt Fiend 0035 <gen> to Player 4 (Purple) and Change color
    Unit - Change ownership of Meat Wagon 0139 <gen> to Player 4 (Purple) and Change color
    Unit - Change ownership of Gargoyle 0215 <gen> to Player 4 (Purple) and Change color
    Unit - Change ownership of Necropolis 0298 <gen> to Player 7 (Green) and Change color
    Unit - Change ownership of Crypt 0304 <gen> to Player 7 (Green) and Change color
    Unit - Change ownership of Ghoul 0051 <gen> to Player 7 (Green) and Change color
    Unit - Change ownership of Acolyte 0303 <gen> to Player 7 (Green) and Change color
    Unit - Change ownership of Acolyte 0055 <gen> to Player 7 (Green) and Change color
    Unit - Change ownership of Crypt Fiend 0034 <gen> to Player 7 (Green) and Change color
    Unit - Change ownership of Meat Wagon 0142 <gen> to Player 7 (Green) and Change color
    Unit - Change ownership of Gargoyle 0211 <gen> to Player 7 (Green) and Change color
    Camera - Apply gg_cam_Cam4IntroFlybyStart for Player 4 (Purple) over 0.00 seconds
    Camera - Apply gg_cam_Cam4IntroFlybyStart for Player 7 (Green) over 0.00 seconds
    Trigger - Run Make_Demon_Gate_Invulnerable <gen> (ignoring conditions)
    Trigger - Run Setup_Allies <gen> (ignoring conditions)
    Trigger - Run Setup_Variables <gen> (ignoring conditions)
    Trigger - Run Setup_Blademaster01 <gen> (ignoring conditions)
    Trigger - Run Setup_Blademaster02 <gen> (ignoring conditions)
    Trigger - Run Setup_Blademaster03 <gen> (ignoring conditions)
    Trigger - Run Setup_Farseer02 <gen> (ignoring conditions)
    Trigger - Run Setup_Blademaster04 <gen> (ignoring conditions)
    Trigger - Run Setup_Farseer01 <gen> (ignoring conditions)
    Trigger - Run Setup_Scorescreen <gen> (ignoring conditions)
    Trigger - Run Make_Dragon_Camps_Red <gen> (ignoring conditions)
    Trigger - Run SetupAI <gen> (ignoring conditions)
    Trigger - Run Slow_Exp_Gain <gen> (ignoring conditions)
    Trigger - Run Opening_Cinematic <gen> (ignoring conditions)
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        INSANEMODE Equal to False
      Then - Actions
        Unit - Remove Jubei'Thos 0333 <gen> from the game
        Unit - Remove Tinker 0218 <gen> from the game
        Unit - Remove Alchemist 0332 <gen> from the game
        Unit - Remove Shadow Hunter 0217 <gen> from the game
        Unit - Remove Grunt 0334 <gen> from the game
        Unit - Remove Grunt 0335 <gen> from the game
        Unit - Remove Troll Headhunter 0336 <gen> from the game
        Unit - Remove Demolisher 0337 <gen> from the game
        Unit - Remove Beastiary 0339 <gen> from the game
        Unit - Remove Spirit Lodge 0338 <gen> from the game
        Unit - Remove Spirit Lodge 0340 <gen> from the game
        Unit - Remove Spirit Lodge 0341 <gen> from the game
      Else - Actions
Make Demon Gate Invulnerable
  Events
  Conditions
  Actions
    Unit - Make Demon Gate 0028 <gen> Invulnerable
Setup Allies
  Events
  Conditions
  Actions
    -------- RED AI --------
    Player - For Neutral Hostile, turn Alliance (non-aggression) On toward Player 1 (Red)
    Player - For Player 1 (Red), turn Alliance (non-aggression) On toward Neutral Hostile
    Player - For Player 1 (Red), turn Alliance (non-aggression) On toward Neutral Passive
    Player - For Player 1 (Red), turn Alliance (non-aggression) On toward Player 2 (Blue)
    Player - For Player 1 (Red), turn Alliance (non-aggression) On toward Player 6 (Orange)
    Player - For Player 1 (Red), turn Alliance (non-aggression) On toward Player 10 (Light Blue)
    Player - For Player 1 (Red), turn Alliance (non-aggression) On toward Player 12 (Brown)
    -------- BLUE AI --------
    Player - For Neutral Hostile, turn Alliance (non-aggression) On toward Player 2 (Blue)
    Player - For Player 2 (Blue), turn Alliance (non-aggression) On toward Neutral Hostile
    Player - For Player 2 (Blue), turn Alliance (non-aggression) On toward Neutral Passive
    Player - For Player 2 (Blue), turn Alliance (non-aggression) On toward Player 1 (Red)
    Player - For Player 2 (Blue), turn Alliance (non-aggression) On toward Player 6 (Orange)
    Player - For Player 2 (Blue), turn Alliance (non-aggression) On toward Player 10 (Light Blue)
    Player - For Player 2 (Blue), turn Alliance (non-aggression) On toward Player 12 (Brown)
    -------- ORANGE AI --------
    Player - For Neutral Hostile, turn Alliance (non-aggression) On toward Player 6 (Orange)
    Player - For Player 6 (Orange), turn Alliance (non-aggression) On toward Neutral Hostile
    Player - For Player 6 (Orange), turn Alliance (non-aggression) On toward Neutral Passive
    Player - For Player 6 (Orange), turn Alliance (non-aggression) On toward Player 1 (Red)
    Player - For Player 6 (Orange), turn Alliance (non-aggression) On toward Player 2 (Blue)
    Player - For Player 6 (Orange), turn Alliance (non-aggression) On toward Player 10 (Light Blue)
    Player - For Player 6 (Orange), turn Alliance (non-aggression) On toward Player 12 (Brown)
    -------- LIGHT BLUE AI --------
    Player - For Neutral Hostile, turn Alliance (non-aggression) On toward Player 10 (Light Blue)
    Player - For Player 10 (Light Blue), turn Alliance (non-aggression) On toward Neutral Hostile
    Player - For Player 10 (Light Blue), turn Alliance (non-aggression) On toward Neutral Passive
    Player - For Player 10 (Light Blue), turn Alliance (non-aggression) On toward Player 1 (Red)
    Player - For Player 10 (Light Blue), turn Alliance (non-aggression) On toward Player 2 (Blue)
    Player - For Player 10 (Light Blue), turn Alliance (non-aggression) On toward Player 6 (Orange)
    Player - For Player 10 (Light Blue), turn Alliance (non-aggression) On toward Player 12 (Brown)
    -------- BROWN AI --------
    Player - For Neutral Hostile, turn Alliance (non-aggression) On toward Player 12 (Brown)
    Player - For Player 12 (Brown), turn Alliance (non-aggression) On toward Neutral Hostile
    Player - For Player 12 (Brown), turn Alliance (non-aggression) On toward Neutral Passive
    Player - For Player 12 (Brown), turn Alliance (non-aggression) On toward Player 1 (Red)
    Player - For Player 12 (Brown), turn Alliance (non-aggression) On toward Player 2 (Blue)
    Player - For Player 12 (Brown), turn Alliance (non-aggression) On toward Player 6 (Orange)
    Player - For Player 12 (Brown), turn Alliance (non-aggression) On toward Player 10 (Light Blue)
    -------- TEAL AI --------
    Player - Make Player 3 (Teal) treat Player 4 (Purple) as an Enemy
    Player - Make Player 4 (Purple) treat Player 3 (Teal) as an Enemy
    Player - Make Player 3 (Teal) treat Player 7 (Green) as an Enemy
    Player - Make Player 7 (Green) treat Player 3 (Teal) as an Enemy
    -------- DRAGONS --------
    Player - Make Player 8 (Pink) treat Player 4 (Purple) as an Enemy
    Player - Make Player 4 (Purple) treat Player 8 (Pink) as an Enemy
    Player - Make Player 8 (Pink) treat Player 7 (Green) as an Enemy
    Player - Make Player 7 (Green) treat Player 8 (Pink) as an Enemy
    -------- - --------
    Player - Make Player 4 (Purple) treat Player 7 (Green) as an Ally with shared vision
    Player - Make Player 7 (Green) treat Player 4 (Purple) as an Ally with shared vision
Setup Variables
  Events
  Conditions
  Actions
    -------- Player Units --------
    Set CryptFiend01 = Crypt Fiend 0035 <gen>
    Set CryptFiend02 = Crypt Fiend 0034 <gen>
    Set CryptFiends = (Units in Crypt_Fiend_Starting <gen>)
    Set Gargoyle01 = Gargoyle 0211 <gen>
    Set Gargoyle02 = Gargoyle 0215 <gen>
    Set Gargoyles = (Units in Gargoyles_Starting <gen>)
    Set MeatWagon01 = Meat Wagon 0139 <gen>
    Set MeatWagon02 = Meat Wagon 0142 <gen>
    Set MeatWagons = (Units in Meat_Wagons_Starting <gen>)
    Set Heros = (Units in Heros_Group <gen>)
    Set Goldmine = Gold Mine 0029 <gen>
    Set Ghoul01 = Ghoul 0038 <gen>
    Set Nercopolis = Necropolis 0036 <gen>
    -------- Blue Town --------
    Set Blademaster01 = Blademaster 0078 <gen>
    -------- Brown Town --------
    Set Blademaster02 = Blademaster 0088 <gen>
    -------- Orange Town --------
    Set Farseer01 = Far Seer 0109 <gen>
    -------- Light Blue Town --------
    Set Farseer02 = Far Seer 0115 <gen>
    -------- Red Town --------
    Set BlademasterBlackrock = Jubei'Thos 0140 <gen>
    -------- Teal Group --------
    Set TealGroup = (Units in Teal_Attack_Force <gen> owned by Player 3 (Teal))
    Set OrcWarlock = Orc Warlock 0014 <gen>
    Set Blademaster03 = Blademaster 0094 <gen>
Blue Town
Setup Blademaster01
  Events
  Conditions
  Actions
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        INSANEMODE Equal to False
      Then - Actions
        Unit - Set mana of Blademaster01 to (Max mana of Blademaster01)
        Hero - Set Blademaster01 Hero-level to 4, Hide level-up graphics
        Hero - Learn skill for Blademaster01: Orc Blademaster - Critical Strike
        Hero - Learn skill for Blademaster01: Orc Blademaster - Mirror Image
        Hero - Learn skill for Blademaster01: Orc Blademaster - Critical Strike
        Hero - Learn skill for Blademaster01: Orc Blademaster - Mirror Image
        Hero - Disable experience gain for (Triggering unit)
      Else - Actions
BrownTown
Setup Blademaster02
  Events
  Conditions
  Actions
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        INSANEMODE Equal to False
      Then - Actions
        Unit - Set mana of Blademaster02 to (Max mana of Blademaster02)
        Hero - Set Blademaster02 Hero-level to 4, Hide level-up graphics
        Hero - Learn skill for Blademaster02: Orc Blademaster - Mirror Image
        Hero - Learn skill for Blademaster02: Orc Blademaster - Critical Strike
        Hero - Learn skill for Blademaster02: Orc Blademaster - Mirror Image
        Hero - Learn skill for Blademaster02: Orc Blademaster - Critical Strike
        Hero - Disable experience gain for (Triggering unit)
      Else - Actions
BrownTown
Setup Blademaster03
  Events
  Conditions
  Actions
    Unit - Set mana of Blademaster03 to (Max mana of Blademaster03)
    Hero - Set Blademaster03 Hero-level to 6, Hide level-up graphics
    Hero - Learn skill for Blademaster03: Orc Blademaster - Mirror Image
    Hero - Learn skill for Blademaster03: Orc Blademaster - Critical Strike
    Hero - Learn skill for Blademaster03: Orc Blademaster - Mirror Image
    Hero - Learn skill for Blademaster03: Orc Blademaster - Critical Strike
    Hero - Learn skill for Blademaster03: Orc Blademaster - Mirror Image
    Hero - Learn skill for Blademaster03: Orc Blademaster - Critical Strike
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        INSANEMODE Equal to True
      Then - Actions
        Hero - Set Blademaster03 Hero-level to 8, Hide level-up graphics
        Hero - Learn skill for Blademaster03: Orc Blademaster - Bladestorm
      Else - Actions
    Hero - Disable experience gain for (Triggering unit)
Light Blue Town
Setup Farseer02
  Events
  Conditions
  Actions
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        INSANEMODE Equal to False
      Then - Actions
        Unit - Set mana of Farseer02 to (Max mana of Farseer02)
        Hero - Set Farseer02 Hero-level to 6, Hide level-up graphics
        Hero - Learn skill for Farseer02: Orc Far Seer - Feral Spirit
        Hero - Learn skill for Farseer02: Orc Far Seer - Chain Lightning
        Hero - Learn skill for Farseer02: Orc Far Seer - Far Sight
        Hero - Learn skill for Farseer02: Orc Far Seer - Feral Spirit
        Hero - Learn skill for Farseer02: Orc Far Seer - Chain Lightning
        Hero - Learn skill for Farseer02: Orc Far Seer - Earthquake
        Hero - Disable experience gain for (Triggering unit)
      Else - Actions
Red Town
Setup Blademaster04
  Events
  Conditions
  Actions
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        INSANEMODE Equal to False
      Then - Actions
        Unit - Set mana of BlademasterBlackrock to (Max mana of BlademasterBlackrock)
        Hero - Set BlademasterBlackrock Hero-level to 8, Hide level-up graphics
        Hero - Learn skill for BlademasterBlackrock: Orc Blademaster - Mirror Image
        Hero - Learn skill for BlademasterBlackrock: Orc Blademaster - Critical Strike
        Hero - Learn skill for BlademasterBlackrock: Orc Blademaster - Mirror Image
        Hero - Learn skill for BlademasterBlackrock: Orc Blademaster - Critical Strike
        Hero - Learn skill for BlademasterBlackrock: Orc Blademaster - Mirror Image
        Hero - Learn skill for BlademasterBlackrock: Orc Blademaster - Critical Strike
        Hero - Learn skill for BlademasterBlackrock: Orc Blademaster - Bladestorm
        Hero - Disable experience gain for (Triggering unit)
      Else - Actions
Orange Town
Setup Farseer01
  Events
  Conditions
  Actions
    Unit - Set mana of Farseer01 to (Max mana of Farseer01)
    Hero - Set Farseer01 Hero-level to 6, Hide level-up graphics
    Hero - Learn skill for Farseer01: Orc Far Seer - Feral Spirit
    Hero - Learn skill for Farseer01: Orc Far Seer - Chain Lightning
    Hero - Learn skill for Farseer01: Orc Far Seer - Feral Spirit
    Hero - Learn skill for Farseer01: Orc Far Seer - Chain Lightning
    Hero - Learn skill for Farseer01: Orc Far Seer - Far Sight
    Hero - Learn skill for Farseer01: Orc Far Seer - Earthquake
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        INSANEMODE Equal to True
      Then - Actions
        Hero - Set Farseer01 Hero-level to 8, Hide level-up graphics
        Hero - Learn skill for Farseer01: Orc Far Seer - Far Sight
        Hero - Learn skill for Farseer01: Orc Far Seer - Chain Lightning
      Else - Actions
    Hero - Disable experience gain for (Triggering unit)
Setup Scorescreen
  Events
  Conditions
  Actions
    Player - Hide Player 3 (Teal) in the post-game score screen
    Player - Hide Player 5 (Yellow) in the post-game score screen
    Player - Hide Player 8 (Pink) in the post-game score screen
Make Dragon Camps Red
  Events
  Conditions
  Actions
    Player - Change color of Player 8 (Pink) to Red, Changing color of existing units
    Unit - Change ownership of Demon Gate 0028 <gen> to Player 5 (Yellow) and Change color
SetupAI
  Events
  Conditions
  Actions
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        INSANEMODE Equal to False
      Then - Actions
        AI - Start campaign AI script for Player 1 (Red): u06_red.ai (aiscript)
        AI - Start campaign AI script for Player 2 (Blue): u06_blue.ai (aiscript)
        AI - Start campaign AI script for Player 6 (Orange): u06_orange.ai (aiscript)
        AI - Start campaign AI script for Player 10 (Light Blue): u06_light_blue.ai (aiscript)
        AI - Start campaign AI script for Player 12 (Brown): u06_brown.ai (aiscript)
      Else - Actions
Cage Dies
  Events
    Destructible - Cage 0401 <gen> dies
  Conditions
  Actions
    Trigger - Turn off (This trigger)
    Item - Create Scroll of Mana at (Position of Cage 0401 <gen>)
    Set BonusesFound = (BonusesFound + 1)
Blue Town Gold
  Events
    Player - Player 2 (Blue)'s Current gold becomes Less than or equal to 1000
  Conditions
  Actions
    Player - Add 1000 to Player 2 (Blue) Current gold
Orange Town Gold
  Events
    Player - Player 6 (Orange)'s Current gold becomes Less than or equal to 1000
  Conditions
  Actions
    Player - Add 1000 to Player 6 (Orange) Current gold
Light Blue Town Gold
  Events
    Player - Player 10 (Light Blue)'s Current gold becomes Less than or equal to 1000
  Conditions
  Actions
    Player - Add 1000 to Player 10 (Light Blue) Current gold
Brown Town Gold
  Events
    Player - Player 12 (Brown)'s Current gold becomes Less than or equal to 1000
  Conditions
  Actions
    Player - Add 1000 to Player 12 (Brown) Current gold
Red Town Gold
  Events
    Player - Player 1 (Red)'s Current gold becomes Less than or equal to 1000
  Conditions
  Actions
    Player - Add 1000 to Player 1 (Red) Current gold
Blue Town Lumber
  Events
    Player - Player 2 (Blue)'s Current lumber becomes Less than or equal to 1000
  Conditions
  Actions
    Player - Add 1000 to Player 2 (Blue) Current lumber
Orange Town Lumber
  Events
    Player - Player 6 (Orange)'s Current lumber becomes Less than or equal to 1000
  Conditions
  Actions
    Player - Add 1000 to Player 6 (Orange) Current lumber
Light Blue Town Lumber
  Events
    Player - Player 10 (Light Blue)'s Current lumber becomes Less than or equal to 1000
  Conditions
  Actions
    Player - Add 1000 to Player 10 (Light Blue) Current lumber
Brown Town Lumber
  Events
    Player - Player 12 (Brown)'s Current lumber becomes Less than or equal to 1000
  Conditions
  Actions
    Player - Add 1000 to Player 12 (Brown) Current lumber
Red Town Lumber
  Events
    Player - Player 1 (Red)'s Current lumber becomes Less than or equal to 1000
  Conditions
  Actions
    Player - Add 1000 to Player 1 (Red) Current lumber
Arthas Lock Levels
  Events
    Unit - A unit owned by Player 4 (Purple) Gains a level
  Conditions
    (Hero level of (Leveling Hero)) Greater than or equal to 7
    (Unit-type of (Leveling Hero)) Equal to Death Knight (Evil)
  Actions
    Hero - Disable experience gain for (Leveling Hero)
KelThuzad Lock Levels
  Events
    Unit - A unit owned by Player 7 (Green) Gains a level
  Conditions
    (Hero level of (Leveling Hero)) Greater than or equal to 7
    (Unit-type of (Leveling Hero)) Equal to Lich (Lich)
  Actions
    Hero - Disable experience gain for (Leveling Hero)
Slow Exp Gain
  Events
  Conditions
  Actions
    Hero - Make Player 4 (Purple) Heroes gain 25.00% experience from future kills
    Hero - Make Player 7 (Green) Heroes gain 25.00% experience from future kills
Opening Cinematic
  Events
  Conditions
  Actions
    Cinematic - Turn cinematic mode On for (All players)
    Sound - Clear the music list
    Wait 0.01 seconds
    Unit - Move EvilArthas instantly to (Center of Arthas <gen>), facing (Center of Sac_Pit <gen>)
    Unit - Move KelThuzad instantly to (Center of Kel_Thuzad <gen>), facing (Center of Sac_Pit <gen>)
    Sound - Set the music list to Music, starting with song 2
    Sound - Play Dark Agents
    Wait 0.40 seconds
    Sound - Disable dawn and dusk sounds
    Environment - Set fog to style 0 (fogstyle), z-start 500.00, z-end 3500.00, density 0 and color (0.00%, 10.00%, 30.00%)
    Environment - Create at (Playable map area) the weather effect Northrend Snow (Light)
    Environment - Turn (Last created weather effect) On
    Environment - Set sky to Lordaeron Winter Sky
    Sound - Set Unit Response Sounds to 0.00%
    Sound - Add WaterLakeLoop1 <gen> across LakeLoop01 <gen>
    Sound - Add WaterLakeLoop1 <gen> across LakeLoop02 <gen>
    Sound - Add WaterLakeLoop1 <gen> across LakeLoop03 <gen>
    Sound - Add WaterStreamLoop1 <gen> across StreamLoop01 <gen>
    Sound - Add WaterStreamLoop1 <gen> across StreamLoop02 <gen>
    Camera - Apply gg_cam_Cam4IntroFlybyStart for Player 4 (Purple) over 0.00 seconds
    Camera - Apply gg_cam_Cam4IntroFlybyEnd for Player 4 (Purple) over 7.00 seconds
    Camera - Apply gg_cam_Cam4IntroFlybyStart for Player 7 (Green) over 0.00 seconds
    Camera - Apply gg_cam_Cam4IntroFlybyEnd for Player 7 (Green) over 7.00 seconds
    Cinematic - Fade in over 1.00 seconds using texture Black Mask and color (0%, 0%, 0%) with 0% transparency
    Wait 1.00 seconds
    Player - Set Player 4 (Purple) Current gold to 2000
    Player - Set Player 7 (Green) Current gold to 2000
    Player - Set Player 4 (Purple) Current lumber to 1000
    Player - Set Player 7 (Green) Current lumber to 1000
    -------- NOW SKIPPABLE --------
    Trigger - Turn on Escape <gen>
    Trigger - Turn on Skip_Cinematic <gen>
    Wait 5.50 seconds
    If (IntroCancel Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Cinematic - Fade out over 0.40 seconds using texture Black Mask and color (0%, 0%, 0%) with 0% transparency
    Wait 0.40 seconds
    If (IntroCancel Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Cinematic - Fade in over 0.30 seconds using texture Black Mask and color (0%, 0%, 0%) with 0% transparency
    Camera - Apply gg_cam_Cam2IntroPanStart for Player 4 (Purple) over 0.00 seconds
    Camera - Apply gg_cam_Cam3IntroPanEnd for Player 4 (Purple) over 3.50 seconds
    Camera - Apply gg_cam_Cam2IntroPanStart for Player 7 (Green) over 0.00 seconds
    Camera - Apply gg_cam_Cam3IntroPanEnd for Player 7 (Green) over 3.50 seconds
    Wait 3.25 seconds
    If (IntroCancel Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Camera - Change camera smoothing factor to 0.00
    Cinematic - Send transmission to (All players) from EvilArthas named Arthas: Play U06Arthas01 <gen> and display Isn't it time you told me about the second phase of the plan, lich?. Modify duration: Add 0.00 seconds and Don't wait
    Wait 4.50 seconds
    If (IntroCancel Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Camera - Apply gg_cam_Arthas_and_Kel_Talking for Player 4 (Purple) over 0.00 seconds
    Camera - Apply gg_cam_Arthas_and_Kel_Talking for Player 7 (Green) over 0.00 seconds
    Visibility - Create an initially Enabled visibility modifier for Player 4 (Purple) emitting Visibility from (Center of Create_Necropolis <gen>) to a radius of 2048.00
    Set VismodBase1 = (Last created visibility modifier)
    Visibility - Create an initially Enabled visibility modifier for Player 7 (Green) emitting Visibility from (Center of Create_Necropolis <gen>) to a radius of 2048.00
    Set VismodBase2 = (Last created visibility modifier)
    Wait 0.20 seconds
    If (IntroCancel Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Unit - Order Acolyte 0073 <gen> to build a Haunted Gold Mine at (Position of Goldmine)
    Unit - Order Acolyte 0303 <gen> to build a Haunted Gold Mine at (Position of Gold Mine 0300 <gen>)
    Unit - Order Acolyte 0055 <gen> to build a Graveyard at (Center of Create_Graveyard <gen>)
    Wait 0.10 seconds
    If (IntroCancel Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Set Graveyard = (Random unit from (Units of type Graveyard))
    Unit - Order Acolyte 0063 <gen> to build a Ziggurat at (Center of Create_Ziggurat_03 <gen>)
    Wait for U06Arthas01 <gen> to be 0 seconds from finished playing
    If (IntroCancel Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Cinematic - Send transmission to (All players) from KelThuzad named Kel'Thuzad: Play U06KelThuzad02 <gen> and display Certainly. The first phase of the Lich King's plan was to engineer the Scourge, which would eradicate any group that might resist the Legion's arrival. . Modify duration: Add 0.00 seconds and Don't wait
    Wait 5.00 seconds
    If (IntroCancel Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Unit - Order Acolyte 0073 <gen> to build a Ziggurat at (Center of Create_Ziggurat_01 <gen>)
    Unit - Order Acolyte 0303 <gen> to build a Ziggurat at (Center of Create_Ziggurat_02 <gen>)
    Unit - Order Acolyte 0055 <gen> to build a Ziggurat at (Center of Create_Ziggurat_04 <gen>)
    Camera - Apply gg_cam_Cam4KelCloseup for Player 4 (Purple) over 0 seconds
    Camera - Apply gg_cam_Cam4KelCloseup for Player 7 (Green) over 0 seconds
    Wait 2.00 seconds
    If (IntroCancel Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Wait 3.50 seconds
    If (IntroCancel Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Wait for U06KelThuzad02 <gen> to be 0 seconds from finished playing
    If (IntroCancel Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Camera - Apply gg_cam_Cam1ArthasKelCounterShot for Player 4 (Purple) over 0 seconds
    Camera - Apply gg_cam_Cam1ArthasKelCounterShot for Player 7 (Green) over 0 seconds
    Cinematic - Send transmission to (All players) from EvilArthas named Arthas: Play U06Arthas03 <gen> and display Like the forces of Lordaeron... and the high elves.. Modify duration: Add 0.00 seconds and Don't wait
    Unit Group - Order CryptFiends to Move To (Center of Unit_Forces_Divide <gen>)
    Unit Group - Order Gargoyles to Move To (Center of Unit_Forces_Divide <gen>)
    Unit Group - Order MeatWagons to Move To (Center of Unit_Forces_Divide <gen>)
    Wait 4.50 seconds
    If (IntroCancel Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Wait for U06Arthas03 <gen> to be 0 seconds from finished playing
    If (IntroCancel Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Cinematic - Send transmission to (All players) from KelThuzad named Kel'Thuzad: Play U06KelThuzad04 <gen> and display Exactly. The second phase is to actually summon the demon lord who will spark the invasion. . Modify duration: Add 0.00 seconds and Don't wait
    Wait 3.00 seconds
    If (IntroCancel Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Camera - Apply gg_cam_Arthas for Player 4 (Purple) over 0 seconds
    Camera - Apply gg_cam_Arthas for Player 7 (Green) over 0 seconds
    Unit - Order CryptFiend01 to Move To (Center of Crypt_Fiend_01a <gen>)
    Unit - Order CryptFiend02 to Move To (Center of Crypt_Fiend_02a <gen>)
    Unit - Order Gargoyle01 to Move To (Center of Gargoyle_01a <gen>)
    Unit - Order Gargoyle02 to Move To (Center of Gargoyle_02a <gen>)
    Unit - Order Gargoyle03 to Move To (Center of Gargoyle_03a <gen>)
    Unit - Order Gargoyle04 to Move To (Center of Gargoyle_04a <gen>)
    Unit - Order MeatWagon01 to Move To (Center of Meat_Wagon_01a <gen>)
    Unit - Order MeatWagon02 to Move To (Center of Meat_Wagon_02a <gen>)
    Wait 5.00 seconds
    If (IntroCancel Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Camera - Apply gg_cam_Follow_Arthas for Player 4 (Purple) over 0.00 seconds
    Camera - Apply gg_cam_Follow_Arthas for Player 7 (Green) over 0.00 seconds
    Unit - Order KelThuzad to Move To (Center of KelThuzad01c <gen>)
    Wait 0.75 seconds
    If (IntroCancel Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Wait for U06KelThuzad04 <gen> to be 0 seconds from finished playing
    If (IntroCancel Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Unit - Order EvilArthas to Move To (Center of Arthas01c <gen>)
    Sound - Attach HorseLoop1 <gen> to EvilArthas
    Sound - Play HorseLoop1 <gen>
    Cinematic - Send transmission to (All players) from EvilArthas named Arthas: Play U06Arthas05 <gen> and display So, where are we going now?. Modify duration: Add 0.00 seconds and Don't wait
    Wait 2.00 seconds
    If (IntroCancel Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Wait for U06Arthas05 <gen> to be 0 seconds from finished playing
    If (IntroCancel Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Cinematic - Send transmission to (All players) from KelThuzad named Kel'Thuzad: Play U06KelThuzad06 <gen> and display There is a nearby encampment of Blackrock orcs who maintain a functional demon gate. I must use the gate to commune with the demon lord and receive his instructions.. Modify duration: Add 0.00 seconds and Don't wait
    Camera - Apply gg_cam_Cam5BlackrockOrcTown for Player 4 (Purple) over 0.00 seconds
    Camera - Apply gg_cam_Cam5BlackrockOrcTown for Player 7 (Green) over 0.00 seconds
    Wait 5.00 seconds
    Sound - Set volume of CityScapeMagicRunesLoop1 <gen> to 100.00%
    Sound - Play CityScapeMagicRunesLoop1 <gen>
    If (IntroCancel Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Camera - Apply gg_cam_CamPortalPanStart for Player 4 (Purple) over 0.00 seconds
    Camera - Apply gg_cam_CamPortalPanStart for Player 7 (Green) over 0.00 seconds
    Wait 5.00 seconds
    Cinematic - Fade out over 0.30 seconds using texture White Mask and color (0%, 0%, 0%) with 0% transparency
    Wait 0.40 seconds
    Camera - Apply gg_cam_Starting_Town for Player 4 (Purple) over 0 seconds
    Camera - Apply gg_cam_Starting_Town for Player 7 (Green) over 0 seconds
    If (IntroCancel Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Unit - Create 1 Acolyte for Player 4 (Purple) at (Center of Region_027 <gen>) facing 0.00 degrees
    Set Acolyte01 = (Last created unit)
    Unit - Create 1 Acolyte for Player 7 (Green) at (Center of Region_027_Copy <gen>) facing 0.00 degrees
    Set Acolyte02 = (Last created unit)
    Sound - Stop CityScapeMagicRunesLoop1 <gen> After fading
    Unit Group - Pick every unit in (Units in Create_Ziggurat_01 <gen>) and do (Remove (Picked unit) from the game)
    Unit Group - Pick every unit in (Units in Create_Ziggurat_02 <gen>) and do (Remove (Picked unit) from the game)
    Unit Group - Pick every unit in (Units in Create_Ziggurat_03 <gen>) and do (Remove (Picked unit) from the game)
    Unit Group - Pick every unit in (Units in Create_Ziggurat_04 <gen>) and do (Remove (Picked unit) from the game)
    Unit Group - Pick every unit in (Units owned by Player 7 (Green) of type Graveyard) and do (Remove (Picked unit) from the game)
    Unit Group - Pick every unit in (Units owned by Player 4 (Purple) of type Haunted Gold Mine) and do (Remove (Picked unit) from the game)
    Unit Group - Pick every unit in (Units owned by Player 7 (Green) of type Haunted Gold Mine) and do (Remove (Picked unit) from the game)
    Unit - Create 1 Ziggurat for Player 4 (Purple) at (Center of Create_Ziggurat_01 <gen>) facing Default building facing degrees
    Unit - Create 1 Ziggurat for Player 7 (Green) at (Center of Create_Ziggurat_02 <gen>) facing Default building facing degrees
    Unit - Create 1 Ziggurat for Player 4 (Purple) at (Center of Create_Ziggurat_03 <gen>) facing Default building facing degrees
    Unit - Create 1 Ziggurat for Player 7 (Green) at (Center of Create_Ziggurat_04 <gen>) facing Default building facing degrees
    Unit - Create 1 Graveyard for Player 7 (Green) at (Center of Create_Graveyard <gen>) facing Default building facing degrees
    Set TempUnit = (Last created unit)
    Set TempPoint = (Position of (Last created unit))
    Unit - Create 1 Lumber Dummy 2 for Player 4 (Purple) at TempPoint facing Default building facing degrees
    Set x = (X of TempPoint)
    Set y = (Y of TempPoint)
    Custom script: call SetUnitX(GetLastCreatedUnit(), udg_x)
    Custom script: call SetUnitY(GetLastCreatedUnit(), udg_y)
    Unit - Turn collision for (Last created unit) Off
    Set TempUGroup = (Units in (Playable map area) matching ((Matching unit) Equal to TempUnit))
    Unit Group - Pick every unit in TempUGroup and do (Actions)
      Loop - Actions
        Hashtable - Save Handle Of(Last created unit) as 0 of (Key (Picked unit)) in (Last created hashtable)
    Custom script: call DestroyGroup (udg_TempUGroup)
    Custom script: call RemoveLocation (udg_TempPoint)
    Unit Group - Add TempUnit to ResourceDropBuildings
    Wait 0.10 seconds
    Unit Group - Pick every unit in (Units in Haunt_Goldmine <gen>) and do (Remove (Picked unit) from the game)
    Unit Group - Pick every unit in (Units in Region_079 <gen>) and do (Remove (Picked unit) from the game)
    Unit - Create 1 Gold Mine for Neutral Passive at (Center of Haunt_Goldmine <gen>) facing Default building facing degrees
    Set Goldmine = (Last created unit)
    Neutral Building - Haunt Goldmine for Player 4 (Purple)
    Set Goldmine = (Random unit from (Units owned by Player 4 (Purple) of type Haunted Gold Mine))
    Unit - Create 1 Gold Mine for Neutral Passive at (Center of Region_079 <gen>) facing Default building facing degrees
    Neutral Building - Haunt (Last created unit) for Player 7 (Green)
    Set Goldmine2 = (Random unit from (Units owned by Player 7 (Green) of type Haunted Gold Mine))
    If (IntroCancel Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Wait for U06KelThuzad06 <gen> to be 0 seconds from finished playing
    If (IntroCancel Equal to True) then do (Skip remaining actions) else do (Do nothing)
    -------- NO LONGER SKIPPABLE --------
    Trigger - Turn off Escape <gen>
    Wait 0.30 seconds
    Cinematic - Turn cinematic mode Off for (All players)
    Set Cinematic = False
    Camera - Reset camera smoothing factor
    Camera - Reset camera for Player 4 (Purple) to standard game-view over 2.00 seconds
    Camera - Reset camera for Player 7 (Green) to standard game-view over 2.00 seconds
    Environment - Set sky to None
    Selection - Select EvilArthas for Player 4 (Purple)
    Selection - Select KelThuzad for Player 7 (Green)
    Neutral Building - Set Goldmine to 9000 gold
    Neutral Building - Set Goldmine2 to 9000 gold
    Unit - Order Acolyte 0073 <gen> to Harvest Goldmine
    Unit - Order Acolyte 0063 <gen> to Harvest Goldmine
    Unit - Order Acolyte01 to Harvest Goldmine
    Unit - Order Acolyte 0303 <gen> to Harvest Goldmine2
    Unit - Order Acolyte 0055 <gen> to Harvest Goldmine2
    Unit - Order Acolyte02 to Harvest Goldmine2
    Unit - Order Ghoul 0038 <gen> to Harvest Winter Tree Wall 2143 <gen>
    Unit - Order Ghoul 0051 <gen> to Harvest Winter Tree Wall 0378 <gen>
    Sound - Reset all volume channels to 100%
    Visibility - Destroy VismodBase1
    Visibility - Destroy VismodBase2
    Visibility - Create an initially Enabled visibility modifier for Player 4 (Purple) emitting Visibility from (Center of Demon_Gate <gen>) to a radius of 512.00
    Visibility - Destroy (Last created visibility modifier)
    Visibility - Create an initially Enabled visibility modifier for Player 7 (Green) emitting Visibility from (Center of Demon_Gate <gen>) to a radius of 512.00
    Visibility - Destroy (Last created visibility modifier)
    Trigger - Turn off Escape <gen>
    Trigger - Turn off Skip_Cinematic <gen>
    Set SkipVote1 = False
    Set SkipVote2 = False
    Cinematic - Fade in over 0.70 seconds using texture White Mask and color (0%, 0%, 0%) with 0% transparency
    Player - Set Player 4 (Purple) Current gold to 500
    Player - Set Player 7 (Green) Current gold to 500
    Player - Set Player 4 (Purple) Current lumber to 250
    Player - Set Player 7 (Green) Current lumber to 250
    Environment - Remove (Last created weather effect)
    Environment - Reset fog to default values
    Quest - Create a Required quest titled Demon Gate with the description Kel'Thuzad must reach the Demon Gate to commune with the mysterious Demon lord. In order to reach the mystical gate, the adjacent Orc village must be destroyed. , using icon path ReplaceableTextures\CommandButtons\BTNDemonGate.tga
    Set QUESTDemonGate = (Last created quest)
    Quest - Create a quest requirement for QUESTDemonGate with the description Destroy the Orc base protecting the Demon Gate
    Set QUESTKillRedOrcs = (Last created quest requirement)
    Quest - Create a Optional, undiscovered quest titled Orc Heroes with the description In order to win through to the Demon Gate, the Orc heroes of each Blackrock village must be destroyed. Each vile Hero carries a magical Tome that will aid you with your dire mission. , using icon path ReplaceableTextures\CommandButtons\BTNHEROBlademaster.tga
    Set QUESTOrcHeroes = (Last created quest)
    Quest - Display to (All players) the Quest Discovered message: |cffffcc00MAIN QUEST|rDemon Gate - Destroy the Orc base protecting the Demon Gate
    Sound - Enable dawn and dusk sounds
    Countdown Timer - Start TIMERSendTealWave as a One-shot timer that will expire in 45.00 seconds
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        INSANEMODE Equal to True
      Then - Actions
        AI - Start campaign AI script for Player 1 (Red): war3mapImported\U6 Insane Red.ai (aiscript)
        AI - Start campaign AI script for Player 2 (Blue): war3mapImported\U6 Insane Blue.ai (aiscript)
        AI - Start campaign AI script for Player 6 (Orange): war3mapImported\U6 Insane Orange.ai (aiscript)
        AI - Start campaign AI script for Player 10 (Light Blue): war3mapImported\U6 Insane Light Blue.ai (aiscript)
        AI - Start campaign AI script for Player 12 (Brown): war3mapImported\U6 Insane Brown.ai (aiscript)
      Else - Actions
    Trigger - Run They_come_in <gen> (checking conditions)
    Trigger - Turn on Defeat_Lose_Buildings <gen>
Acolytes being told to harvest gold does not seem to work.
Escape
  Events
  Conditions
  Actions
    Trigger - Turn off (This trigger)
    Set SkipVote1 = False
    Set SkipVote2 = False
    Set IntroCancel = True
    Cinematic - Fade out over 0.50 seconds using texture Black Mask and color (0%, 0%, 0%) with 0% transparency
    Wait 0.60 seconds
    Cinematic - Turn cinematic mode Off for (All players)
    Set Cinematic = False
    Camera - Reset camera smoothing factor
    Environment - Set sky to None
    Selection - Select EvilArthas
    Camera - Apply gg_cam_Starting_Town for Player 4 (Purple) over 0.00 seconds
    Camera - Apply gg_cam_Starting_Town for Player 7 (Green) over 0.00 seconds
    Wait 0.10 seconds
    Unit Group - Pick every unit in (Units in Haunt_Goldmine <gen>) and do (Remove (Picked unit) from the game)
    Unit Group - Pick every unit in (Units in Region_079 <gen>) and do (Remove (Picked unit) from the game)
    Camera - Reset camera for Player 4 (Purple) to standard game-view over 0.00 seconds
    Camera - Reset camera for Player 7 (Green) to standard game-view over 0.00 seconds
    Unit Group - Order (Units of type Acolyte) to Stop
    Unit Group - Pick every unit in (Units of type Graveyard) and do (Remove (Picked unit) from the game)
    Unit Group - Pick every unit in (Units in Create_Ziggurat_01 <gen>) and do (Remove (Picked unit) from the game)
    Unit Group - Pick every unit in (Units in Create_Ziggurat_02 <gen>) and do (Remove (Picked unit) from the game)
    Unit Group - Pick every unit in (Units in Create_Ziggurat_03 <gen>) and do (Remove (Picked unit) from the game)
    Unit Group - Pick every unit in (Units in Create_Ziggurat_04 <gen>) and do (Remove (Picked unit) from the game)
    Unit - Set EvilArthas movement speed to (Default movement speed of EvilArthas)
    Unit - Set KelThuzad movement speed to (Default movement speed of KelThuzad)
    Unit - Create 1 Ziggurat for Player 4 (Purple) at (Center of Create_Ziggurat_01 <gen>) facing Default building facing degrees
    Unit - Create 1 Ziggurat for Player 7 (Green) at (Center of Create_Ziggurat_02 <gen>) facing Default building facing degrees
    Unit - Create 1 Ziggurat for Player 4 (Purple) at (Center of Create_Ziggurat_03 <gen>) facing Default building facing degrees
    Unit - Create 1 Ziggurat for Player 7 (Green) at (Center of Create_Ziggurat_04 <gen>) facing Default building facing degrees
    Unit - Create 1 Gold Mine for Neutral Passive at (Center of Haunt_Goldmine <gen>) facing Default building facing degrees
    Neutral Building - Haunt (Last created unit) for Player 4 (Purple)
    Set Goldmine = (Random unit from (Units owned by Player 4 (Purple) of type Haunted Gold Mine))
    Neutral Building - Set Goldmine to 9000 gold
    Unit - Create 1 Gold Mine for Neutral Passive at (Center of Region_079 <gen>) facing Default building facing degrees
    Neutral Building - Haunt (Last created unit) for Player 7 (Green)
    Set Goldmine = (Random unit from (Units owned by Player 7 (Green) of type Haunted Gold Mine))
    Neutral Building - Set Goldmine2 to 9000 gold
    Unit - Create 1 Graveyard for Player 7 (Green) at (Center of Create_Graveyard <gen>) facing Default building facing degrees
    Set TempUnit = (Last created unit)
    Set TempPoint = (Position of (Last created unit))
    Unit - Create 1 Lumber Dummy 2 for Player 4 (Purple) at TempPoint facing Default building facing degrees
    Set x = (X of TempPoint)
    Set y = (Y of TempPoint)
    Custom script: call SetUnitX(GetLastCreatedUnit(), udg_x)
    Custom script: call SetUnitY(GetLastCreatedUnit(), udg_y)
    Unit - Turn collision for (Last created unit) Off
    Set TempUGroup = (Units in (Playable map area) matching ((Matching unit) Equal to TempUnit))
    Unit Group - Pick every unit in TempUGroup and do (Actions)
      Loop - Actions
        Hashtable - Save Handle Of(Last created unit) as 0 of (Key (Picked unit)) in (Last created hashtable)
    Custom script: call DestroyGroup (udg_TempUGroup)
    Custom script: call RemoveLocation (udg_TempPoint)
    Unit Group - Add TempUnit to ResourceDropBuildings
    Unit - Move CryptFiend01 instantly to (Center of Crypt_Fiend_01a <gen>)
    Unit - Move CryptFiend02 instantly to (Center of Crypt_Fiend_02a <gen>)
    Unit - Move Gargoyle01 instantly to (Center of Gargoyle_01a <gen>)
    Unit - Move Gargoyle02 instantly to (Center of Gargoyle_02a <gen>)
    Unit - Move Gargoyle03 instantly to (Center of Gargoyle_03a <gen>)
    Unit - Move Gargoyle04 instantly to (Center of Gargoyle_04a <gen>)
    Unit - Move MeatWagon01 instantly to (Center of Meat_Wagon_01a <gen>)
    Unit - Move MeatWagon02 instantly to (Center of Meat_Wagon_02a <gen>)
    Unit - Move EvilArthas instantly to (Center of Arthas01c <gen>)
    Unit - Move KelThuzad instantly to (Center of KelThuzad01c <gen>)
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        Acolyte01 Equal to No unit
      Then - Actions
        Unit - Create 1 Acolyte for Player 4 (Purple) at (Center of Region_027 <gen>) facing Default building facing degrees
        Set Acolyte01 = (Last created unit)
      Else - Actions
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        Acolyte02 Equal to No unit
      Then - Actions
        Unit - Create 1 Acolyte for Player 7 (Green) at (Center of Region_027_Copy <gen>) facing Default building facing degrees
        Set Acolyte02 = (Last created unit)
      Else - Actions
    Unit - Order Acolyte 0073 <gen> to Harvest Goldmine
    Unit - Order Acolyte 0063 <gen> to Harvest Goldmine
    Unit - Order Acolyte01 to Harvest Goldmine
    Unit - Order Acolyte 0303 <gen> to Harvest Goldmine2
    Unit - Order Acolyte 0055 <gen> to Harvest Goldmine2
    Unit - Order Acolyte02 to Harvest Goldmine2
    Unit - Order Ghoul 0038 <gen> to Harvest Winter Tree Wall 2143 <gen>
    Unit - Order Ghoul 0051 <gen> to Harvest Winter Tree Wall 0378 <gen>
    Visibility - Destroy VismodBase1
    Visibility - Destroy VismodBase2
    Visibility - Create an initially Enabled visibility modifier for Player 4 (Purple) emitting Visibility from (Center of Demon_Gate <gen>) to a radius of 512.00
    Visibility - Destroy (Last created visibility modifier)
    Visibility - Create an initially Enabled visibility modifier for Player 4 (Purple) emitting Visibility from (Center of Reveal <gen>) to a radius of 512.00
    Visibility - Destroy (Last created visibility modifier)
    Visibility - Create an initially Enabled visibility modifier for Player 4 (Purple) emitting Visibility from (Center of Reveal_02 <gen>) to a radius of 512.00
    Visibility - Destroy (Last created visibility modifier)
    Visibility - Create an initially Enabled visibility modifier for Player 7 (Green) emitting Visibility from (Center of Demon_Gate <gen>) to a radius of 512.00
    Visibility - Destroy (Last created visibility modifier)
    Visibility - Create an initially Enabled visibility modifier for Player 7 (Green) emitting Visibility from (Center of Reveal <gen>) to a radius of 512.00
    Visibility - Destroy (Last created visibility modifier)
    Visibility - Create an initially Enabled visibility modifier for Player 7 (Green) emitting Visibility from (Center of Reveal_02 <gen>) to a radius of 512.00
    Visibility - Destroy (Last created visibility modifier)
    Environment - Remove (Last created weather effect)
    Environment - Reset fog to default values
    Cinematic - Fade in over 0.50 seconds using texture White Mask and color (0%, 0%, 0%) with 0% transparency
    Player - Set Player 4 (Purple) Current gold to 500
    Player - Set Player 7 (Green) Current gold to 500
    Player - Set Player 4 (Purple) Current lumber to 250
    Player - Set Player 7 (Green) Current lumber to 250
    Quest - Create a Required quest titled Demon Gate with the description Kel'Thuzad must reach the Demon Gate to commune with the mysterious Demon lord. In order to reach the mystical gate, the adjacent Orc village must be destroyed. , using icon path ReplaceableTextures\CommandButtons\BTNDemonGate.tga
    Set QUESTDemonGate = (Last created quest)
    Quest - Create a quest requirement for QUESTDemonGate with the description Destroy the Orc base protecting the Demon Gate
    Set QUESTKillRedOrcs = (Last created quest requirement)
    Quest - Create a Optional, undiscovered quest titled Orc Heroes with the description In order to win through to the Demon Gate, the Orc champions of each Blackrock village must be destroyed. Each vile champion carries a magical Tome that will aid you with your dire mission., using icon path ReplaceableTextures\CommandButtons\BTNHEROBlademaster.tga
    Set QUESTOrcHeroes = (Last created quest)
    Quest - Display to (All players) the Quest Discovered message: |cffffcc00MAIN QUEST|rDemon Gate - Destroy the Orc base protecting the Demon Gate
    Sound - Enable dawn and dusk sounds
    Countdown Timer - Start TIMERSendTealWave as a One-shot timer that will expire in 45.00 seconds
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        INSANEMODE Equal to True
      Then - Actions
        AI - Start campaign AI script for Player 1 (Red): war3mapImported\U6 Insane Red.ai (aiscript)
        AI - Start campaign AI script for Player 2 (Blue): war3mapImported\U6 Insane Blue.ai (aiscript)
        AI - Start campaign AI script for Player 6 (Orange): war3mapImported\U6 Insane Orange.ai (aiscript)
        AI - Start campaign AI script for Player 10 (Light Blue): war3mapImported\U6 Insane Light Blue.ai (aiscript)
        AI - Start campaign AI script for Player 12 (Brown): war3mapImported\U6 Insane Brown.ai (aiscript)
      Else - Actions
    Trigger - Run They_come_in <gen> (checking conditions)
    Trigger - Turn on Defeat_Lose_Buildings <gen>
They come in
  Events
  Conditions
    GameOver Equal to False
  Actions
    Wait 12.00 seconds
    Unit - Create 1 Frost Wyrm for Player 4 (Purple) at (Center of Frost_Wyrm_01 <gen>) facing 90.00 degrees
    Set FrostWyrm01 = (Last created unit)
    Unit - Order FrostWyrm01 to Move To (Center of Frost_Wyrm_01_Move_Spot <gen>)
    Unit - Create 1 Gargoyle for Player 7 (Green) at (Center of Frost_Wyrm_01_Copy <gen>) facing 90.00 degrees
    Unit - Order (Last created unit) to Move To (Center of Frost_Wyrm_01_Copy_Copy_2 <gen>)
    Unit - Create 1 Gargoyle for Player 7 (Green) at (Center of Frost_Wyrm_01_Copy_Copy <gen>) facing 90.00 degrees
    Unit - Order (Last created unit) to Move To (Center of Frost_Wyrm_01_Copy_Copy_Copy <gen>)
    Camera - Pan camera as necessary for Player 4 (Purple) to (Center of Frost_Wyrm_01_Pan <gen>) over 0.5 seconds
    Camera - Pan camera as necessary for Player 7 (Green) to (Center of Frost_Wyrm_01_Pan <gen>) over 0.5 seconds
    Sound - Setup all volume channels for speech
    Cinematic - Send transmission to (All players) from KelThuzad named Kel'Thuzad: Play U06KelThuzad17 <gen> and display Behold, the Frost Wyrm! These undead dragons are the Lich King's favored pets. This one shall serve us well.. Modify duration: Add 0 seconds and Wait
    Sound - Reset all volume channels to 100%
    Wait Campaign hint delay seconds
    Quest - Display to (All players) the New Unit Available message: |cff87ceebNEW UNIT AVAILABLE|rFrost Wyrm - You may now build Frost Wyrms from the Boneyard. They are flying heavy assault creatures and can learn the Freezing Breath ability.
Orc Enters Trigger Next line
  Events
    Unit - A unit enters Orc_Line_about_Undead <gen>
  Conditions
    (Owner of (Triggering unit)) Equal to Player 3 (Teal)
  Actions
    Trigger - Turn off (This trigger)
    Trigger - Add Orc_Lines_Play <gen> to the trigger queue (Ignoring conditions)
Orc Lines Play
  Events
  Conditions
    GameOver Equal to False
  Actions
    Trigger - Turn off (This trigger)
    Sound - Setup all volume channels for speech
    If ((OrcWarlock is alive) Equal to True) then do (Send transmission to (All players) from OrcWarlock named Orc Warlock: Play U06OrcWarlock07 <gen> and display The Legion has sent the dead to test us! Victory to the Blackrock clan!. Modify duration: Add 0.00 seconds and Wait) else do (Do nothing)
    If ((Blademaster03 is alive) Equal to True) then do (Send transmission to (All players) from Blademaster03 named Blademaster: Play U06Blademaster08 <gen> and display We orcs are the true servants of the Burning Legion! These mindless undead are weak... impure! . Modify duration: Add 0.00 seconds and Wait) else do (Do nothing)
    If ((KelThuzad is alive) Equal to True) then do (Send transmission to (All players) from KelThuzad named Kel'Thuzad: Play U06KelThuzad09 <gen> and display Your people failed their task, savage. You, too, must be scourged from the world. . Modify duration: Add 0.00 seconds and Wait) else do (Do nothing)
    Sound - Reset all volume channels to 100%
    Trigger - Remove (This trigger) from the trigger queue
Teal Hero Takes Damage
  Events
    Unit - Blademaster 0094 <gen> Takes damage
  Conditions
  Actions
    Trigger - Turn off (This trigger)
    Unit - Order Blademaster03 to Orc Blademaster - Mirror Image
Send Attack to Player
  Events
    Time - TIMERSendTealWave expires
  Conditions
  Actions
    Trigger - Turn off (This trigger)
    Unit Group - Pick every unit in TealGroup and do (Order TealGroup to Attack-Move To (Center of Player_Town <gen>))
Event Hero Dies Discovered Quest
  Events
    Unit - Blademaster 0078 <gen> Dies
    Unit - Shadow Hunter 0217 <gen> Dies
    Unit - Blademaster 0088 <gen> Dies
    Unit - Alchemist 0332 <gen> Dies
    Unit - Far Seer 0109 <gen> Dies
    Unit - Far Seer 0115 <gen> Dies
    Unit - Tinker 0218 <gen> Dies
    Unit - Jubei'Thos 0140 <gen> Dies
    Unit - Jubei'Thos 0333 <gen> Dies
  Conditions
    (QUESTOrcHeroes is discovered) Equal to True
  Actions
    Trigger - Add Logicals <gen> to the trigger queue (Checking conditions)
First Hero
  Events
    Time - Every 1.00 seconds of game time
  Conditions
    (Number of units in (Units owned by Player 3 (Teal) matching (((Matching unit) is alive) Equal to True))) Equal to 0
  Actions
    Trigger - Turn off (This trigger)
    Trigger - Add First_Hero_Queue <gen> to the trigger queue (Checking conditions)
First Hero Queue
  Events
  Conditions
    GameOver Equal to False
  Actions
    Trigger - Turn off (This trigger)
    Sound - Setup all volume channels for speech
    If (((KelThuzad is alive) Equal to True) and ((EvilArthas is alive) Equal to True)) then do (Send transmission to (All players) from EvilArthas named Arthas: Play U06Arthas10 <gen> and display He dropped a large tome. Is it magical?. Modify duration: Add 0.00 seconds and Wait) else do (Do nothing)
    If (((KelThuzad is alive) Equal to True) and ((EvilArthas is alive) Equal to True)) then do (Send transmission to (All players) from KelThuzad named Kel'Thuzad: Play U06KelThuzad11 <gen> and display It is a tome of demon lore. No doubt his comrades carry it as well.. Modify duration: Add 0.00 seconds and Wait) else do (Do nothing)
    If (((KelThuzad is alive) Equal to True) and ((EvilArthas is alive) Equal to True)) then do (Send transmission to (All players) from EvilArthas named Arthas: Play U06Arthas12 <gen> and display I've encountered these demon-worshipping orcs before. How do they fit into all this? . Modify duration: Add 0.00 seconds and Wait) else do (Do nothing)
    If (((KelThuzad is alive) Equal to True) and ((EvilArthas is alive) Equal to True)) then do (Send transmission to (All players) from KelThuzad named Kel'Thuzad: Play U06KelThuzad13 <gen> and display That, young one, is a very complicated matter. Suffice it to say they no longer hold any favor with the Legion.. Modify duration: Add 0.00 seconds and Wait) else do (Do nothing)
    Sound - Reset all volume channels to 100%
    Wait 5.00 seconds
    Quest - Mark QUESTOrcHeroes as Discovered
    Leaderboard - Create a leaderboard for (All players) titled Remaining Orc Heroes
    Leaderboard - Show (Last created leaderboard)
    Leaderboard - Add Player 6 (Orange) to (Last created leaderboard) with label (Proper name of Farseer01) and value 1
    Leaderboard - Add Player 10 (Light Blue) to (Last created leaderboard) with label (Proper name of Farseer02) and value 1
    Leaderboard - Add Player 2 (Blue) to (Last created leaderboard) with label (Proper name of Blademaster01) and value 1
    Leaderboard - Add Player 12 (Brown) to (Last created leaderboard) with label (Proper name of Blademaster02) and value 1
    Leaderboard - Add Player 1 (Red) to (Last created leaderboard) with label (Proper name of BlademasterBlackrock) and value 1
    Leaderboard - Change the display style for (Last created leaderboard) to Show the title, Show labels, Hide values, and Hide icons
    Quest - Create a quest requirement for (Last created quest) with the description Kill Throk'Feroth
    Set QUESTOrangeHeroDead = (Last created quest requirement)
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        INSANEMODE Equal to True
      Then - Actions
        Quest - Create a quest requirement for (Last created quest) with the description Kill Rikk Steamshaft
        Set QUESTLightBlueHeroDead = (Last created quest requirement)
        Quest - Create a quest requirement for (Last created quest) with the description Kill Zul'kirik
        Set QUESTBlueHeroDead = (Last created quest requirement)
        Quest - Create a quest requirement for (Last created quest) with the description Kill Zonder Acidbrew
        Set QUESTBrownHeroDead = (Last created quest requirement)
      Else - Actions
        Quest - Create a quest requirement for (Last created quest) with the description Kill Mazrigos
        Set QUESTLightBlueHeroDead = (Last created quest requirement)
        Quest - Create a quest requirement for (Last created quest) with the description Kill Khanzo
        Set QUESTBlueHeroDead = (Last created quest requirement)
        Quest - Create a quest requirement for (Last created quest) with the description Kill Genjuros
        Set QUESTBrownHeroDead = (Last created quest requirement)
    Quest - Create a quest requirement for (Last created quest) with the description Kill Jubei'Thos
    Set QUESTRedHeroDead = (Last created quest requirement)
    Trigger - Add Logicals <gen> to the trigger queue (Checking conditions)
    Trigger - Remove (This trigger) from the trigger queue
    Trigger - Run TriggerOrangeAIHarass <gen> (ignoring conditions)
    Trigger - Run TriggerLightBlueAIHarass <gen> (ignoring conditions)
    Trigger - Run TriggerBrownAIHarass <gen> (ignoring conditions)
    Trigger - Remove (This trigger) from the trigger queue
Orange
  Events
  Conditions
    (Farseer01 is dead) Equal to True
  Actions
    Quest - Mark QUESTOrangeHeroDead as Completed
    Leaderboard - Remove Player 6 (Orange) from (Last created leaderboard)
Light Blue
  Events
  Conditions
    (Farseer02 is dead) Equal to True
  Actions
    Quest - Mark QUESTLightBlueHeroDead as Completed
    Leaderboard - Remove Player 10 (Light Blue) from (Last created leaderboard)
Blue
  Events
  Conditions
    (Blademaster01 is dead) Equal to True
  Actions
    Quest - Mark QUESTBlueHeroDead as Completed
    Leaderboard - Remove Player 2 (Blue) from (Last created leaderboard)
Brown
  Events
  Conditions
    (Blademaster02 is dead) Equal to True
  Actions
    Quest - Mark QUESTBrownHeroDead as Completed
    Leaderboard - Remove Player 12 (Brown) from (Last created leaderboard)
Red
  Events
  Conditions
    (BlademasterBlackrock is dead) Equal to True
  Actions
    Quest - Mark QUESTRedHeroDead as Completed
    Leaderboard - Remove Player 1 (Red) from (Last created leaderboard)
Logicals
  Events
  Conditions
  Actions
    Set DiscoveredOrcHeroes = True
    Trigger - Run Display_Quest_Message <gen> (checking conditions)
    Trigger - Run Orange <gen> (checking conditions)
    Trigger - Run Light_Blue <gen> (checking conditions)
    Trigger - Run Blue <gen> (checking conditions)
    Trigger - Run Brown <gen> (checking conditions)
    Trigger - Run Red <gen> (checking conditions)
    Trigger - Run All_Dead <gen> (checking conditions)
    Wait Campaign quest delay seconds
    Trigger - Remove (This trigger) from the trigger queue
Display Quest Message
  Events
  Conditions
    (Display_Quest_Message <gen> is on) Equal to True
    GameOver Equal to False
  Actions
    Trigger - Turn off (This trigger)
    Quest - Display to (All players) the Quest Discovered message: |cffffcc00OPTIONAL QUEST|r Kill Orc Heroes - Throk'Feroth - Mazrigos - Khanzo - Genjuros - Jubei'Thos
All Dead
  Events
  Conditions
    (Blademaster01 is dead) Equal to True
    (Blademaster02 is dead) Equal to True
    (Farseer01 is dead) Equal to True
    (Farseer02 is dead) Equal to True
    (BlademasterBlackrock is dead) Equal to True
    GameOver Equal to False
  Actions
    Quest - Mark QUESTOrcHeroes as Completed
    Quest - Display to (All players) the Quest Completed message: |cffffcc00OPTIONAL QUEST COMPLETED|rKill Orc Heroes
    Leaderboard - Destroy (Last created leaderboard)
    Set SubquestsComplete = 1
Final Town Area
  Events
    Unit - A unit enters Final_Town_01 <gen>
    Unit - A unit enters Final_Town_02 <gen>
    Unit - A unit enters Final_Town_03 <gen>
  Conditions
    (Unit-type of (Entering unit)) Equal to Lich (Lich)
  Actions
    Trigger - Turn off (This trigger)
    Trigger - Add Final_Town_Area_Lines <gen> to the trigger queue (Ignoring conditions)
Final Town Area Lines
  Events
  Conditions
    GameOver Equal to False
  Actions
    Trigger - Turn off (This trigger)
    Sound - Setup all volume channels for speech
    Cinematic - Send transmission to (All players) from KelThuzad named Kel'Thuzad: Play U06KelThuzad18 <gen> and display This camp guards the demon gate! Defeat these orcs quickly so that I can contact the demon lord!. Modify duration: Add 0.00 seconds and Wait
    If ((EvilArthas is alive) Equal to True) then do (Send transmission to (All players) from a Player 4 (Purple) Death Knight (Evil) named Arthas at (Position of EvilArthas): Play U06Arthas19 <gen> and display Understood.. Modify duration: Add 0.00 seconds and Wait) else do (Do nothing)
    Sound - Reset all volume channels to 100%
    Trigger - Remove (This trigger) from the trigger queue
TriggerBlueAIHarass
  Events
  Conditions
  Actions
    Trigger - Turn off (This trigger)
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        INSANEMODE Equal to False
      Then - Actions
        AI - Send Player 2 (Blue) the AI Command (0, 0)
      Else - Actions
TriggerBrownAIHarass
  Events
  Conditions
  Actions
    Trigger - Turn off (This trigger)
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        INSANEMODE Equal to False
      Then - Actions
        AI - Send Player 12 (Brown) the AI Command (0, 0)
      Else - Actions
TriggerOrangeAIHarass
  Events
  Conditions
  Actions
    Trigger - Turn off (This trigger)
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        INSANEMODE Equal to False
      Then - Actions
        AI - Send Player 6 (Orange) the AI Command (0, 0)
      Else - Actions
TriggerLightBlueAIHarass
  Events
  Conditions
  Actions
    Trigger - Turn off (This trigger)
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        INSANEMODE Equal to False
      Then - Actions
        AI - Send Player 10 (Light Blue) the AI Command (0, 0)
      Else - Actions
TriggerRedAIHarassOrangeDead
  Events
    Unit - A unit owned by Player 6 (Orange) Dies
  Conditions
    (Number of units in (Units owned by Player 6 (Orange) of type Great Hall)) Equal to 0
    (Number of units in (Units owned by Player 6 (Orange) of type Stronghold)) Equal to 0
    (Number of units in (Units owned by Player 6 (Orange) of type Fortress)) Equal to 0
    (Number of units in (Units owned by Player 6 (Orange) of type Barracks)) Equal to 0
    (Number of units in (Units owned by Player 6 (Orange) of type Spirit Lodge)) Equal to 0
    (Number of units in (Units owned by Player 6 (Orange) of type Beastiary)) Equal to 0
  Actions
    Trigger - Turn off (This trigger)
    Trigger - Turn off TriggerRedAIHarassLightBlueDead <gen>
    Trigger - Turn off TriggerRedAIHarassBrownDead <gen>
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        INSANEMODE Equal to False
      Then - Actions
        AI - Send Player 1 (Red) the AI Command (0, 0)
      Else - Actions
TriggerRedAIHarassLightBlueDead
  Events
    Unit - A unit owned by Player 10 (Light Blue) Dies
  Conditions
    (Number of units in (Units owned by Player 10 (Light Blue) of type Great Hall)) Equal to 0
    (Number of units in (Units owned by Player 10 (Light Blue) of type Stronghold)) Equal to 0
    (Number of units in (Units owned by Player 10 (Light Blue) of type Fortress)) Equal to 0
    (Number of units in (Units owned by Player 10 (Light Blue) of type Barracks)) Equal to 0
    (Number of units in (Units owned by Player 10 (Light Blue) of type Beastiary)) Equal to 0
  Actions
    Trigger - Turn off (This trigger)
    Trigger - Turn off TriggerRedAIHarassOrangeDead <gen>
    Trigger - Turn off TriggerRedAIHarassBrownDead <gen>
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        INSANEMODE Equal to False
      Then - Actions
        AI - Send Player 1 (Red) the AI Command (0, 0)
      Else - Actions
TriggerRedAIHarassBrownDead
  Events
    Unit - A unit owned by Player 12 (Brown) Dies
  Conditions
    (Number of units in (Units owned by Player 12 (Brown) of type Great Hall)) Equal to 0
    (Number of units in (Units owned by Player 12 (Brown) of type Stronghold)) Equal to 0
    (Number of units in (Units owned by Player 12 (Brown) of type Fortress)) Equal to 0
    (Number of units in (Units owned by Player 12 (Brown) of type Barracks)) Equal to 0
    (Number of units in (Units owned by Player 12 (Brown) of type Beastiary)) Equal to 0
  Actions
    Trigger - Turn off (This trigger)
    Trigger - Turn off TriggerRedAIHarassOrangeDead <gen>
    Trigger - Turn off TriggerRedAIHarassLightBlueDead <gen>
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        INSANEMODE Equal to False
      Then - Actions
        AI - Send Player 1 (Red) the AI Command (0, 0)
      Else - Actions
Red Town Dead
  Events
    Unit - A unit owned by Player 1 (Red) Dies
  Conditions
    (Count structures controlled by Player 1 (Red) (Include incomplete structures)) Equal to 0
    GameOver Equal to False
  Actions
    Trigger - Turn off (This trigger)
    Trigger - Turn off Final_Town_Area <gen>
    Trigger - Turn off Final_Town_Area_Lines <gen>
    Trigger - Turn off First_Hero <gen>
    Quest - Display to (All players) the Quest Completed message: |cffffcc00MAIN QUEST COMPLETED|rDemon Gate
    Quest - Mark QUESTDemonGate as Completed
    Quest - Mark QUESTKillRedOrcs as Completed
    Wait Campaign quest delay seconds
    Sound - Setup all volume channels for speech
    If (((Weather01 <gen> contains EvilArthas) Equal to True) and ((EvilArthas is alive) Equal to True)) then do (Send transmission to (All players) from a Player 4 (Purple) Death Knight (Evil) named Arthas at (Position of EvilArthas): Play U06Arthas20 <gen> and display The brutes have been slain. The demon gate is yours, lich.. Modify duration: Add 0.00 seconds and Wait) else do (Do nothing)
    If (((Final_Town_03 <gen> contains EvilArthas) Equal to True) and ((EvilArthas is alive) Equal to True)) then do (Send transmission to (All players) from a Player 4 (Purple) Death Knight (Evil) named Arthas at (Position of EvilArthas): Play U06Arthas20 <gen> and display The brutes have been slain. The demon gate is yours, lich.. Modify duration: Add 0.00 seconds and Wait) else do (Do nothing)
    Sound - Reset all volume channels to 100%
    Sound - Remove WaterLakeLoop1 <gen> across LakeLoop01 <gen>
    Sound - Remove WaterLakeLoop1 <gen> across LakeLoop02 <gen>
    Sound - Remove WaterLakeLoop1 <gen> across LakeLoop03 <gen>
    Sound - Remove WaterStreamLoop1 <gen> across StreamLoop01 <gen>
    Sound - Remove WaterStreamLoop1 <gen> across StreamLoop02 <gen>
    Cinematic - Fade out over 2.00 seconds using texture Black Mask and color (0%, 0%, 0%) with 0% transparency
    Wait 2.00 seconds
    Set DefeatOk = False
    Trigger - Run Start_Ending <gen> (ignoring conditions)
Start Ending
  Events
  Conditions
  Actions
    Trigger - Turn off (This trigger)
    Leaderboard - Destroy (Last created leaderboard)
    Cinematic - Turn cinematic mode On for (All players)
    Set Cinematic = True
    Unit Group - Pick every unit in (Units owned by Player 2 (Blue)) and do (Hide (Picked unit))
    Unit Group - Pick every unit in (Units owned by Player 6 (Orange)) and do (Hide (Picked unit))
    Unit Group - Pick every unit in (Units owned by Player 10 (Light Blue)) and do (Hide (Picked unit))
    Unit Group - Pick every unit in (Units owned by Player 12 (Brown)) and do (Hide (Picked unit))
    Unit Group - Pick every unit in (Units owned by Player 4 (Purple)) and do (Hide (Picked unit))
    Unit Group - Pick every unit in (Units owned by Player 7 (Green)) and do (Hide (Picked unit))
    Unit Group - Pick every unit in (Units owned by Player 3 (Teal)) and do (Hide (Picked unit))
    Sound - Disable dawn and dusk sounds
    -------- CINEMATIC CANCELLABLE NOW --------
    Trigger - Turn on Ending_Cancel <gen>
    Trigger - Turn on Skip_Cinematic <gen>
    Camera - Apply gg_cam_Start_Ending for Player 4 (Purple) over 0.00 seconds
    Camera - Apply gg_cam_Start_Ending for Player 7 (Green) over 0.00 seconds
    Unit Group - Pick every unit in (Units in End_Cinematic <gen>) and do (Remove (Picked unit) from the game)
    Unit - Create 1 Demon Gate for Neutral Passive at (Center of Demon_Gate_Spot <gen>) facing Default building facing degrees
    Sound - Set position of CityScapeMagicRunesLoop1 <gen> to (Center of Demon_Gate_Spot <gen>) with Z offset 0
    Sound - Set volume of CityScapeMagicRunesLoop1 <gen> to 70.00%
    Sound - Play CityScapeMagicRunesLoop1 <gen>
    Unit - Grant shared vision of (Last created unit) to Player 4 (Purple)
    Unit - Grant shared vision of (Last created unit) to Player 7 (Green)
    Unit - Move EvilArthas instantly to (Center of Arthas01end <gen>)
    Unit - Move KelThuzad instantly to (Center of KelThuzad01end <gen>)
    Unit - Unhide EvilArthas
    Unit - Unhide KelThuzad
    Unit - Remove All buffs from EvilArthas
    Unit - Remove All buffs from KelThuzad
    Hero - Instantly revive EvilArthas at (Center of Arthas01end <gen>), Hide revival graphics
    Hero - Instantly revive KelThuzad at (Center of KelThuzad01end <gen>), Hide revival graphics
    Unit - Create 1 Warlock for Player 3 (Teal) at (Center of Archimonde <gen>) facing (Position of KelThuzad)
    Set Archimonde = (Last created unit)
    Unit - Make Archimonde Invulnerable
    Unit - Make EvilArthas Invulnerable
    Unit - Make KelThuzad Invulnerable
    Unit - Turn collision for Archimonde Off
    Wait 1.50 seconds
    If (EndCinematicCancel Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Cinematic - Fade in over 1.00 seconds using texture Black Mask and color (0%, 0%, 0%) with 0% transparency
    Camera - Lock camera target for Player 4 (Purple) to KelThuzad, offset by (0.00, 0.00) using Default rotation
    Camera - Lock camera target for Player 7 (Green) to KelThuzad, offset by (0.00, 0.00) using Default rotation
    Sound - Set position of CityScapeMagicRunesLoop1 <gen> to (Center of Demon_Gate_Spot <gen>) with Z offset 0
    Sound - Play CityScapeMagicRunesLoop1 <gen>
    Unit - Order EvilArthas to Move To (Center of Arthas01end02 <gen>)
    Unit - Order KelThuzad to Move To (Center of Demon_Gate <gen>)
    Sound - Attach HorseLoop3 <gen> to EvilArthas
    Sound - Play HorseLoop3 <gen>
    Wait 7.00 seconds
    If (EndCinematicCancel Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Animation - Play KelThuzad's stand channel animation
    Unit - Make KelThuzad face (Center of Archimonde <gen>) over 0 seconds
    Cinematic - Send transmission to (All players) from KelThuzad named Kel'Thuzad: Play U06KelThuzad21 <gen> and display I call upon thee, Archimonde! Your humble servant seeks an audience!. Modify duration: Add 0.00 seconds and Wait
    If (EndCinematicCancel Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Animation - Reset KelThuzad's animation
    Visibility - Create an initially Enabled visibility modifier for Player 4 (Purple) emitting Visibility across Archimonde_Move_to <gen>
    Visibility - Create an initially Enabled visibility modifier for Player 7 (Green) emitting Visibility across Archimonde_Move_to <gen>
    Sound - Play UndeadMiningWhat1 <gen>
    Sound - Set position of DarkSummoningTarget1 <gen> to (Center of Demon_Gate_Spot <gen>) with Z offset 0
    Sound - Play DarkSummoningTarget1 <gen>
    Special Effect - Create a special effect attached to the origin of Archimonde using Abilities\Spells\undead\animatedead\animatedeadtarget.mdl
    Animation - Change Archimonde's vertex coloring to (100%, 100%, 100%) with 45.00% transparency
    Sound - Play Doom
    Unit - Move Archimonde instantly to (Center of Archimonde_Move_to <gen>)
    Wait 1.00 seconds
    If (EndCinematicCancel Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Cinematic - Send transmission to (All players) from Archimonde named Archimonde: Play U06Archimonde22 <gen> and display You called my name, puny lich, and I have come. You are Kel'Thuzad, are you not? . Modify duration: Add 0.00 seconds and Wait
    If (EndCinematicCancel Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Cinematic - Send transmission to (All players) from KelThuzad named Kel'Thuzad: Play U06KelThuzad23 <gen> and display Yes, great one. I am the summoner.. Modify duration: Add 0.00 seconds and Wait
    If (EndCinematicCancel Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Camera - Apply gg_cam_StartEnding2 for Player 4 (Purple) over 0.00 seconds
    Camera - Apply gg_cam_StartEnding2 for Player 7 (Green) over 0.00 seconds
    Cinematic - Send transmission to (All players) from Archimonde named Archimonde: Play U06Archimonde24 <gen> and display Very well, then. There is a special tome you must find... the only remaining spellbook of Medivh, the Last Guardian. Only his lost incantations are powerful enough to bring me into your world.. Modify duration: Add 0.00 seconds and Wait
    If (EndCinematicCancel Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Cinematic - Send transmission to (All players) from KelThuzad named Kel'Thuzad: Play U06KelThuzad25 <gen> and display Where should we search for it, great one?. Modify duration: Add 0.00 seconds and Wait
    If (EndCinematicCancel Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Cinematic - Send transmission to (All players) from Archimonde named Archimonde: Play U06Archimonde26 <gen> and display Seek out the mortal city of Dalaran. It is there that the tome is kept. At twilight, three days from now, you will begin the summoning. . Modify duration: Add 0.00 seconds and Wait
    Special Effect - Destroy (Last created special effect)
    Sound - Stop CityScapeMagicRunesLoop1 <gen> After fading
    If (EndCinematicCancel Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Trigger - Turn off SetupAI <gen>
    Trigger - Turn off Ending_Cancel <gen>
    Set EndCinematicCancel = True
    Cinematic - Fade out over 2.00 seconds using texture Black Mask and color (0%, 0%, 0%) with 0% transparency
    Wait 2.00 seconds
    Unit Group - Pick every unit in (Units in (Playable map area)) and do (Actions)
      Loop - Actions
        Unit - Pause (Picked unit)
        Unit - Hide (Picked unit)
    Cinematic - Turn cinematic mode Off for (All players)
    Wait 0.50 seconds
    Trigger - Run Endgame_Text <gen> (checking conditions)
Ending Cancel
  Events
  Conditions
    EndCinematicCancel Equal to False
  Actions
    Trigger - Turn off (This trigger)
    Sound - Stop (Last played sound) Immediately
    Set EndCinematicCancel = True
    Cinematic - Fade out over 2.00 seconds using texture Black Mask and color (0%, 0%, 0%) with 0% transparency
    Wait 2.00 seconds
    Unit Group - Pick every unit in (Units in (Playable map area)) and do (Actions)
      Loop - Actions
        Unit - Pause (Picked unit)
        Unit - Hide (Picked unit)
    Cinematic - Turn cinematic mode Off for (All players)
    Wait 0.50 seconds
    Trigger - Run Endgame_Text <gen> (checking conditions)
Defeat Lose Buildings
  Events
    Time - Every 1.00 seconds of game time
  Conditions
    (Count structures controlled by Player 4 (Purple) (Include incomplete structures)) Equal to 0
    (Count structures controlled by Player 9 (Gray) (Include incomplete structures)) Equal to 0
    GargoyleCinematicRunning Equal to False
    SylvanasCinematicRunning Equal to False
    GameOver Equal to False
  Actions
    Set GameOver = True
    Cinematic - Fade out over 2 seconds using texture White Mask and color (0%, 0%, 0%) with 0% transparency
    Quest - Display to (All players) the Quest Failed message: |cffffcc00MISSION FAILED|rAll of your buildings have been destroyed.
    Sound - Play SadMystery <gen>
    Wait 2 seconds
    Unit Group - Pick every unit in (Units in (Playable map area)) and do (Pause (Picked unit))
    Unit Group - Pick every unit in (Units in (Playable map area)) and do (Hide (Picked unit))
Default melee game initialization for all players
Initialization
  Events
    Map initialization
  Conditions
  Actions
    Unit Group - Pick every unit in (Units owned by Player 11 (Dark Green)) and do (Change color of (Picked unit) to Black)
    Unit Group - Pick every unit in (Units owned by Player 11 (Dark Green) of type Dreadlord) and do (Change color of (Picked unit) to Purple)
    Cinematic - Turn cinematic mode On for (All players)
    Unit Group - Add all units of (Units in FelHoundRegion <gen> matching ((Unit-type of (Matching unit)) Equal to Fel Stalker)) to FellhoundGroup
    Unit Group - Add all units of (Units in GargoyleRegion <gen>) to Flyers
    Environment - Set sky to Lordaeron Winter Sky
    Environment - Set fog to style 0 (fogstyle), z-start 1500.00, z-end 5000.00, density 0 and color (0.00%, 30.00%, 90.00%)
    Unit - Set Lich 0276 <gen> movement speed to 200.00
    Unit - Set Death Knight 0277 <gen> movement speed to 200.00
    Trigger - Run For_Tim <gen> (ignoring conditions)
    Trigger - Run Start_Music <gen> (ignoring conditions)
    Unit - Change color of Death Knight 0306 <gen> to Gray
    Unit - Pause Fel Stalker 0322 <gen>
    Unit - Pause Fel Stalker 0330 <gen>
    Unit - Pause Fel Stalker 0328 <gen>
    Unit - Pause Fel Stalker 0331 <gen>
    Animation - Play Necromancer 0321 <gen>'s channel animation
    Animation - Play Ghoul 0284 <gen>'s channel animation
Start Music
  Events
  Conditions
  Actions
    Sound - Clear the music list
    Wait 0.01 seconds
    Sound - Play Sad Mystery
For Tim
  Events
  Conditions
  Actions
    -------- Begin --------
    Camera - Change camera smoothing factor to 0.00
    -------- Shot A --------
    -------- Shot A --------
    -------- Shot A --------
    -------- Shot A --------
    -------- Shot A --------
    -------- Shot A --------
    -------- Shot A --------
    Cinematic - Fade in over 1.50 seconds using texture White Mask and color (0%, 0%, 0%) with 0% transparency
    Camera - Apply gg_cam_Camera_018 for Player 4 (Purple) over 0 seconds
    Camera - Apply gg_cam_Camera_018 for Player 7 (Green) over 0 seconds
    Unit - Order Death Knight 0277 <gen> to Move To (Center of Region_061 <gen>)
    Unit - Order Lich 0276 <gen> to Move To (Center of Region_063 <gen>)
    Camera - Apply gg_cam_Camera_020 for Player 4 (Purple) over 11.00 seconds
    Camera - Apply gg_cam_Camera_020 for Player 7 (Green) over 11.00 seconds
    Wait 1.00 seconds
    Trigger - Turn on Skip_Cinematic <gen>
    Trigger - Turn on Escape_Interlude <gen>
    If (Escape Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Sound - Set volume of HorseLoop2 <gen> to 50.00%
    Sound - Play HorseLoop2 <gen>
    Wait 3.50 seconds
    If (Escape Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Unit - Order Death Knight 0277 <gen> to Move To (Center of Region_061_Copy <gen>)
    Unit - Order Lich 0276 <gen> to Move To (Center of Region_063_Copy <gen>)
    Sound - Set volume of HorseLoop3 <gen> to 50.00%
    Sound - Play HorseLoop3 <gen>
    Wait 5.00 seconds
    If (Escape Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Cinematic - Fade out over 0.50 seconds using texture White Mask and color (0%, 0%, 0%) with 0% transparency
    Wait 0.50 seconds
    If (Escape Equal to True) then do (Skip remaining actions) else do (Do nothing)
    -------- Shot B --------
    -------- Shot B --------
    -------- Shot B --------
    -------- Shot B --------
    -------- Shot B --------
    -------- Shot B --------
    -------- Shot B --------
    Camera - Apply gg_cam_Camera_019 for Player 4 (Purple) over 0.00 seconds
    Camera - Apply gg_cam_Camera_019 for Player 7 (Green) over 0.00 seconds
    Cinematic - Fade in over 0.50 seconds using texture White Mask and color (0%, 0%, 0%) with 0% transparency
    Unit - Move Death Knight 0277 <gen> instantly to (Center of Region_064 <gen>)
    Unit - Order Death Knight 0277 <gen> to Move To (Center of Region_065 <gen>)
    Unit - Move Lich 0276 <gen> instantly to (Center of Region_066 <gen>)
    Unit - Order Lich 0276 <gen> to Move To (Center of Region_067 <gen>)
    Camera - Apply gg_cam_Camera_021 for Player 4 (Purple) over 12.00 seconds
    Camera - Apply gg_cam_Camera_021 for Player 7 (Green) over 12.00 seconds
    Sound - Set volume of HorseLoop3 <gen> to 50.00%
    Sound - Play HorseLoop3 <gen>
    Cinematic - Send transmission to (All players) from Death Knight 0277 <gen> named Arthas: Play U05BArthas30 <gen> and display So, you're not upset about me killing you that one time?. Modify duration: Add 1.00 seconds and Don't wait
    Wait for U05BArthas30 <gen> to be 0 seconds from finished playing
    If (Escape Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Cinematic - Send transmission to (All players) from Lich 0276 <gen> named Kel'Thuzad: Play U05BKelThuzad31 <gen> and display Don't be foolish. The Lich King told me how our encounter would end. . Modify duration: Add 0 seconds and Don't wait
    Wait 1.50 seconds
    Sound - Set volume of HorseLoop3 <gen> to 50.00%
    Sound - Play HorseLoop3 <gen>
    If (Escape Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Wait 0.50 seconds
    If (Escape Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Wait 2.00 seconds
    If (Escape Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Wait for U05BKelThuzad31 <gen> to be 0 seconds from finished playing
    If (Escape Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Cinematic - Send transmission to (All players) from Death Knight 0277 <gen> named Arthas: Play U05BArthas32 <gen> and display The Lich King knew that I would kill you?. Modify duration: Add 0 seconds and Don't wait
    Unit - Make Death Knight 0277 <gen> face (Position of Lich 0276 <gen>) over 0 seconds
    Wait 3.00 seconds
    If (Escape Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Wait for U05BArthas32 <gen> to be 0 seconds from finished playing
    If (Escape Equal to True) then do (Skip remaining actions) else do (Do nothing)
    -------- Shot C1 --------
    -------- Shot C1 --------
    -------- Shot C1 --------
    -------- Shot C1 --------
    -------- Shot C1 --------
    -------- Shot C1 --------
    -------- Shot C1 --------
    Camera - Apply gg_cam_Camera_023 for Player 4 (Purple) over 0.00 seconds
    Camera - Apply gg_cam_Camera_023 for Player 7 (Green) over 0.00 seconds
    Camera - Apply gg_cam_Camera_027 for Player 4 (Purple) over 6.00 seconds
    Camera - Apply gg_cam_Camera_027 for Player 7 (Green) over 6.00 seconds
    Animation - Lock Death Knight 0277 <gen>'s Head to face Lich 0276 <gen>, offset by (0, 0, 100.00)
    Unit - Make Lich 0276 <gen> face Death Knight 0277 <gen> over 0 seconds
    Cinematic - Send transmission to (All players) from Lich 0276 <gen> named Kel'Thuzad: Play U05BKelThuzad33 <gen> and display Of course. He chose you to be his champion long before the Scourge even began. . Modify duration: Add 0 seconds and Don't wait
    Wait 1.50 seconds
    If (Escape Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Wait 0.50 seconds
    If (Escape Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Wait 1.00 seconds
    If (Escape Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Wait 1.50 seconds
    If (Escape Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Wait 0.50 seconds
    If (Escape Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Wait 1.00 seconds
    If (Escape Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Wait for U05BKelThuzad33 <gen> to be 0 seconds from finished playing
    If (Escape Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Do nothing
    Do nothing
    Do nothing
    Do nothing
    Do nothing
    Do nothing
    Do nothing
    Do nothing
    -------- Shot C2 --------
    -------- Shot C2 --------
    -------- Shot C2 --------
    -------- Shot C2 --------
    -------- Shot C2 --------
    -------- Shot C2 --------
    -------- Shot C2 --------
    -------- Shot C2 --------
    -------- Shot C2 --------
    -------- Shot C2 --------
    Camera - Apply gg_cam_Camera_025 for Player 4 (Purple) over 0.00 seconds
    Camera - Apply gg_cam_Camera_025 for Player 7 (Green) over 0.00 seconds
    Cinematic - Send transmission to (All players) from Death Knight 0277 <gen> named Arthas: Play U05BArthas34 <gen> and display If he's so all knowing, then how can the dreadlords control him like they do?. Modify duration: Add 0 seconds and Don't wait
    Unit - Order Death Knight 0277 <gen> to Move To (Center of Region_072 <gen>)
    Unit - Make Lich 0276 <gen> face (Center of Region_072 <gen>) over 2.00 seconds
    Animation - Reset Death Knight 0277 <gen>'s body-part facing
    Wait 4.00 seconds
    If (Escape Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Wait for U05BArthas34 <gen> to be 0 seconds from finished playing
    If (Escape Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Cinematic - Send transmission to (All players) from Lich 0276 <gen> named Kel'Thuzad: Play U05BKelThuzad35 <gen> and display They are agents of the ones who created our master: the fiery lords of the Burning Legion.. Modify duration: Add 0 seconds and Don't wait
    Wait 1.50 seconds
    If (Escape Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Wait 0.50 seconds
    If (Escape Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Wait 5.00 seconds
    If (Escape Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Wait for U05BKelThuzad35 <gen> to be 0 seconds from finished playing
    If (Escape Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Cinematic - Send transmission to (All players) from Death Knight 0277 <gen> named Arthas: Play U05BArthas36 <gen> and display What is this Legion?. Modify duration: Add 0 seconds and Don't wait
    Wait 2.00 seconds
    If (Escape Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Wait for U05BArthas36 <gen> to be 0 seconds from finished playing
    If (Escape Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Cinematic - Fade out over 0.50 seconds using texture White Mask and color (0%, 0%, 0%) with 0% transparency
    Unit Group - Pick every unit in FellhoundGroup and do (Order (Picked unit) to Move To (Center of Region_068 <gen>))
    Trigger - Run Meteor_A <gen> (checking conditions)
    Wait 0.50 seconds
    If (Escape Equal to True) then do (Skip remaining actions) else do (Do nothing)
    -------- Shot D --------
    -------- Shot D --------
    -------- Shot D --------
    -------- Shot D --------
    -------- Shot D --------
    -------- Shot D --------
    -------- Shot D --------
    -------- Shot D --------
    -------- Shot D --------
    -------- Shot D --------
    Environment - Set fog to style 0 (fogstyle), z-start 1500.00, z-end 5000.00, density 0 and color (80.00%, 10.00%, 0.00%)
    Environment - Set sky to Lordaeron Winter Sky (Red)
    Camera - Apply gg_cam_Camera_015 for Player 4 (Purple) over 0.00 seconds
    Camera - Apply gg_cam_Camera_015 for Player 7 (Green) over 0.00 seconds
    Camera - Apply gg_cam_Camera_026 for Player 4 (Purple) over 5.00 seconds
    Camera - Apply gg_cam_Camera_026 for Player 7 (Green) over 5.00 seconds
    Cinematic - Fade in over 0.50 seconds using texture White Mask and color (0%, 0%, 0%) with 0% transparency
    Cinematic - Send transmission to (All players) from Lich 0276 <gen> named Kel'Thuzad: Play U05BKelThuzad37 <gen> and display It is a vast demonic army that has consumed countless worlds beyond our own. Now, it comes to set this world to the flame. Our master was created to pave the way for its arrival. The dreadlords were sent to make sure that he succeeded.. Modify duration: Add 0 seconds and Don't wait
    Sound - Set position of FelHoundYes2 <gen> to (Center of FelHoundRegion <gen>) with Z offset 0
    Sound - Set volume of FelHoundYes2 <gen> to 25.00%
    Sound - Play FelHoundYes2 <gen>
    Wait 1.00 seconds
    Sound - Set position of FelHoundYes1 <gen> to (Center of FelHoundRegion <gen>) with Z offset 0
    Sound - Set volume of FelHoundYes1 <gen> to 25.00%
    Sound - Play FelHoundYes1 <gen>
    If (Escape Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Trigger - Run Meteor_B <gen> (checking conditions)
    Wait 1.00 seconds
    Sound - Set position of FelHoundYesAttack2 <gen> to (Center of FelHoundRegion <gen>) with Z offset 0
    Sound - Set volume of FelHoundYesAttack2 <gen> to 25.00%
    Sound - Play FelHoundYesAttack2 <gen>
    If (Escape Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Trigger - Run Meteor_C <gen> (checking conditions)
    Wait 0.50 seconds
    Sound - Set position of FelHoundYes2 <gen> to (Center of FelHoundRegion <gen>) with Z offset 0
    Sound - Set volume of FelHoundYes2 <gen> to 25.00%
    Sound - Play FelHoundYes2 <gen>
    If (Escape Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Trigger - Run Meteor_D <gen> (checking conditions)
    Wait 1.50 seconds
    If (Escape Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Sound - Set position of FelHoundYesAttack2 <gen> to (Center of FelHoundRegion <gen>) with Z offset 0
    Sound - Set volume of FelHoundYesAttack2 <gen> to 25.00%
    Sound - Play FelHoundYesAttack2 <gen>
    Wait 0.50 seconds
    If (Escape Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Cinematic - Fade out over 0.50 seconds using texture White Mask and color (0%, 0%, 0%) with 0% transparency
    Wait 0.50 seconds
    If (Escape Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Cinematic - Fade in over 0.50 seconds using texture White Mask and color (0%, 0%, 0%) with 0% transparency
    Camera - Apply gg_cam_Camera_028 for Player 4 (Purple) over 0.00 seconds
    Camera - Apply gg_cam_Camera_028 for Player 7 (Green) over 0.00 seconds
    Camera - Apply gg_cam_Camera_029 for Player 4 (Purple) over 5.00 seconds
    Camera - Apply gg_cam_Camera_029 for Player 7 (Green) over 5.00 seconds
    Wait 4.50 seconds
    If (Escape Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Cinematic - Fade out over 0.50 seconds using texture White Mask and color (0%, 0%, 0%) with 0% transparency
    Wait 0.50 seconds
    If (Escape Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Cinematic - Fade in over 0.50 seconds using texture White Mask and color (0%, 0%, 0%) with 0% transparency
    Do nothing
    Do nothing
    Do nothing
    Do nothing
    Do nothing
    -------- Look at Commands --------
    -------- Shot E --------
    -------- Shot E --------
    -------- Shot E --------
    -------- Shot E --------
    -------- Shot E --------
    -------- Shot E --------
    -------- Shot E --------
    -------- Shot E --------
    -------- Shot E --------
    -------- Shot E --------
    Camera - Apply gg_cam_Camera_016 for Player 4 (Purple) over 0.00 seconds
    Camera - Apply gg_cam_Camera_016 for Player 7 (Green) over 0.00 seconds
    Trigger - Run Desolve_A <gen> (ignoring conditions)
    Wait 4.00 seconds
    If (Escape Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Trigger - Run Desolve_B <gen> (ignoring conditions)
    Cinematic - Fade out over 0.50 seconds using texture White Mask and color (0%, 0%, 0%) with 0% transparency
    Wait 0.50 seconds
    If (Escape Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Cinematic - Fade in over 0.50 seconds using texture White Mask and color (0%, 0%, 0%) with 0% transparency
    Camera - Apply gg_cam_Camera_017 for Player 4 (Purple) over 0.00 seconds
    Camera - Apply gg_cam_Camera_017 for Player 7 (Green) over 6.00 seconds
    Wait 1.00 seconds
    If (Escape Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Trigger - Run Desolve_C <gen> (ignoring conditions)
    Wait 1.00 seconds
    If (Escape Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Trigger - Run Desolve_D <gen> (ignoring conditions)
    Wait 4.00 seconds
    If (Escape Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Wait for U05BKelThuzad37 <gen> to be 0 seconds from finished playing
    If (Escape Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Cinematic - Fade out over 0.50 seconds using texture White Mask and color (0%, 0%, 0%) with 0% transparency
    Wait 0.50 seconds
    If (Escape Equal to True) then do (Skip remaining actions) else do (Do nothing)
    -------- Shot F1 --------
    -------- Shot F1 --------
    -------- Shot F1 --------
    -------- Shot F1 --------
    -------- Shot F1 --------
    -------- Shot F1 --------
    -------- Shot F1 --------
    -------- Shot F1 --------
    Environment - Set fog to style 0 (fogstyle), z-start 1500.00, z-end 5000.00, density 0 and color (0.00%, 30.00%, 90.00%)
    Environment - Set sky to Lordaeron Winter Sky
    Environment - Create at Region_069 <gen> the weather effect Northrend Snow (Heavy)
    Environment - Turn (Last created weather effect) On
    Camera - Apply gg_cam_Camera_025 for Player 4 (Purple) over 0.00 seconds
    Camera - Apply gg_cam_Camera_025 for Player 7 (Green) over 0.00 seconds
    Cinematic - Fade in over 0.50 seconds using texture White Mask and color (0%, 0%, 0%) with 0% transparency
    Cinematic - Send transmission to (All players) from Death Knight 0277 <gen> named Arthas: Play U05BArthas38 <gen> and display So the plague in Lordaeron, the citadels in Northrend, the slaughtering of the elves... It was all just to prepare for some huge demonic invasion?. Modify duration: Add 0 seconds and Don't wait
    Wait 3.00 seconds
    If (Escape Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Unit - Make Death Knight 0277 <gen> face Lich 0276 <gen> over 0 seconds
    Wait for U05BArthas38 <gen> to be 0 seconds from finished playing
    If (Escape Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Wait 0.50 seconds
    Unit Group - Order Flyers to Move To (Center of Region_073 <gen>)
    If (Escape Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Animation - Lock Death Knight 0277 <gen>'s Head to face Lich 0276 <gen>, offset by (0, 0, 90)
    Do nothing
    Do nothing
    -------- Shot F2 --------
    -------- Shot F2 --------
    -------- Shot F2 --------
    -------- Shot F2 --------
    -------- Shot F2 --------
    -------- Shot F2 --------
    -------- Shot F2 --------
    -------- Shot F2 --------
    Camera - Apply gg_cam_Camera_022 for Player 4 (Purple) over 0.00 seconds
    Camera - Apply gg_cam_Camera_022 for Player 7 (Green) over 0.00 seconds
    Cinematic - Send transmission to (All players) from Lich 0276 <gen> named Kel'Thuzad: Play U05BKelThuzad39 <gen> and display Yes. In time, you will find that our entire history has been shaped by the coming conflict. Now come, we have much work to do.. Modify duration: Add 0 seconds and Don't wait
    Wait 12.50 seconds
    If (Escape Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Wait for U05BKelThuzad39 <gen> to be 0 seconds from finished playing
    If (Escape Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Wait 0.50 seconds
    If (Escape Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Wait 0.50 seconds
    If (Escape Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Cinematic - Fade out over 1.00 seconds using texture White Mask and color (0%, 0%, 0%) with 0% transparency
    Trigger - Turn off Skip_Cinematic <gen>
    Trigger - Turn off Escape_Interlude <gen>
    Set SkipVote1 = False
    Set SkipVote2 = False
    Wait 0.50 seconds
    If (Escape Equal to True) then do (Skip remaining actions) else do (Do nothing)
    Unit - Change ownership of Death Knight 0277 <gen> to Neutral Passive and Change color
    Unit - Change ownership of Lich 0276 <gen> to Neutral Passive and Change color
    Unit Group - Pick every unit in (Units in Region_077 <gen> owned by Player 4 (Purple)) and do (Remove (Picked unit) from the game)
    Unit Group - Pick every unit in (Units owned by Player 11 (Dark Green)) and do (Remove (Picked unit) from the game)
    Cinematic - Turn cinematic mode Off for (All players)
    Visibility - Create an initially Enabled visibility modifier for Player 4 (Purple) emitting Black mask across Region_077 <gen>
    Visibility - Create an initially Enabled visibility modifier for Player 7 (Green) emitting Black mask across Region_077 <gen>
    Animation - Reset Death Knight 0277 <gen>'s body-part facing
    Unit - Set Death Knight 0277 <gen> movement speed to (Default movement speed of Death Knight 0277 <gen>)
    Unit - Set Lich 0276 <gen> movement speed to (Default movement speed of Lich 0276 <gen>)
    Trigger - Run Init_Gametext <gen> (ignoring conditions)
Escape Interlude
  Events
  Conditions
  Actions
    Trigger - Turn off (This trigger)
    Set SkipVote1 = False
    Set SkipVote2 = False
    Cinematic - Fade out over 0.50 seconds using texture White Mask and color (0%, 0%, 0%) with 0% transparency
    Wait 0.50 seconds
    Unit - Change ownership of Death Knight 0277 <gen> to Neutral Passive and Change color
    Unit - Change ownership of Lich 0276 <gen> to Neutral Passive and Change color
    Unit Group - Pick every unit in (Units in Region_077 <gen> owned by Player 4 (Purple)) and do (Remove (Picked unit) from the game)
    Unit Group - Pick every unit in (Units owned by Player 11 (Dark Green)) and do (Remove (Picked unit) from the game)
    Cinematic - Turn cinematic mode Off for (All players)
    Visibility - Create an initially Enabled visibility modifier for Player 4 (Purple) emitting Black mask across Region_077 <gen>
    Visibility - Create an initially Enabled visibility modifier for Player 7 (Green) emitting Black mask across Region_077 <gen>
    Animation - Reset Death Knight 0277 <gen>'s body-part facing
    Unit - Set Death Knight 0277 <gen> movement speed to (Default movement speed of Death Knight 0277 <gen>)
    Unit - Set Lich 0276 <gen> movement speed to (Default movement speed of Lich 0276 <gen>)
    Set Escape = True
    Trigger - Run Init_Gametext <gen> (ignoring conditions)
remove flying unit
  Events
    Unit - A unit enters Region_073 <gen>
  Conditions
  Actions
    Unit - Remove (Entering unit) from the game
remove felhounds unit
  Events
    Unit - A unit enters Region_068 <gen>
  Conditions
  Actions
    Unit - Remove (Entering unit) from the game
Meteor A
  Events
  Conditions
  Actions
    Wait 0.50 seconds
    Special Effect - Create a special effect at (Center of Region_074 <gen>) using Objects\Spawnmodels\Demon\InfernalMeteor\InfernalMeteor.mdl
Meteor B
  Events
  Conditions
  Actions
    Wait 0.50 seconds
    Special Effect - Create a special effect at (Center of Region_075 <gen>) using Objects\Spawnmodels\Demon\InfernalMeteor\InfernalMeteor.mdl
Meteor C
  Events
  Conditions
  Actions
    Wait 0.50 seconds
    Special Effect - Create a special effect at (Center of Region_074 <gen>) using Objects\Spawnmodels\Demon\InfernalMeteor\InfernalMeteor.mdl
Meteor D
  Events
  Conditions
  Actions
    Wait 0.50 seconds
    Special Effect - Create a special effect at (Center of Region_075 <gen>) using Objects\Spawnmodels\Demon\InfernalMeteor\InfernalMeteor.mdl
Desolve A
  Events
  Conditions
  Actions
    Unit - Order Dreadlord 0262 <gen> to Move To (Center of Region_076 <gen>)
    Wait 0.25 seconds
    Animation - Change Dreadlord 0262 <gen>'s vertex coloring to (100.00%, 100.00%, 100.00%) with 0.00% transparency
    Wait 0.25 seconds
    Animation - Change Dreadlord 0262 <gen>'s vertex coloring to (100.00%, 100.00%, 100.00%) with 15.00% transparency
    Wait 0.25 seconds
    Animation - Change Dreadlord 0262 <gen>'s vertex coloring to (100.00%, 100.00%, 100.00%) with 30.00% transparency
    Wait 0.25 seconds
    Special Effect - Create a special effect attached to the origin of Dreadlord 0262 <gen> using Abilities\Spells\Human\MassTeleport\MassTeleportTarget.mdl
    Animation - Change Dreadlord 0262 <gen>'s vertex coloring to (10.00%, 10.00%, 10.00%) with 45.00% transparency
    Wait 0.25 seconds
    Animation - Change Dreadlord 0262 <gen>'s vertex coloring to (10.00%, 10.00%, 10.00%) with 65.00% transparency
    Wait 0.25 seconds
    Animation - Change Dreadlord 0262 <gen>'s vertex coloring to (10.00%, 10.00%, 10.00%) with 70.00% transparency
    Wait 0.25 seconds
    Animation - Change Dreadlord 0262 <gen>'s vertex coloring to (10.00%, 10.00%, 10.00%) with 85.00% transparency
    Wait 0.10 seconds
    Animation - Change Dreadlord 0262 <gen>'s vertex coloring to (10.00%, 10.00%, 10.00%) with 100.00% transparency
    Wait 0.25 seconds
    Unit - Remove Dreadlord 0262 <gen> from the game
Desolve B
  Events
  Conditions
  Actions
    Unit - Order Dreadlord 0261 <gen> to Move To (Center of Region_076 <gen>)
    Wait 0.25 seconds
    Animation - Change Dreadlord 0261 <gen>'s vertex coloring to (100.00%, 100.00%, 100.00%) with 0.00% transparency
    Wait 0.25 seconds
    Animation - Change Dreadlord 0261 <gen>'s vertex coloring to (100.00%, 100.00%, 100.00%) with 15.00% transparency
    Wait 0.25 seconds
    Animation - Change Dreadlord 0261 <gen>'s vertex coloring to (100.00%, 100.00%, 100.00%) with 30.00% transparency
    Wait 0.25 seconds
    Special Effect - Create a special effect attached to the origin of Dreadlord 0261 <gen> using Abilities\Spells\Human\MassTeleport\MassTeleportTarget.mdl
    Animation - Change Dreadlord 0261 <gen>'s vertex coloring to (10.00%, 10.00%, 10.00%) with 45.00% transparency
    Wait 0.25 seconds
    Animation - Change Dreadlord 0261 <gen>'s vertex coloring to (10.00%, 10.00%, 10.00%) with 65.00% transparency
    Wait 0.25 seconds
    Animation - Change Dreadlord 0261 <gen>'s vertex coloring to (10.00%, 10.00%, 10.00%) with 70.00% transparency
    Wait 0.25 seconds
    Animation - Change Dreadlord 0261 <gen>'s vertex coloring to (10.00%, 10.00%, 10.00%) with 85.00% transparency
    Wait 0.10 seconds
    Animation - Change Dreadlord 0261 <gen>'s vertex coloring to (10.00%, 10.00%, 10.00%) with 100.00% transparency
    Wait 0.10 seconds
    Unit - Remove Dreadlord 0261 <gen> from the game
Desolve C
  Events
  Conditions
  Actions
    Unit - Order Dreadlord 0263 <gen> to Move To (Center of Region_076 <gen>)
    Wait 0.25 seconds
    Animation - Change Dreadlord 0263 <gen>'s vertex coloring to (100.00%, 100.00%, 100.00%) with 0.00% transparency
    Wait 0.25 seconds
    Animation - Change Dreadlord 0263 <gen>'s vertex coloring to (100.00%, 100.00%, 100.00%) with 15.00% transparency
    Wait 0.25 seconds
    Animation - Change Dreadlord 0263 <gen>'s vertex coloring to (100.00%, 100.00%, 100.00%) with 30.00% transparency
    Wait 0.25 seconds
    Special Effect - Create a special effect attached to the origin of Dreadlord 0263 <gen> using Abilities\Spells\Human\MassTeleport\MassTeleportTarget.mdl
    Animation - Change Dreadlord 0263 <gen>'s vertex coloring to (10.00%, 10.00%, 10.00%) with 45.00% transparency
    Wait 0.25 seconds
    Animation - Change Dreadlord 0263 <gen>'s vertex coloring to (10.00%, 10.00%, 10.00%) with 65.00% transparency
    Wait 0.25 seconds
    Animation - Change Dreadlord 0263 <gen>'s vertex coloring to (10.00%, 10.00%, 10.00%) with 70.00% transparency
    Wait 0.25 seconds
    Animation - Change Dreadlord 0263 <gen>'s vertex coloring to (10.00%, 10.00%, 10.00%) with 85.00% transparency
    Wait 0.10 seconds
    Animation - Change Dreadlord 0263 <gen>'s vertex coloring to (10.00%, 10.00%, 10.00%) with 100.00% transparency
    Wait 0.10 seconds
    Unit - Remove Dreadlord 0263 <gen> from the game
Desolve D
  Events
  Conditions
  Actions
    Unit - Order Dreadlord 0265 <gen> to Move To (Center of Region_076 <gen>)
    Wait 0.25 seconds
    Animation - Change Dreadlord 0265 <gen>'s vertex coloring to (100.00%, 100.00%, 100.00%) with 0.00% transparency
    Wait 0.25 seconds
    Animation - Change Dreadlord 0265 <gen>'s vertex coloring to (100.00%, 100.00%, 100.00%) with 15.00% transparency
    Wait 0.25 seconds
    Animation - Change Dreadlord 0265 <gen>'s vertex coloring to (100.00%, 100.00%, 100.00%) with 30.00% transparency
    Wait 0.25 seconds
    Special Effect - Create a special effect attached to the origin of Dreadlord 0265 <gen> using Abilities\Spells\Human\MassTeleport\MassTeleportTarget.mdl
    Animation - Change Dreadlord 0265 <gen>'s vertex coloring to (10.00%, 10.00%, 10.00%) with 45.00% transparency
    Wait 0.25 seconds
    Animation - Change Dreadlord 0265 <gen>'s vertex coloring to (10.00%, 10.00%, 10.00%) with 65.00% transparency
    Wait 0.25 seconds
    Animation - Change Dreadlord 0265 <gen>'s vertex coloring to (10.00%, 10.00%, 10.00%) with 70.00% transparency
    Wait 0.25 seconds
    Animation - Change Dreadlord 0265 <gen>'s vertex coloring to (10.00%, 10.00%, 10.00%) with 85.00% transparency
    Wait 0.10 seconds
    Animation - Change Dreadlord 0265 <gen>'s vertex coloring to (10.00%, 10.00%, 10.00%) with 100.00% transparency
    Wait 0.10 seconds
    Unit - Remove Dreadlord 0265 <gen> from the game
Item Drop Bonuses
  Events
    Unit - A unit Dies
  Conditions
    Or - Any (Conditions) are true
      Conditions
        (Dying unit) Equal to Ice Troll Warlord 0127 <gen>
        (Dying unit) Equal to Murloc Nightcrawler 0210 <gen>
        (Dying unit) Equal to Ice Troll Berserker 0018 <gen>
        (Dying unit) Equal to Red Dragon 0102 <gen>
        (Dying unit) Equal to Red Dragon 0107 <gen>
        (Dying unit) Equal to Ice Troll High Priest 0019 <gen>
  Actions
    Set BonusesFound = (BonusesFound + 1)
Custom Variables
  Events
    Map initialization
  Conditions
  Actions
    Game - Set Lock resource trading to On
    Set MissionNumber = 26
    Set SubquestsTotal = 1
    Set BonusesTotal = 7
    Set ExtraTotal = 4
    Set TimeMin = 1200.00
    Set TimeMax = 4800.00
    Set TimeRange = (TimeMax - TimeMin)
    Set ScoreBonuses = 15
    Set ScoreExtra = 25
    Set ScoreSubquests = 80
    Set ScoreTime = 120
    Set ScoreMax = ((SubquestsTotal x ScoreSubquests) + ((BonusesTotal x ScoreBonuses) + ((ExtraTotal x ScoreExtra) + ScoreTime)))
    Set ScoreLimit[4] = (Integer((((Real(ScoreMax)) x 0.90) + 0.50)))
    Set ScoreLimit[3] = (Integer((((Real(ScoreMax)) x 0.75) + 0.50)))
    Set ScoreLimit[2] = (Integer((((Real(ScoreMax)) x 0.55) + 0.50)))
    Set ScoreLimit[1] = (Integer((((Real(ScoreMax)) x 0.30) + 0.50)))
    -------- Items To be Saved --------
    Set SaveLoad_Items[1] = Potion of Healing
    Set SaveLoad_Items[2] = Potion of Greater Mana
    Set SaveLoad_Items[3] = Scroll of Healing
    Set SaveLoad_Items[4] = Potion of Greater Healing
    Set SaveLoad_Items[5] = Ring of Protection +2
    Set SaveLoad_Items[6] = Spider Ring
    Set SaveLoad_Items[7] = Gauntlets of Ogre Strength +3
    Set SaveLoad_Items[8] = Urn of King Terenas
    Set SaveLoad_Items[9] = Pendant of Energy
    Set SaveLoad_Items[10] = Voodoo Doll
    Set SaveLoad_Items[11] = Claws of Attack +6
    Set SaveLoad_Items[12] = Gloves of Haste
    Set SaveLoad_Items[13] = Goblin Night Scope
    Set SaveLoad_Items[14] = Urn of King Terenas
    Set SaveLoad_Items[15] = Scroll of the Beast
    Set SaveLoad_Items[16] = Health Stone
    Set SaveLoad_Items[17] = Book of the Dead
    Set SaveLoad_Items[18] = Scroll of Mana
    Set SaveLoad_Items[19] = Potion of Mana
    Set SaveLoad_Items[20] = Scroll of Protection
    Set SaveLoad_Items[21] = Wand of Negation
    Set SaveLoad_Items[22] = Scroll of Town Portal
    Set SaveLoad_Items[23] = Slippers of Agility +3
    Set SaveLoad_Items[24] = Hood of Cunning
    Set SaveLoad_Items[25] = Ring of Regeneration
    Set SaveLoad_Items[26] = Sobi Mask
    Set SaveLoad_Items[27] = Ring of Protection +3
    Set SaveLoad_Items[28] = Periapt of Vitality
    Set SaveLoad_Items[29] = Mana Stone
    Set SaveLoad_Items[30] = Claws of Attack +9
    Set SaveLoad_Items[31] = Tome of Demonic Power I
    Set SaveLoad_Items[32] = Tome of Demonic Power II
    Set SaveLoad_Items[33] = Tome of Demonic Power III
    Set SaveLoad_Items[34] = Tome of Forbidden Knowledge I
    Set SaveLoad_Items[35] = Tome of Forbidden Knowledge II
    Set SaveLoad_Items[36] = Tome of Forbidden Knowledge III
    Set SaveLoad_Items_LastIndex = 36
    -------- Leave as is. Used to autocreate variables when copy & pasting to a new map --------
    Set SaveLoad_Alphabet = ABCDEFGHIJKLMNPQRSTUVWXYZ123456789abcdefghijklmnopqrstuvwxyz
    Set SaveLoad_CaseSensitive = True
    Set SaveLoad_UsePlayername = False
    -------- Required: false --------
    Set SaveLoad_Initialized = False
    Set Code = AceHart
    Set Save[1] = 0
    Set SaveCount = 1
    Set Validate = False
    Set SaveLoad_Compress[1] = 0
    Set SaveLoad_Uncompress[1] = 0
Timer Trigger
  Events
    Time - Every 1.00 seconds of game time
  Conditions
    Cinematic Equal to False
  Actions
    Set TimeSecondsTotal = (TimeSecondsTotal + 1)
    Set TimeSeconds = (TimeSeconds + 1)
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        TimeSeconds Greater than or equal to 60
      Then - Actions
        Set TimeSeconds = (TimeSeconds - 60)
        Set TimeMins = (TimeMins + 1)
      Else - Actions
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        TimeMins Greater than or equal to 60
      Then - Actions
        Set TimeMins = (TimeMins - 60)
        Set TimeHours = (TimeMins + 1)
      Else - Actions
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        TimeSeconds Less than 10
      Then - Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
          If - Conditions
            TimeMins Less than 10
          Then - Actions
            Set TimeTakenString = ((((String(TimeHours)) + :0) + (String(TimeMins))) + (:0 + (String(TimeSeconds))))
          Else - Actions
            Set TimeTakenString = ((((String(TimeHours)) + :) + (String(TimeMins))) + (:0 + (String(TimeSeconds))))
      Else - Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
          If - Conditions
            TimeMins Less than 10
          Then - Actions
            Set TimeTakenString = ((((String(TimeHours)) + :0) + (String(TimeMins))) + (: + (String(TimeSeconds))))
          Else - Actions
            Set TimeTakenString = ((((String(TimeHours)) + :) + (String(TimeMins))) + (: + (String(TimeSeconds))))
Combine Books
  Events
    Unit - A unit Acquires an item
  Conditions
    Or - Any (Conditions) are true
      Conditions
        (Hero manipulating item) Equal to EvilArthas
        (Hero manipulating item) Equal to KelThuzad
    Or - Any (Conditions) are true
      Conditions
        (Item-type of (Item being manipulated)) Equal to Tome of Demonic Power I
        (Item-type of (Item being manipulated)) Equal to Tome of Demonic Power II
        (Item-type of (Item being manipulated)) Equal to Tome of Forbidden Knowledge I
        (Item-type of (Item being manipulated)) Equal to Tome of Forbidden Knowledge II
  Actions
    For each (Integer A) from 1 to 6, do (Actions)
      Loop - Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
          If - Conditions
            (Item-type of (Item being manipulated)) Equal to Tome of Demonic Power I
          Then - Actions
            If (All Conditions are True) then do (Then Actions) else do (Else Actions)
              If - Conditions
                (Item carried by (Hero manipulating item) in slot (Integer A)) Not equal to (Item being manipulated)
                (Item-type of (Item carried by (Hero manipulating item) in slot (Integer A))) Equal to Tome of Demonic Power I
                (Item-type of (Item being manipulated)) Equal to Tome of Demonic Power I
              Then - Actions
                Item - Remove (Item being manipulated)
                Item - Remove (Item carried by (Hero manipulating item) in slot (Integer A))
                Hero - Create Tome of Demonic Power II and give it to (Hero manipulating item)
                Skip remaining actions
              Else - Actions
            If (All Conditions are True) then do (Then Actions) else do (Else Actions)
              If - Conditions
                (Item carried by (Hero manipulating item) in slot (Integer A)) Not equal to (Item being manipulated)
                (Item-type of (Item carried by (Hero manipulating item) in slot (Integer A))) Equal to Tome of Demonic Power II
                (Item-type of (Item being manipulated)) Equal to Tome of Demonic Power I
              Then - Actions
                Item - Remove (Item being manipulated)
                Item - Remove (Item carried by (Hero manipulating item) in slot (Integer A))
                Hero - Create Tome of Demonic Power III and give it to (Hero manipulating item)
                Skip remaining actions
              Else - Actions
            If (All Conditions are True) then do (Then Actions) else do (Else Actions)
              If - Conditions
                (Item carried by (Hero manipulating item) in slot (Integer A)) Not equal to (Item being manipulated)
                (Item-type of (Item carried by (Hero manipulating item) in slot (Integer A))) Equal to Tome of Demonic Power I
                (Item-type of (Item being manipulated)) Equal to Tome of Demonic Power II
              Then - Actions
                Item - Remove (Item being manipulated)
                Item - Remove (Item carried by (Hero manipulating item) in slot (Integer A))
                Hero - Create Tome of Demonic Power III and give it to (Hero manipulating item)
                Skip remaining actions
              Else - Actions
          Else - Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
          If - Conditions
            (Item-type of (Item being manipulated)) Equal to Tome of Forbidden Knowledge I
          Then - Actions
            If (All Conditions are True) then do (Then Actions) else do (Else Actions)
              If - Conditions
                (Item carried by (Hero manipulating item) in slot (Integer A)) Not equal to (Item being manipulated)
                (Item-type of (Item carried by (Hero manipulating item) in slot (Integer A))) Equal to Tome of Forbidden Knowledge I
                (Item-type of (Item being manipulated)) Equal to Tome of Forbidden Knowledge I
              Then - Actions
                Item - Remove (Item being manipulated)
                Item - Remove (Item carried by (Hero manipulating item) in slot (Integer A))
                Hero - Create Tome of Forbidden Knowledge II and give it to (Hero manipulating item)
                Skip remaining actions
              Else - Actions
            If (All Conditions are True) then do (Then Actions) else do (Else Actions)
              If - Conditions
                (Item carried by (Hero manipulating item) in slot (Integer A)) Not equal to (Item being manipulated)
                (Item-type of (Item carried by (Hero manipulating item) in slot (Integer A))) Equal to Tome of Forbidden Knowledge II
                (Item-type of (Item being manipulated)) Equal to Tome of Forbidden Knowledge I
              Then - Actions
                Item - Remove (Item being manipulated)
                Item - Remove (Item carried by (Hero manipulating item) in slot (Integer A))
                Hero - Create Tome of Forbidden Knowledge III and give it to (Hero manipulating item)
                Skip remaining actions
              Else - Actions
            If (All Conditions are True) then do (Then Actions) else do (Else Actions)
              If - Conditions
                (Item carried by (Hero manipulating item) in slot (Integer A)) Not equal to (Item being manipulated)
                (Item-type of (Item carried by (Hero manipulating item) in slot (Integer A))) Equal to Tome of Forbidden Knowledge I
                (Item-type of (Item being manipulated)) Equal to Tome of Forbidden Knowledge II
              Then - Actions
                Item - Remove (Item being manipulated)
                Item - Remove (Item carried by (Hero manipulating item) in slot (Integer A))
                Hero - Create Tome of Forbidden Knowledge III and give it to (Hero manipulating item)
                Skip remaining actions
              Else - Actions
          Else - Actions
Blue Base Destroyed
  Events
    Unit - A unit owned by Player 2 (Blue) Dies
  Conditions
    (Count structures controlled by Player 2 (Blue) (Include incomplete structures)) Equal to 0
  Actions
    Trigger - Turn off (This trigger)
    Set Extra = (Extra + 1)
Orange Base Destroyed
  Events
    Unit - A unit owned by Player 6 (Orange) Dies
  Conditions
    (Count structures controlled by Player 6 (Orange) (Include incomplete structures)) Equal to 0
  Actions
    Trigger - Turn off (This trigger)
    Set Extra = (Extra + 1)
Light Blue Base Destroyed
  Events
    Unit - A unit owned by Player 10 (Light Blue) Dies
  Conditions
    (Count structures controlled by Player 10 (Light Blue) (Include incomplete structures)) Equal to 0
  Actions
    Trigger - Turn off (This trigger)
    Set Extra = (Extra + 1)
Brown Base Destroyed
  Events
    Unit - A unit owned by Player 12 (Brown) Dies
  Conditions
    (Count structures controlled by Player 12 (Brown) (Include incomplete structures)) Equal to 0
  Actions
    Trigger - Turn off (This trigger)
    Set Extra = (Extra + 1)
Setup Insane
  Events
  Conditions
  Actions
    Set MissionNumber = 36
    Player - Make Troll Witch Doctor Available for training/construction by Player 2 (Blue)
    Player - Make Shaman Available for training/construction by Player 6 (Orange)
    Unit - Replace Great Hall 0040 <gen> with a Stronghold using The old unit's relative life and mana
    Unit - Replace Stronghold 0007 <gen> with a Fortress using The old unit's relative life and mana
    For each (Integer A) from 2 to 12, do (Actions)
      Loop - Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
          If - Conditions
            Or - Any (Conditions) are true
              Conditions
                (Integer A) Equal to 1
                (Integer A) Equal to 2
                (Integer A) Equal to 3
                (Integer A) Equal to 6
                (Integer A) Equal to 10
                (Integer A) Equal to 12
          Then - Actions
            Player - Set the max research level of Rome (techcode) to 1 for (Player((Integer A)))
            Player - Set the max research level of Rora (techcode) to 1 for (Player((Integer A)))
            Player - Set the max research level of Roar (techcode) to 1 for (Player((Integer A)))
            Player - Set the max research level of Roen (techcode) to 1 for (Player((Integer A)))
            Player - Set the max research level of Rosp (techcode) to 2 for (Player((Integer A)))
            Player - Set the max research level of Rost (techcode) to 1 for (Player((Integer A)))
            Player - Set the max research level of Rowd (techcode) to 1 for (Player((Integer A)))
            Player - Set the current research level of Rome (techcode) to 1 for (Player((Integer A)))
            Player - Set the current research level of Rora (techcode) to 1 for (Player((Integer A)))
            Player - Set the current research level of Roar (techcode) to 1 for (Player((Integer A)))
            Player - Set the current research level of Roen (techcode) to 1 for (Player((Integer A)))
            Player - Set the current research level of Rosp (techcode) to 2 for (Player((Integer A)))
            Player - Set the current research level of Rost (techcode) to 1 for (Player((Integer A)))
            Player - Set the current research level of Rowd (techcode) to 1 for (Player((Integer A)))
            Player - Make Stronghold Available for training/construction by (Player((Integer A)))
            Player - Make Fortress Available for training/construction by (Player((Integer A)))
            Player - Make Barracks Available for training/construction by (Player((Integer A)))
            Player - Make War Mill Available for training/construction by (Player((Integer A)))
            Player - Make Spirit Lodge Available for training/construction by (Player((Integer A)))
            Player - Make Beastiary Available for training/construction by (Player((Integer A)))
            Player - Make Orc Warlock Available for training/construction by (Player((Integer A)))
          Else - Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
          If - Conditions
            (Integer A) Equal to 1
          Then - Actions
            Player - Set the current research level of Rotr (techcode) to 1 for (Player((Integer A)))
            Player - Set the current research level of Robs (techcode) to 1 for (Player((Integer A)))
            Player - Set the max research level of Rotr (techcode) to 1 for (Player((Integer A)))
            Player - Set the max research level of Robs (techcode) to 1 for (Player((Integer A)))
            Player - Set the max research level of Rome (techcode) to 3 for (Player((Integer A)))
            Player - Set the max research level of Rora (techcode) to 3 for (Player((Integer A)))
            Player - Set the max research level of Roar (techcode) to 3 for (Player((Integer A)))
            Player - Set the current research level of Rome (techcode) to 3 for (Player((Integer A)))
            Player - Set the current research level of Rora (techcode) to 3 for (Player((Integer A)))
            Player - Set the current research level of Roar (techcode) to 3 for (Player((Integer A)))
          Else - Actions
    Unit - Remove Blademaster 0078 <gen> from the game
    Unit - Remove Blademaster 0088 <gen> from the game
    Unit - Remove Far Seer 0115 <gen> from the game
    Unit - Remove Jubei'Thos 0140 <gen> from the game
    Set Farseer02 = Tinker 0218 <gen>
    Set Blademaster01 = Shadow Hunter 0217 <gen>
    Set Blademaster02 = Alchemist 0332 <gen>
    Set BlademasterBlackrock = Jubei'Thos 0333 <gen>
    Unit - Remove Meat Wagon 0139 <gen> from the game
    Unit - Remove Meat Wagon 0142 <gen> from the game
    Unit - Remove Gargoyle 0211 <gen> from the game
    Unit - Remove Gargoyle 0215 <gen> from the game
Research Init
  Events
    Map initialization
  Conditions
  Actions
    -------- Limits --------
    For each (Integer A) from 1 to 13, do (Actions)
      Loop - Actions
        Set ResearchEnabledT2[(Integer A)] = True
        Set ResearchEnabledT3[(Integer A)] = True
    -------- Graveyard --------
    Set ResearchType[1] = Rume (techcode)
    Set ResearchStringT1[1] = Unholy Strength
    Set ResearchStringT2[1] = Improved Unholy Strength
    Set ResearchStringT3[1] = Advanced Unholy Strength
    Set ResearchType[2] = Ruar (techcode)
    Set ResearchStringT1[2] = Unholy Armor
    Set ResearchStringT2[2] = Improved Unholy Armor
    Set ResearchStringT3[2] = Advanced Unholy Armor
    Set ResearchType[3] = Rura (techcode)
    Set ResearchStringT1[3] = Creature Attack
    Set ResearchStringT2[3] = Improved Creature Attack
    Set ResearchStringT3[3] = Advanced Creature Attack
    Set ResearchType[4] = Rucr (techcode)
    Set ResearchStringT1[4] = Creature Carapace
    Set ResearchStringT2[4] = Improved Creature Carapace
    Set ResearchStringT3[4] = Advanced Creature Carapace
    -------- Crypt --------
    Set ResearchType[5] = Ruac (techcode)
    Set ResearchStringT1[5] = Cannibalize
    Set ResearchType[6] = Ruwb (techcode)
    Set ResearchStringT1[6] = Web
    Set ResearchType[7] = Rugf (techcode)
    Set ResearchStringT1[7] = Ghoul Frenzy
    Set ResearchType[8] = Rusf (techcode)
    Set ResearchStringT1[8] = Stone Form
    -------- Temple of the Damned --------
    Set ResearchType[9] = Rune (techcode)
    Set ResearchStringT1[9] = Necromancer Adept Training
    Set ResearchStringT2[9] = Necromancer Master Training
    Set ResearchType[10] = Ruba (techcode)
    Set ResearchStringT1[10] = Banshee Adept Training
    Set ResearchStringT2[10] = Banshee Master Training
    Set ResearchType[11] = Rusl (techcode)
    Set ResearchStringT1[11] = Skeletal Longevity
    -------- Slaughterhouse --------
    Set ResearchType[12] = Rupc (techcode)
    Set ResearchStringT1[12] = Disease Cloud
    -------- Boneyard --------
    Set ResearchType[13] = Rufb (techcode)
    Set ResearchStringT1[13] = Freezing Breath
Research Begins
  Events
    Unit - A unit Begins research
  Conditions
    Or - Any (Conditions) are true
      Conditions
        (Owner of (Triggering unit)) Equal to Player 4 (Purple)
        (Owner of (Triggering unit)) Equal to Player 7 (Green)
  Actions
    For each (Integer A) from 1 to 15, do (Actions)
      Loop - Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
          If - Conditions
            (Researched tech-type) Equal to ResearchType[(Integer A)]
          Then - Actions
            Set TempInteger = (Current research level of (Researched tech-type) for (Owner of (Triggering unit)))
            If (All Conditions are True) then do (Then Actions) else do (Else Actions)
              If - Conditions
                (Owner of (Triggering unit)) Equal to Player 4 (Purple)
              Then - Actions
                Player - Set the max research level of (Researched tech-type) to TempInteger for Player 7 (Green)
              Else - Actions
                Player - Set the max research level of (Researched tech-type) to TempInteger for Player 4 (Purple)
          Else - Actions
Research Cancelled
  Events
    Unit - A unit Cancels research
  Conditions
    Or - Any (Conditions) are true
      Conditions
        (Owner of (Triggering unit)) Equal to Player 4 (Purple)
        (Owner of (Triggering unit)) Equal to Player 7 (Green)
  Actions
    For each (Integer A) from 1 to 15, do (Actions)
      Loop - Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
          If - Conditions
            (Researched tech-type) Equal to ResearchType[(Integer A)]
          Then - Actions
            Set TempInteger = (Current research level of (Researched tech-type) for (Owner of (Triggering unit)))
            Player - Set the max research level of (Researched tech-type) to (TempInteger + 1) for Player 4 (Purple)
            Player - Set the max research level of (Researched tech-type) to (TempInteger + 1) for Player 7 (Green)
          Else - Actions
Research Complete
  Events
    Unit - A unit Finishes research
  Conditions
    Or - Any (Conditions) are true
      Conditions
        (Owner of (Triggering unit)) Equal to Player 4 (Purple)
        (Owner of (Triggering unit)) Equal to Player 7 (Green)
  Actions
    Wait 0.50 seconds
    For each (Integer A) from 1 to 15, do (Actions)
      Loop - Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
          If - Conditions
            (Researched tech-type) Equal to ResearchType[(Integer A)]
          Then - Actions
            Set TempInteger = (Current research level of (Researched tech-type) for (Owner of (Triggering unit)))
            If (All Conditions are True) then do (Then Actions) else do (Else Actions)
              If - Conditions
                (Owner of (Triggering unit)) Equal to Player 4 (Purple)
              Then - Actions
                Player - Set the max research level of (Researched tech-type) to TempInteger for Player 7 (Green)
                Player - Set the current research level of (Researched tech-type) to TempInteger for Player 7 (Green)
              Else - Actions
                Player - Set the max research level of (Researched tech-type) to TempInteger for Player 4 (Purple)
                Player - Set the current research level of (Researched tech-type) to TempInteger for Player 4 (Purple)
            If (All Conditions are True) then do (Then Actions) else do (Else Actions)
              If - Conditions
                TempInteger Equal to 1
              Then - Actions
                If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                  If - Conditions
                    ResearchEnabledT2[(Integer A)] Equal to True
                  Then - Actions
                    Player - Set the max research level of (Researched tech-type) to 2 for Player 4 (Purple)
                    Player - Set the max research level of (Researched tech-type) to 2 for Player 7 (Green)
                  Else - Actions
              Else - Actions
            If (All Conditions are True) then do (Then Actions) else do (Else Actions)
              If - Conditions
                TempInteger Equal to 2
              Then - Actions
                If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                  If - Conditions
                    ResearchEnabledT3[(Integer A)] Equal to True
                  Then - Actions
                    Player - Set the max research level of (Researched tech-type) to 3 for Player 4 (Purple)
                    Player - Set the max research level of (Researched tech-type) to 3 for Player 7 (Green)
                  Else - Actions
              Else - Actions
            Sound - Play Hint <gen>
            Game - Display to (All players) the text:
            If (All Conditions are True) then do (Then Actions) else do (Else Actions)
              If - Conditions
                TempInteger Equal to 1
              Then - Actions
                Game - Display to (All players) the text: (|cff9966ccRESEARCH|r - + ((Name of (Owner of (Triggering unit))) + ( has researched + (ResearchStringT1[(Integer A)] + for both players.))))
              Else - Actions
            If (All Conditions are True) then do (Then Actions) else do (Else Actions)
              If - Conditions
                TempInteger Equal to 2
              Then - Actions
                Game - Display to (All players) the text: (|cff9966ccRESEARCH|r - + ((Name of (Owner of (Triggering unit))) + ( has researched + (ResearchStringT2[(Integer A)] + for both players.))))
              Else - Actions
            If (All Conditions are True) then do (Then Actions) else do (Else Actions)
              If - Conditions
                TempInteger Equal to 3
              Then - Actions
                Game - Display to (All players) the text: (|cff9966ccRESEARCH|r - + ((Name of (Owner of (Triggering unit))) + ( has researched + (ResearchStringT3[(Integer A)] + for both players.))))
              Else - Actions
          Else - Actions
Requirement Init
  Events
    Map initialization
  Conditions
  Actions
    Set Requirement_Region = Region_078 <gen>
    Set RequirementUnitType[1] = Necropolis (Requirement)
    Set RequirementUnitType[2] = Halls of the Dead (Requirement)
    Set RequirementUnitType[3] = Black Citadel (Requirement)
    Set RequirementUnitType[4] = Altar of Darkness (Requirement)
    Set RequirementUnitType[5] = Graveyard (Requirement)
    Set RequirementUnitType[6] = Sacrificial Pit (Requirement)
    -------- Necropolis --------
    Set RequirementTech[1] = True
    -------- Halls of the Dead --------
    Set RequirementTech[2] = False
    -------- Black Citadel --------
    Set RequirementTech[3] = False
    -------- Altar of Darkness --------
    Set RequirementTech[4] = False
    -------- Graveyard --------
    Set RequirementTech[5] = True
    -------- Sacrificial Pit --------
    Set RequirementTech[6] = True
    -------- --------
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        RequirementTech[1] Equal to True
      Then - Actions
        Unit - Create 1 RequirementUnitType[1] for Player 4 (Purple) at (Center of Requirement_Region) facing Default building facing degrees
        Set RequirementUnitP1[1] = (Last created unit)
        Unit - Create 1 RequirementUnitType[1] for Player 7 (Green) at (Center of Requirement_Region) facing Default building facing degrees
        Set RequirementUnitP2[1] = (Last created unit)
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
          If - Conditions
            RequirementTech[2] Equal to True
          Then - Actions
            Unit - Create 1 RequirementUnitType[2] for Player 4 (Purple) at (Center of Requirement_Region) facing Default building facing degrees
            Set RequirementUnitP1[2] = (Last created unit)
            Unit - Create 1 RequirementUnitType[2] for Player 7 (Green) at (Center of Requirement_Region) facing Default building facing degrees
            Set RequirementUnitP2[2] = (Last created unit)
            If (All Conditions are True) then do (Then Actions) else do (Else Actions)
              If - Conditions
                RequirementTech[3] Equal to True
              Then - Actions
                Unit - Create 1 RequirementUnitType[3] for Player 4 (Purple) at (Center of Requirement_Region) facing Default building facing degrees
                Set RequirementUnitP1[3] = (Last created unit)
                Unit - Create 1 RequirementUnitType[3] for Player 7 (Green) at (Center of Requirement_Region) facing Default building facing degrees
                Set RequirementUnitP2[3] = (Last created unit)
              Else - Actions
          Else - Actions
      Else - Actions
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        RequirementTech[4] Equal to True
      Then - Actions
        Unit - Create 1 RequirementUnitType[4] for Player 4 (Purple) at (Center of Requirement_Region) facing Default building facing degrees
        Set RequirementUnitP1[4] = (Last created unit)
        Unit - Create 1 RequirementUnitType[4] for Player 7 (Green) at (Center of Requirement_Region) facing Default building facing degrees
        Set RequirementUnitP2[4] = (Last created unit)
      Else - Actions
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        RequirementTech[5] Equal to True
      Then - Actions
        Unit - Create 1 RequirementUnitType[5] for Player 4 (Purple) at (Center of Requirement_Region) facing Default building facing degrees
        Set RequirementUnitP1[5] = (Last created unit)
        Unit - Create 1 RequirementUnitType[5] for Player 7 (Green) at (Center of Requirement_Region) facing Default building facing degrees
        Set RequirementUnitP2[5] = (Last created unit)
      Else - Actions
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        RequirementTech[6] Equal to True
      Then - Actions
        Unit - Create 1 RequirementUnitType[6] for Player 4 (Purple) at (Center of Requirement_Region) facing Default building facing degrees
        Set RequirementUnitP1[6] = (Last created unit)
        Unit - Create 1 RequirementUnitType[6] for Player 7 (Green) at (Center of Requirement_Region) facing Default building facing degrees
        Set RequirementUnitP2[6] = (Last created unit)
      Else - Actions
Requirement Update
  Events
    Unit - A unit Finishes construction
    Unit - A unit Finishes an upgrade
    Unit - A unit Dies
  Conditions
    GameSelection Equal to False
    Or - Any (Conditions) are true
      Conditions
        (Owner of (Triggering unit)) Equal to Player 4 (Purple)
        (Owner of (Triggering unit)) Equal to Player 7 (Green)
    Or - Any (Conditions) are true
      Conditions
        (Unit-type of (Triggering unit)) Equal to Necropolis
        (Unit-type of (Triggering unit)) Equal to Halls of the Dead
        (Unit-type of (Triggering unit)) Equal to Black Citadel
        (Unit-type of (Triggering unit)) Equal to Altar of Darkness
        (Unit-type of (Triggering unit)) Equal to Graveyard
        (Unit-type of (Triggering unit)) Equal to Sacrificial Pit
  Actions
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        ((Triggering unit) is alive) Equal to True
      Then - Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
          If - Conditions
            (Unit-type of (Triggering unit)) Equal to Necropolis
            RequirementTech[1] Equal to False
          Then - Actions
            Set RequirementTech[1] = True
            Sound - Play Hint <gen>
            Game - Display to (All players) the text:
            Game - Display to (All players) the text: (|cff6666ccTECHTREE|r - + ((Name of (Owner of (Triggering unit))) + has contructed a Necropolis for both players.))
            Unit - Create 1 RequirementUnitType[1] for Player 4 (Purple) at (Center of Requirement_Region) facing Default building facing degrees
            Set RequirementUnitP1[1] = (Last created unit)
            Unit - Create 1 RequirementUnitType[1] for Player 7 (Green) at (Center of Requirement_Region) facing Default building facing degrees
            Set RequirementUnitP2[1] = (Last created unit)
          Else - Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
          If - Conditions
            (Unit-type of (Triggering unit)) Equal to Halls of the Dead
            RequirementTech[2] Equal to False
          Then - Actions
            Set RequirementTech[2] = True
            Sound - Play Hint <gen>
            Game - Display to (All players) the text:
            Game - Display to (All players) the text: (|cff6666ccTECHTREE|r - + ((Name of (Owner of (Triggering unit))) + has upgraded to a Halls of the Dead for both players.))
            Unit - Create 1 RequirementUnitType[2] for Player 4 (Purple) at (Center of Requirement_Region) facing Default building facing degrees
            Set RequirementUnitP1[2] = (Last created unit)
            Unit - Create 1 RequirementUnitType[2] for Player 7 (Green) at (Center of Requirement_Region) facing Default building facing degrees
            Set RequirementUnitP2[2] = (Last created unit)
          Else - Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
          If - Conditions
            (Unit-type of (Triggering unit)) Equal to Black Citadel
            RequirementTech[3] Equal to False
          Then - Actions
            Set RequirementTech[3] = True
            Sound - Play Hint <gen>
            Game - Display to (All players) the text:
            Game - Display to (All players) the text: (|cff6666ccTECHTREE|r - + ((Name of (Owner of (Triggering unit))) + has upgraded to a Black Citadel for both players.))
            Unit - Create 1 RequirementUnitType[3] for Player 4 (Purple) at (Center of Requirement_Region) facing Default building facing degrees
            Set RequirementUnitP1[3] = (Last created unit)
            Unit - Create 1 RequirementUnitType[3] for Player 7 (Green) at (Center of Requirement_Region) facing Default building facing degrees
            Set RequirementUnitP2[3] = (Last created unit)
          Else - Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
          If - Conditions
            (Unit-type of (Triggering unit)) Equal to Altar of Darkness
            RequirementTech[4] Equal to False
          Then - Actions
            Set RequirementTech[4] = True
            Sound - Play Hint <gen>
            Game - Display to (All players) the text:
            Game - Display to (All players) the text: (|cff6666ccTECHTREE|r - + ((Name of (Owner of (Triggering unit))) + has contructed an Altar of Darkness for both players.))
            Unit - Create 1 RequirementUnitType[4] for Player 4 (Purple) at (Center of Requirement_Region) facing Default building facing degrees
            Set RequirementUnitP1[4] = (Last created unit)
            Unit - Create 1 RequirementUnitType[4] for Player 7 (Green) at (Center of Requirement_Region) facing Default building facing degrees
            Set RequirementUnitP2[4] = (Last created unit)
          Else - Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
          If - Conditions
            (Unit-type of (Triggering unit)) Equal to Graveyard
            RequirementTech[5] Equal to False
          Then - Actions
            Set RequirementTech[5] = True
            Sound - Play Hint <gen>
            Game - Display to (All players) the text:
            Game - Display to (All players) the text: (|cff6666ccTECHTREE|r - + ((Name of (Owner of (Triggering unit))) + has contructed a Graveyard for both players.))
            Unit - Create 1 RequirementUnitType[5] for Player 4 (Purple) at (Center of Requirement_Region) facing Default building facing degrees
            Set RequirementUnitP1[5] = (Last created unit)
            Unit - Create 1 RequirementUnitType[5] for Player 7 (Green) at (Center of Requirement_Region) facing Default building facing degrees
            Set RequirementUnitP2[5] = (Last created unit)
          Else - Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
          If - Conditions
            (Unit-type of (Triggering unit)) Equal to Sacrificial Pit
            RequirementTech[6] Equal to False
          Then - Actions
            Set RequirementTech[6] = True
            Sound - Play Hint <gen>
            Game - Display to (All players) the text:
            Game - Display to (All players) the text: (|cff6666ccTECHTREE|r - + ((Name of (Owner of (Triggering unit))) + has contructed a Sacrificial Pit for both players.))
            Unit - Create 1 RequirementUnitType[6] for Player 4 (Purple) at (Center of Requirement_Region) facing Default building facing degrees
            Set RequirementUnitP1[6] = (Last created unit)
            Unit - Create 1 RequirementUnitType[6] for Player 7 (Green) at (Center of Requirement_Region) facing Default building facing degrees
            Set RequirementUnitP2[6] = (Last created unit)
          Else - Actions
      Else - Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
          If - Conditions
            (Unit-type of (Triggering unit)) Equal to Necropolis
            RequirementTech[1] Equal to True
            (Number of living Necropolis units owned by Player 4 (Purple)) Equal to 0
            (Number of living Necropolis units owned by Player 7 (Green)) Equal to 0
            (Number of living Halls of the Dead units owned by Player 4 (Purple)) Equal to 0
            (Number of living Halls of the Dead units owned by Player 7 (Green)) Equal to 0
            (Number of living Black Citadel units owned by Player 4 (Purple)) Equal to 0
            (Number of living Black Citadel units owned by Player 7 (Green)) Equal to 0
          Then - Actions
            Set RequirementTech[1] = False
            Unit - Remove RequirementUnitP1[1] from the game
            Unit - Remove RequirementUnitP2[1] from the game
          Else - Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
          If - Conditions
            (Unit-type of (Triggering unit)) Equal to Halls of the Dead
            RequirementTech[1] Equal to True
            (Number of living Halls of the Dead units owned by Player 4 (Purple)) Equal to 0
            (Number of living Halls of the Dead units owned by Player 7 (Green)) Equal to 0
            (Number of living Black Citadel units owned by Player 4 (Purple)) Equal to 0
            (Number of living Black Citadel units owned by Player 7 (Green)) Equal to 0
          Then - Actions
            Set RequirementTech[2] = False
            Unit - Remove RequirementUnitP1[2] from the game
            Unit - Remove RequirementUnitP2[2] from the game
            If (All Conditions are True) then do (Then Actions) else do (Else Actions)
              If - Conditions
                (Number of living Necropolis units owned by Player 4 (Purple)) Equal to 0
                (Number of living Necropolis units owned by Player 7 (Green)) Equal to 0
              Then - Actions
                Set RequirementTech[1] = False
                Unit - Remove RequirementUnitP1[1] from the game
                Unit - Remove RequirementUnitP2[1] from the game
              Else - Actions
          Else - Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
          If - Conditions
            (Unit-type of (Triggering unit)) Equal to Black Citadel
            RequirementTech[3] Equal to True
            (Number of living Black Citadel units owned by Player 4 (Purple)) Equal to 0
            (Number of living Black Citadel units owned by Player 7 (Green)) Equal to 0
          Then - Actions
            Set RequirementTech[3] = False
            Unit - Remove RequirementUnitP1[3] from the game
            Unit - Remove RequirementUnitP2[3] from the game
            If (All Conditions are True) then do (Then Actions) else do (Else Actions)
              If - Conditions
                (Number of living Halls of the Dead units owned by Player 4 (Purple)) Equal to 0
                (Number of living Halls of the Dead units owned by Player 7 (Green)) Equal to 0
              Then - Actions
                Set RequirementTech[2] = False
                Unit - Remove RequirementUnitP1[2] from the game
                Unit - Remove RequirementUnitP2[2] from the game
                If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                  If - Conditions
                    (Number of living Necropolis units owned by Player 4 (Purple)) Equal to 0
                    (Number of living Necropolis units owned by Player 7 (Green)) Equal to 0
                  Then - Actions
                    Set RequirementTech[1] = False
                    Unit - Remove RequirementUnitP1[1] from the game
                    Unit - Remove RequirementUnitP2[1] from the game
                  Else - Actions
              Else - Actions
          Else - Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
          If - Conditions
            (Unit-type of (Triggering unit)) Equal to Altar of Darkness
            RequirementTech[4] Equal to True
            (Number of living Altar of Darkness units owned by Player 4 (Purple)) Equal to 0
            (Number of living Altar of Darkness units owned by Player 7 (Green)) Equal to 0
          Then - Actions
            Set RequirementTech[4] = False
            Unit - Remove RequirementUnitP1[4] from the game
            Unit - Remove RequirementUnitP2[4] from the game
          Else - Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
          If - Conditions
            (Unit-type of (Triggering unit)) Equal to Graveyard
            RequirementTech[5] Equal to True
            (Number of living Graveyard units owned by Player 4 (Purple)) Equal to 0
            (Number of living Graveyard units owned by Player 7 (Green)) Equal to 0
          Then - Actions
            Set RequirementTech[5] = False
            Unit - Remove RequirementUnitP1[5] from the game
            Unit - Remove RequirementUnitP2[5] from the game
          Else - Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
          If - Conditions
            (Unit-type of (Triggering unit)) Equal to Sacrificial Pit
            RequirementTech[6] Equal to True
            (Number of living Sacrificial Pit units owned by Player 4 (Purple)) Equal to 0
            (Number of living Sacrificial Pit units owned by Player 7 (Green)) Equal to 0
          Then - Actions
            Set RequirementTech[6] = False
            Unit - Remove RequirementUnitP1[6] from the game
            Unit - Remove RequirementUnitP2[6] from the game
          Else - Actions
Computer Upkeeps
  Events
    Time - Every 1.00 seconds of game time
  Conditions
  Actions
    For each (Integer A) from 1 to 12, do (Actions)
      Loop - Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
          If - Conditions
            Or - Any (Conditions) are true
              Conditions
                (Integer A) Equal to 1
                (Integer A) Equal to 2
                (Integer A) Equal to 6
                (Integer A) Equal to 10
                (Integer A) Equal to 12
          Then - Actions
            If (All Conditions are True) then do (Then Actions) else do (Else Actions)
              If - Conditions
                ((Player((Integer A))) Food used) Less than 50
              Then - Actions
                Player - Set (Player((Integer A))) Gold upkeep rate to 0
              Else - Actions
            If (All Conditions are True) then do (Then Actions) else do (Else Actions)
              If - Conditions
                ((Player((Integer A))) Food used) Less than 80