;; FreeCraft Map - Single player campaign (briefing 'type 'wc2 'title "II. Dunath Outpost" 'background "campaigns/alliance/interface/introscreen1.png" 'text "campaigns/alliance/level02a/level02a.txt" ;'voice "campaigns/alliance/level02a/level02a-briefing.wav" ;'voice "campaigns/human/level02h-intro2.wav" 'objective "- Build a Barracks" 'objective "- Train 5 Footmen" 'objective "- Arthor Literios must not die") (add-trigger (lambda () (and (if-unit 'this '>= 1 'unit-alliance-barracks) (if-unit 'this '>= 5 'unit-footman)) ) (lambda () (action-victory))) (add-trigger (lambda () (if-unit 'this '<= 0 'unit-arthor-literios)) (lambda () (action-defeat))) ;;Units ;;Townhall - Produces (define-allow 'unit-peasant "AAAAAAAAAAAAAAA") (define-allow 'unit-peasant-with-gold "FFFFFFFFFFFFFFFF") (define-allow 'unit-peasant-with-wood "FFFFFFFFFFFFFFFF") (define-allow 'unit-attack-peasant "FFFFFFFFFFFFFFFF") (define-allow 'unit-peon "FFFFFFFFFFFFFFFF") (define-allow 'unit-peon-with-gold "FFFFFFFFFFFFFFFF") (define-allow 'unit-peon-with-wood "FFFFFFFFFFFFFFFF") (define-allow 'unit-attack-peon "FFFFFFFFFFFFFFFF") ;;Barracks - Produces (define-allow 'unit-footman "AAAAAAAAAAAAAAA") (define-allow 'unit-archer "FFFFFFFFFFFFFFFF") (define-allow 'unit-ranger "FFFFFFFFFFFFFFFF") (define-allow 'unit-knight "FFFFFFFFFFFFFFFF") (define-allow 'unit-paladin "FFFFFFFFFFFFFFFF") (define-allow 'unit-ballista "FFFFFFFFFFFFFFFF") (define-allow 'unit-grunt "AAAAAAAAAAAAAAA") (define-allow 'unit-axethrower "FFFFFFFFFFFFFFFF") (define-allow 'unit-berserker "FFFFFFFFFFFFFFFF") (define-allow 'unit-ogre "FFFFFFFFFFFFFFFF") (define-allow 'unit-ogre-mage "FFFFFFFFFFFFFFFF") (define-allow 'unit-eye-of-vision "FFFFFFFFFFFFFFFF") (define-allow 'unit-catapult "FFFFFFFFFFFFFFFF") ;;Shipyard - Produces (define-allow 'unit-human-oil-tanker "FFFFFFFFFFFFFFFF") (define-allow 'unit-alliance-destroyer "FFFFFFFFFFFFFFFF") (define-allow 'unit-human-transport "FFFFFFFFFFFFFFFF") (define-allow 'unit-battleship "FFFFFFFFFFFFFFFF") (define-allow 'unit-alliance-submarine "FFFFFFFFFFFFFFFF") (define-allow 'unit-orc-oil-tanker "FFFFFFFFFFFFFFFF") (define-allow 'unit-orc-transport "FFFFFFFFFFFFFFFF") (define-allow 'unit-mythical-destroyer "FFFFFFFFFFFFFFFF") (define-allow 'unit-juggernaught "FFFFFFFFFFFFFFFF") (define-allow 'unit-mythical-submarine "FFFFFFFFFFFFFFFF") ;;Other Units (define-allow 'unit-balloon "FFFFFFFFFFFFFFFF") (define-allow 'unit-gryphon-rider "FFFFFFFFFFFFFFFF") (define-allow 'unit-mage "FFFFFFFFFFFFFFFF") (define-allow 'unit-dwarves "FFFFFFFFFFFFFFFF") (define-allow 'unit-zeppelin "FFFFFFFFFFFFFFFF") (define-allow 'unit-dragon "FFFFFFFFFFFFFFFF") (define-allow 'unit-death-knight "FFFFFFFFFFFFFFFF") (define-allow 'unit-goblin-sappers "FFFFFFFFFFFFFFFF") (define-allow 'unit-skeleton "FFFFFFFFFFFFFFFF") ;;Human Specials (define-allow 'unit-female-hero "FFFFFFFFFFFFFFFF") (define-allow 'unit-flying-angle "FFFFFFFFFFFFFFFF") (define-allow 'unit-white-mage "FFFFFFFFFFFFFFFF") (define-allow 'unit-knight-rider "FFFFFFFFFFFFFFFF") (define-allow 'unit-arthor-literios "FFFFFFFFFFFFFFFF") (define-allow 'unit-wise-man "FFFFFFFFFFFFFFFF") (define-allow 'unit-man-of-light "FFFFFFFFFFFFFFFF") ;;Building Human (define-allow 'unit-town-hall "AAAAAAAAAAAAAAA") (define-allow 'unit-keep "FFFFFFFFFFFFFFFF") (define-allow 'unit-castle "FFFFFFFFFFFFFFFF") (define-allow 'unit-alliance-barracks "AAAAAAAAAAAAAAA") (define-allow 'unit-farm "AAAAAAAAAAAAAAA") (define-allow 'unit-alliance-blacksmith "FFFFFFFFFFFFFFFF") (define-allow 'upgrade-sword1 "FFFFFFFFFFFFFFFF") (define-allow 'upgrade-sword2 "FFFFFFFFFFFFFFFF") (define-allow 'upgrade-human-shield1 "FFFFFFFFFFFFFFFF") (define-allow 'upgrade-human-shield2 "FFFFFFFFFFFFFFFF") (define-allow 'upgrade-ballista1 "FFFFFFFFFFFFFFFF") (define-allow 'upgrade-ballista2 "FFFFFFFFFFFFFFFF") (define-allow 'unit-alliance-watch-tower "AAAAAAAAAAAAAAA") (define-allow 'unit-alliance-guard-tower "FFFFFFFFFFFFFFFF") (define-allow 'unit-alliance-cannon-tower "FFFFFFFFFFFFFFFF") (define-allow 'unit-alliance-lumber-mill "FFFFFFFFFFFFFFFF") (define-allow 'upgrade-arrow1 "FFFFFFFFFFFFFFFF") (define-allow 'upgrade-arrow2 "FFFFFFFFFFFFFFFF") (define-allow 'upgrade-ranger "FFFFFFFFFFFFFFFF") (define-allow 'upgrade-longbow "FFFFFFFFFFFFFFFF") (define-allow 'upgrade-ranger-scouting "FFFFFFFFFFFFFFFF") (define-allow 'upgrade-ranger-marksmanship "FFFFFFFFFFFFFFFF") (define-allow 'unit-church "FFFFFFFFFFFFFFFF") (define-allow 'upgrade-paladin "FFFFFFFFFFFFFFFF") ;; (define-allow 'upgrade-holy-vision "FFFFFFFFFFFFFFFF") (define-allow 'upgrade-healing "FFFFFFFFFFFFFFFF") (define-allow 'upgrade-exorcism "FFFFFFFFFFFFFFFF") (define-allow 'unit-stables "FFFFFFFFFFFFFFFF") (define-allow 'unit-inventor "FFFFFFFFFFFFFFFF") (define-allow 'unit-gryphon-aviary "FFFFFFFFFFFFFFFF") (define-allow 'unit-alliance-shipyard "FFFFFFFFFFFFFFFF") (define-allow 'unit-human-refinery "FFFFFFFFFFFFFFFF") (define-allow 'unit-alliance-oil-platform "FFFFFFFFFFFFFFFF") (define-allow 'unit-alliance-foundry "FFFFFFFFFFFFFFFF") (define-allow 'upgrade-alliance-ship-cannon1 "FFFFFFFFFFFFFFFF") (define-allow 'upgrade-alliance-ship-cannon2 "FFFFFFFFFFFFFFFF") (define-allow 'upgrade-alliance-ship-armor1 "FFFFFFFFFFFFFFFF") (define-allow 'upgrade-alliance-ship-armor2 "FFFFFFFFFFFFFFFF") (define-allow 'unit-mage-tower "FFFFFFFFFFFFFFFF") (define-allow 'upgrade-flame-shield "FFFFFFFFFFFFFFFF") (define-allow 'upgrade-fireball "FFFFFFFFFFFFFFFF") (define-allow 'upgrade-slow "FFFFFFFFFFFFFFFF") (define-allow 'upgrade-invisibility "FFFFFFFFFFFFFFFF") (define-allow 'upgrade-polymorph "FFFFFFFFFFFFFFFF") (define-allow 'upgrade-blizzard "FFFFFFFFFFFFFFFF") (define-allow 'unit-human-wall "FFFFFFFFFFFFFFFF") ;; Orc Specials (define-allow 'unit-evil-knight "FFFFFFFFFFFFFFFF") (define-allow 'unit-fad-man "FFFFFFFFFFFFFFFF") (define-allow 'unit-beast-cry "FFFFFFFFFFFFFFFF") (define-allow 'unit-fire-breeze "FFFFFFFFFFFFFFFF") (define-allow 'unit-quick-blade "FFFFFFFFFFFFFFFF") (define-allow 'unit-double-head "FFFFFFFFFFFFFFFF") (define-allow 'unit-ice-bringer "FFFFFFFFFFFFFFFF") (define-allow 'unit-sharp-axe "FFFFFFFFFFFFFFFF") (define-allow 'unit-great-hall "FFFFFFFFFFFFFFFF") (define-allow 'unit-stronghold "FFFFFFFFFFFFFFFF") (define-allow 'unit-fortress "FFFFFFFFFFFFFFFF") (define-allow 'unit-mythical-barracks "FFFFFFFFFFFFFFFF") (define-allow 'unit-pig-farm "FFFFFFFFFFFFFFFF") (define-allow 'unit-mythical-blacksmith "FFFFFFFFFFFFFFFF") (define-allow 'upgrade-battle-axe1 "FFFFFFFFFFFFFFFF") (define-allow 'upgrade-battle-axe2 "FFFFFFFFFFFFFFFF") (define-allow 'upgrade-orc-shield1 "FFFFFFFFFFFFFFFF") (define-allow 'upgrade-orc-shield2 "FFFFFFFFFFFFFFFF") (define-allow 'upgrade-catapult1 "FFFFFFFFFFFFFFFF") (define-allow 'upgrade-catapult2 "FFFFFFFFFFFFFFFF") (define-allow 'unit-mythical-watch-tower "FFFFFFFFFFFFFFFF") (define-allow 'unit-mythicak-guard-tower "FFFFFFFFFFFFFFFF") (define-allow 'unit-mythical-cannon-tower "FFFFFFFFFFFFFFFF") (define-allow 'unit-mythical-lumber-mill "FFFFFFFFFFFFFFFF") (define-allow 'upgrade-throwing-axe1 "FFFFFFFFFFFFFFFF") (define-allow 'upgrade-throwing-axe2 "FFFFFFFFFFFFFFFF") (define-allow 'upgrade-berserker "FFFFFFFFFFFFFFFF") (define-allow 'upgrade-light-axes "FFFFFFFFFFFFFFFF") (define-allow 'upgrade-berserker-scouting "FFFFFFFFFFFFFFFF") (define-allow 'upgrade-berserker-regeneration "FFFFFFFFFFFFFFFF") (define-allow 'unit-altar-of-storms "FFFFFFFFFFFFFFFF") (define-allow 'unit-ogre-mound "FFFFFFFFFFFFFFFF") (define-allow 'upgrade-ogre-mage "FFFFFFFFFFFFFFFF") (define-allow 'upgrade-eye-of-vision "FFFFFFFFFFFFFFFF") (define-allow 'upgrade-bloodlust "FFFFFFFFFFFFFFFF") (define-allow 'upgrade-runes "FFFFFFFFFFFFFFFF") (define-allow 'unit-alchemist "FFFFFFFFFFFFFFFF") (define-allow 'unit-dragon-roost "FFFFFFFFFFFFFFFF") (define-allow 'unit-mythical-shipyard "FFFFFFFFFFFFFFFF") (define-allow 'unit-orc-foundry "FFFFFFFFFFFFFFFF") (define-allow 'upgrade-mythical-ship-cannon1 "FFFFFFFFFFFFFFFF") (define-allow 'upgrade-mythical-ship-cannon2 "FFFFFFFFFFFFFFFF") (define-allow 'upgrade-mythical-ship-armor1 "FFFFFFFFFFFFFFFF") (define-allow 'upgrade-mythical-ship-armor2 "FFFFFFFFFFFFFFFF") (define-allow 'unit-temple-of-the-damned "FFFFFFFFFFFFFFFF") (define-allow 'upgrade-death-coil "FFFFFFFFFFFFFFFF") (define-allow 'upgrade-whirlwind "FFFFFFFFFFFFFFFF") (define-allow 'upgrade-haste "FFFFFFFFFFFFFFFF") (define-allow 'upgrade-unholy-armor "FFFFFFFFFFFFFFFF") (define-allow 'upgrade-death-and-decay "FFFFFFFFFFFFFFFF") (define-allow 'upgrade-raise-dead "FFFFFFFFFFFFFFFF") (define-allow 'unit-orc-refinery "FFFFFFFFFFFFFFFF") (define-allow 'unit-mythical-oil-platform "FFFFFFFFFFFFFFFF") (define-allow 'unit-orc-wall "FFFFFFFFFFFFFFFF") ;; Specials (define-allow 'unit-daemon "FFFFFFFFFFFFFFFF") (define-allow 'unit-critter "FFFFFFFFFFFFFFFF") (define-allow 'unit-gold-mine "FFFFFFFFFFFFFFFF") (define-allow 'unit-oil-patch "FFFFFFFFFFFFFFFF") (define-allow 'unit-circle-of-power "FFFFFFFFFFFFFFFF") (define-allow 'unit-dark-portal "FFFFFFFFFFFFFFFF") (define-allow 'unit-runestone "FFFFFFFFFFFFFFFF") (define-allow 'unit-dead-body "FFFFFFFFFFFFFFFF") (define-allow 'unit-destroyed-1x1-place "FFFFFFFFFFFFFFFF") (define-allow 'unit-destroyed-2x2-place "FFFFFFFFFFFFFFFF") (define-allow 'unit-destroyed-3x3-place "FFFFFFFFFFFFFFFF") (define-allow 'unit-destroyed-4x4-place "FFFFFFFFFFFFFFFF") ;; AI (define ai:level02a-endloop '((writes nil "Looping\n") (ai:force 1 (ai:soldier) 2) (ai:wait-force 1) (ai:attack-with-force 1) (ai:sleep 1000) (ai:script ai:level02a-endloop) )) (define-ai 'level02a-ai "*" "land-attack" '( ;; Define the main AI script. (begin (ai:debug #t) (ai:sleep (ai:get-sleep-cycles))) (ai:sleep 5000) (ai:force 1 (ai:soldier) 1) (ai:wait-force 1) (ai:attack-with-force 1) (ai:sleep 1200) (ai:force 1 (ai:soldier) 1) (ai:wait-force 1) (ai:attack-with-force 1) (ai:sleep 2000) (ai:force 1 (ai:soldier) 1 (ai:shooter) 1) (ai:wait-force 1) (ai:attack-with-force 1) (ai:sleep 1500) (ai:force 1 (ai:soldier) 2) (ai:wait-force 1) (ai:attack-with-force 1) (ai:sleep 1000) (ai:force 1 (ai:soldier) 2) (ai:wait-force 1) (ai:attack-with-force 1) (ai:sleep 1000) (ai:script ai:level02a-endloop) )) (load-pud "campaigns/alliance/level02a/level02a.pud")