Hello Everyone, I'm making an AI to one of my campaign maps using Jass. It my First time using it so i didn't know anything basically, The AI have custom race and preplaced buildings and units but for somereason The AI doesn't run at all, can anyone help any tips?
The AI:
Also Here is the Triggers:
Note:
All of The Units used by the AI Have Editor Suffix names, Like for example The Crusader unit in the world editor is called Crusader (BH), I didn't know if that could cause a problem or not honestly
and also The Player that the ai conrtol is color teal but there is a trigger that only change his color to grey.
The AI:
JASS:
//============================================================================
// Chapter06 -- Teal player -- AI Script
//============================================================================
globals
player user = Player(7) //player 7 Green
constant integer Crusader = 'h609'
constant integer Zealot = 'h612'
constant integer Crossbowman = 'n607'
constant integer Templar = 'h603'
constant integer Inquisitor = 'h604'
constant integer Bishop = 'h605'
constant integer Knight = 'h617'
constant integer Catapult = 'o602'
constant integer Bunker = 'e604'
constant integer Lieutenant = 'e605'
constant integer Lord_Godfrey = 'H61L'
constant integer Mystical_Knight = 'h61K'
constant integer Archangel = 'h608'
constant integer Paladin = 'h60A'
endglobals
function main takes nothing returns nothing
set campaign_wood_peons = 5
call CampaignAI('h615',null) //House
call SetReplacements(1,1,1)
call GroupTimedLife(true)
call SetPeonsRepair(true)
call SetSlowChopping(true)
//Building Strategy
//Tier 1
call SetBuildUnitEx(8,8,8,Zealot) //Zealot
call SetBuildUnitEx(2,2,2,'h616') //Armoury
call SetBuildUnitEx(3,3,3,'h61D') //Watch Tower
call SetBuildUnitEx(3,3,3,'h61E') //Guard Tower
call SetBuildUnitEx(1,1,1,'h61F') //Cannon Tower
call SetBuildUnitEx(1,1,1,'h61G') //Holy Tower
call SetBuildUnitEx(1,1,1,'h60H') //Altar
call SetBuildUnitEx(1,1,1,'h618') //Saw Mill
call SetBuildUnitEx(1,1,1,'h619') //Forge
call SetBuildUnitEx(1,1,1,'h61H') //Tabernacle
call SetBuildUnitEx(14,14,14,'h615') //House
//Tier 2
call SetBuildUnitEx(1,1,1,'h61A') //Siege Workshop
call SetBuildUnitEx(2,2,2,'h60M') //Cathedral
//Tier 3
call SetBuildUnitEx(1,1,1,'h614') //Monastery
call SetBuildUnitEx(1,1,1,'h61C') //Tower of Blessings
//Defender Units
call CampaignDefenderEx(1,1,1,Lieutenant) //Lieutenant
call CampaignDefenderEx(2,2,2,Bishop) //Bishop
call CampaignDefenderEx(2,2,2,Inquisitor) //Inquisitor
call CampaignDefenderEx(3,3,3,Templar) //Templar
call CampaignDefenderEx(2,2,2,Knight) //Knight
call CampaignDefenderEx(1,1,1,Catapult) //Catapult
call CampaignDefenderEx(2,2,2,Mystical_Knight) //Mystical Knight
call CampaignDefenderEx(12,12,12,Crusader) //Crusader
call CampaignDefenderEx(7,7,7,Crossbowman) //Crossbowman
call WaitForSignal()
//Attack Waves
//Wave 1
call InitAssaultGroup()
call CampaignAttackerEx(4,4,4,Crusader)
call CampaignAttackerEx(3,3,3,Crossbowman)
call CampaignAttackerEx(2,2,2,Knight)
call SuicideOnPlayerEx(M2,M2,M2,user)
//Wave 2
call InitAssaultGroup()
call CampaignAttackerEx(4,4,4,Crusader)
call CampaignAttackerEx(3,3,3,Crossbowman)
call CampaignAttackerEx(2,2,2,Templar)
call CampaignAttackerEx(2,2,2,Inquisitor)
call CampaignAttackerEx(1,1,1,Catapult)
call SuicideOnPlayerEx(M4,M4,M4,user)
//Wave 3
call InitAssaultGroup()
call CampaignAttackerEx(5,5,5,Crusader)
call CampaignAttackerEx(3,3,3,Templar)
call CampaignAttackerEx(2,2,2,Inquisitor)
call CampaignAttackerEx(2,2,2,Bishop)
call CampaignAttackerEx(2,2,2,Catapult)
call SuicideOnPlayerEx(M4,M4,M4,user)
//Wave 4
call InitAssaultGroup()
call CampaignAttackerEx(1,1,1,Inquisitor)
call CampaignAttackerEx(4,4,4,Crusader)
call CampaignAttackerEx(3,3,3,Crossbowman)
call CampaignAttackerEx(3,3,3,Bishop)
call CampaignAttackerEx(1,1,1,Lord_Godfrey)
call SuicideOnPlayerEx(M4,M4,M4,user)
//Wave 5
call InitAssaultGroup()
call CampaignAttackerEx(3,3,3,Crusader)
call CampaignAttackerEx(3,3,3,Crossbowman)
call CampaignAttackerEx(1,1,1,Templar)
call CampaignAttackerEx(1,1,1,Inquisitor)
call CampaignAttackerEx(2,2,2,Mystical_Knight)
call SuicideOnPlayerEx(M4,M4,M4,user)
loop
//Wave 6
call InitAssaultGroup()
call CampaignAttackerEx(3,3,3,Crusader)
call CampaignAttackerEx(3,3,3,Crossbowman)
call CampaignAttackerEx(3,3,3,Bishop)
call SuicideOnPlayerEx(M3,M3,M3,user)
//Wave 6.5
call InitAssaultGroup()
call CampaignAttackerEx(3,3,3,Mystical_Knight)
call CampaignAttackerEx(2,2,2,Archangel)
call SuicideOnPlayerEx(M5,M5,M5,user)
//Wave 7
call InitAssaultGroup()
call CampaignAttackerEx(5,5,5,Crusader)
call CampaignAttackerEx(2,2,2,Crossbowman)
call CampaignAttackerEx(2,2,2,Templar)
call CampaignAttackerEx(1,1,1,Catapult)
call SuicideOnPlayerEx(M4,M4,M4,user)
//Wave 8
call InitAssaultGroup()
call CampaignAttackerEx(4,4,4,Crusader)
call CampaignAttackerEx(2,2,2,Crossbowman)
call CampaignAttackerEx(1,1,1,Inquisitor)
call CampaignAttackerEx(1,1,1,Bishop)
call CampaignAttackerEx(1,1,1,Catapult)
call SuicideOnPlayerEx(M4,M4,M4,user)
//Wave 9
call InitAssaultGroup()
call CampaignAttackerEx(1,1,1,Inquisitor)
call CampaignAttackerEx(4,4,4,Crusader)
call CampaignAttackerEx(4,4,4,Crossbowman)
call CampaignAttackerEx(2,2,2,Templar)
call CampaignAttackerEx(1,1,1,Inquisitor)
call SuicideOnPlayerEx(M5,M5,M5,user)
//Wave 10
call InitAssaultGroup()
call CampaignAttackerEx(5,5,5,Crusader)
call CampaignAttackerEx(4,4,4,Crossbowman)
call CampaignAttackerEx(3,3,3,Templar)
call CampaignAttackerEx(2,2,2,Inquisitor)
call CampaignAttackerEx(2,2,2,Bishop)
call CampaignAttackerEx(1,1,1,Lord_Godfrey)
call SuicideOnPlayerEx(M5,M5,M5,user)
endloop
endfunction
Also Here is the Triggers:
Note:
All of The Units used by the AI Have Editor Suffix names, Like for example The Crusader unit in the world editor is called Crusader (BH), I didn't know if that could cause a problem or not honestly
and also The Player that the ai conrtol is color teal but there is a trigger that only change his color to grey.
Attachments
Last edited: