diff --git a/resources/plugins/pretense/init_body.lua b/resources/plugins/pretense/init_body.lua index 9df8452d..a4452456 100644 --- a/resources/plugins/pretense/init_body.lua +++ b/resources/plugins/pretense/init_body.lua @@ -1,4426 +1,3 @@ - - -local savefile = 'pretense_1.1.json' -if lfs then - local dir = lfs.writedir()..'Missions/Saves/' - lfs.mkdir(dir) - savefile = dir..savefile - env.info('Pretense - Save file path: '..savefile) -end - - -do - TemplateDB.templates["infantry-red"] = { - units = { - "BTR_D", - "T-90", - "T-90", - "Infantry AK ver2", - "Infantry AK", - "Infantry AK", - "Paratrooper RPG-16", - "Infantry AK ver3", - "SA-18 Igla manpad" - }, - skill = "Excellent", - dataCategory= TemplateDB.type.group - } - - TemplateDB.templates["infantry-blue"] = { - units = { - "M1045 HMMWV TOW", - "Soldier stinger", - "Soldier M4 GRG", - "Soldier M4 GRG", - "Soldier M4 GRG", - "Soldier M4 GRG", - "Soldier M4 GRG", - "M1043 HMMWV Armament" - }, - skill = "Excellent", - dataCategory= TemplateDB.type.group - } - - TemplateDB.templates["defense-red"] = { - units = { - "Infantry AK ver2", - "Infantry AK", - "Infantry AK ver3", - "Paratrooper RPG-16", - "SA-18 Igla manpad" - }, - skill = "Excellent", - dataCategory= TemplateDB.type.group - } - - TemplateDB.templates["defense-blue"] = { - units = { - "Soldier M4 GRG", - "Soldier M4 GRG", - "Soldier M4 GRG", - "Soldier RPG", - "Soldier stinger", - }, - skill = "Excellent", - dataCategory= TemplateDB.type.group - } - - TemplateDB.templates["shorad-red"] = { - units = { - "Strela-10M3", - "Strela-10M3", - "Ural-4320T", - "2S6 Tunguska" - }, - maxDist = 300, - skill = "Excellent", - dataCategory= TemplateDB.type.group - } - - TemplateDB.templates["shorad-blue"] = { - units = { - "Roland ADS", - "M48 Chaparral", - "M 818", - "Gepard", - "Gepard" - }, - maxDist = 300, - skill = "Excellent", - dataCategory= TemplateDB.type.group - } - - TemplateDB.templates["sam-red"] = { - units = { - "p-19 s-125 sr", - "Ural-4320T", - "Ural-4320T", - "S_75M_Volhov", - "S_75M_Volhov", - "S_75M_Volhov", - "S_75M_Volhov", - "S_75M_Volhov", - "Tor 9A331", - "SNR_75V" - }, - maxDist = 300, - skill = "Excellent", - dataCategory= TemplateDB.type.group - } - - TemplateDB.templates["sam-blue"] = { - units = { - "Hawk pcp", - "Hawk cwar", - "Hawk ln", - "Hawk ln", - "Hawk ln", - "Hawk ln", - "Hawk ln", - "Hawk tr", - "M 818", - "Hawk sr" - }, - maxDist = 300, - skill = "Good", - dataCategory= TemplateDB.type.group - } - - TemplateDB.templates["patriot"] = { - units = { - "Patriot cp", - "Patriot str", - "M 818", - "M 818", - "Patriot ln", - "Patriot ln", - "Patriot ln", - "Patriot ln", - "Patriot str", - "Patriot str", - "Patriot str", - "Patriot EPP", - "Patriot ECS", - "Patriot AMG" - }, - maxDist = 300, - skill = "Good", - dataCategory= TemplateDB.type.group - } - - TemplateDB.templates["sa3"] = { - units = { - "p-19 s-125 sr", - "snr s-125 tr", - "5p73 s-125 ln", - "5p73 s-125 ln", - "Ural-4320T", - "5p73 s-125 ln", - "5p73 s-125 ln" - }, - maxDist = 300, - skill = "Excellent", - dataCategory= TemplateDB.type.group - } - - TemplateDB.templates["sa6"] = { - units = { - "Kub 1S91 str", - "Kub 2P25 ln", - "Kub 2P25 ln", - "Kub 2P25 ln", - "Kub 2P25 ln", - "2S6 Tunguska", - "Ural-4320T", - "2S6 Tunguska", - "Kub 2P25 ln" - }, - maxDist = 300, - skill = "Excellent", - dataCategory= TemplateDB.type.group - } - - TemplateDB.templates["sa10"] = { - units = { - "S-300PS 54K6 cp", - "S-300PS 5P85C ln", - "S-300PS 5P85C ln", - "S-300PS 5P85C ln", - "GAZ-66", - "GAZ-66", - "GAZ-66", - "S-300PS 5P85C ln", - "S-300PS 5P85C ln", - "S-300PS 5P85C ln", - "S-300PS 40B6MD sr", - "S-300PS 40B6M tr", - "S-300PS 64H6E sr" - }, - maxDist = 300, - skill = "Excellent", - dataCategory= TemplateDB.type.group - } - - TemplateDB.templates["sa5"] = { - units = { - "RLS_19J6", - "Ural-4320T", - "Ural-4320T", - "RPC_5N62V", - "S-200_Launcher", - "S-200_Launcher", - "S-200_Launcher", - "S-200_Launcher", - "S-200_Launcher", - "S-200_Launcher" - }, - maxDist = 300, - skill = "Excellent", - dataCategory= TemplateDB.type.group - } - - TemplateDB.templates["sa11"] = { - units = { - "SA-11 Buk SR 9S18M1", - "SA-11 Buk LN 9A310M1", - "SA-11 Buk LN 9A310M1", - "SA-11 Buk LN 9A310M1", - "SA-11 Buk LN 9A310M1", - "SA-11 Buk LN 9A310M1", - "2S6 Tunguska", - "SA-11 Buk SR 9S18M1", - "GAZ-66", - "GAZ-66", - "SA-11 Buk CC 9S470M1" - }, - maxDist = 300, - skill = "Excellent", - dataCategory= TemplateDB.type.group - } - - TemplateDB.templates["nasams"] = { - units = { - "NASAMS_Command_Post", - "NASAMS_Radar_MPQ64F1", - "Vulcan", - "M 818", - "M 818", - "Roland ADS", - "Roland ADS", - "NASAMS_LN_C", - "NASAMS_LN_C", - "NASAMS_LN_C", - "NASAMS_LN_C", - "NASAMS_Radar_MPQ64F1", - "NASAMS_Radar_MPQ64F1", - "NASAMS_Radar_MPQ64F1" - }, - maxDist = 300, - skill = "Excellent", - dataCategory= TemplateDB.type.group - } -end - -presets = { - upgrades = { - basic = { - tent = Preset:new({ - display = 'Tent', - cost = 1500, - type = 'upgrade', - template = "tent" - }), - comPost = Preset:new({ - display = 'Barracks', - cost = 1500, - type = 'upgrade', - template = "barracks" - }), - outpost = Preset:new({ - display = 'Outpost', - cost = 1500, - type = 'upgrade', - template = "outpost" - }) - }, - attack = { - ammoCache = Preset:new({ - display = 'Ammo Cache', - cost = 1500, - type = 'upgrade', - template = "ammo-cache" - }), - ammoDepot = Preset:new({ - display = 'Ammo Depot', - cost = 2000, - type = 'upgrade', - template = "ammo-depot" - }) - }, - supply = { - fuelCache = Preset:new({ - display = 'Fuel Cache', - cost = 1500, - type = 'upgrade', - template = "fuel-cache" - }), - fuelTank = Preset:new({ - display = 'Fuel Tank', - cost = 1500, - type = 'upgrade', - template = "fuel-tank-big" - }), - fuelTankFarp = Preset:new({ - display = 'Fuel Tank', - cost = 1500, - type = 'upgrade', - template = "fuel-tank-small" - }), - factory1 = Preset:new({ - display='Factory', - cost = 2000, - type ='upgrade', - income = 20, - template = "factory-1" - }), - factory2 = Preset:new({ - display='Factory', - cost = 2000, - type ='upgrade', - income = 20, - template = "factory-2" - }), - factoryTank = Preset:new({ - display='Storage Tank', - cost = 1500, - type ='upgrade', - income = 10, - template = "chem-tank" - }), - ammoDepot = Preset:new({ - display = 'Ammo Depot', - cost = 2000, - type = 'upgrade', - income = 40, - template = "ammo-depot" - }), - oilPump = Preset:new({ - display = 'Oil Pump', - cost = 1500, - type = 'upgrade', - income = 20, - template = "oil-pump" - }), - hangar = Preset:new({ - display = 'Hangar', - cost = 2000, - type = 'upgrade', - income = 30, - template = "hangar" - }), - excavator = Preset:new({ - display = 'Excavator', - cost = 2000, - type = 'upgrade', - income = 20, - template = "excavator" - }), - farm1 = Preset:new({ - display = 'Farm House', - cost = 2000, - type = 'upgrade', - income = 40, - template = "farm-house-1" - }), - farm2 = Preset:new({ - display = 'Farm House', - cost = 2000, - type = 'upgrade', - income = 40, - template = "farm-house-2" - }), - refinery1 = Preset:new({ - display='Refinery', - cost = 2000, - type ='upgrade', - income = 100, - template = "factory-1" - }), - powerplant1 = Preset:new({ - display='Power Plant', - cost = 1500, - type ='upgrade', - income = 25, - template = "factory-1" - }), - powerplant2 = Preset:new({ - display='Power Plant', - cost = 1500, - type ='upgrade', - income = 25, - template = "factory-2" - }), - antenna = Preset:new({ - display='Antenna', - cost = 1000, - type ='upgrade', - income = 10, - template = "antenna" - }), - hq = Preset:new({ - display='HQ Building', - cost = 2000, - type ='upgrade', - income = 50, - template = "tv-tower" - }) - }, - airdef = { - comCenter = Preset:new({ - display = 'Command Center', - cost = 2500, - type = 'upgrade', - template = "command-center" - }) - } - }, - defenses = { - red = { - infantry = Preset:new({ - display = 'Infantry', - cost=2000, - type='defense', - template='infantry-red', - }), - shorad = Preset:new({ - display = 'SAM', - cost=2500, - type='defense', - template='shorad-red', - }), - sam = Preset:new({ - display = 'SAM', - cost=3000, - type='defense', - template='sam-red', - }), - sa10 = Preset:new({ - display = 'SAM', - cost=3000, - type='defense', - template='sa10', - }), - sa5 = Preset:new({ - display = 'SAM', - cost=3000, - type='defense', - template='sa5', - }), - sa3 = Preset:new({ - display = 'SAM', - cost=3000, - type='defense', - template='sa3', - }), - sa6 = Preset:new({ - display = 'SAM', - cost=3000, - type='defense', - template='sa6', - }), - sa11 = Preset:new({ - display = 'SAM', - cost=3000, - type='defense', - template='sa11', - }) - }, - blue = { - infantry = Preset:new({ - display = 'Infantry', - cost=2000, - type='defense', - template='infantry-blue', - }), - shorad = Preset:new({ - display = 'SAM', - cost=2500, - type='defense', - template='shorad-blue', - }), - sam = Preset:new({ - display = 'SAM', - cost=3000, - type='defense', - template='sam-blue', - }), - patriot = Preset:new({ - display = 'SAM', - cost=3000, - type='defense', - template='patriot', - }), - nasams = Preset:new({ - display = 'SAM', - cost=3000, - type='defense', - template='nasams', - }) - } - }, - missions = { - supply = { - convoy = Preset:new({ - display = 'Supply convoy', - cost = 4000, - type = 'mission', - missionType = ZoneCommand.missionTypes.supply_convoy - }), - convoy_escorted = Preset:new({ - display = 'Supply convoy', - cost = 3000, - type = 'mission', - missionType = ZoneCommand.missionTypes.supply_convoy - }), - helo = Preset:new({ - display = 'Supply helicopter', - cost = 2500, - type='mission', - missionType = ZoneCommand.missionTypes.supply_air - }), - transfer = Preset:new({ - display = 'Supply transfer', - cost = 1000, - type='mission', - missionType = ZoneCommand.missionTypes.supply_transfer - }) - }, - attack = { - surface = Preset:new({ - display = 'Ground assault', - cost = 100, - type = 'mission', - missionType = ZoneCommand.missionTypes.assault, - }), - cas = Preset:new({ - display = 'CAS', - cost = 200, - type='mission', - missionType = ZoneCommand.missionTypes.cas - }), - bai = Preset:new({ - display = 'BAI', - cost = 200, - type='mission', - missionType = ZoneCommand.missionTypes.bai - }), - strike = Preset:new({ - display = 'Strike', - cost = 300, - type='mission', - missionType = ZoneCommand.missionTypes.strike - }), - sead = Preset:new({ - display = 'SEAD', - cost = 200, - type='mission', - missionType = ZoneCommand.missionTypes.sead - }), - helo = Preset:new({ - display = 'CAS', - cost = 100, - type='mission', - missionType = ZoneCommand.missionTypes.cas_helo - }) - }, - patrol={ - aircraft = Preset:new({ - display= "Patrol", - cost = 100, - type='mission', - missionType = ZoneCommand.missionTypes.patrol - }) - }, - support ={ - awacs = Preset:new({ - display= "AWACS", - cost = 300, - type='mission', - bias='5', - missionType = ZoneCommand.missionTypes.awacs - }), - tanker = Preset:new({ - display= "Tanker", - cost = 200, - type='mission', - bias='2', - missionType = ZoneCommand.missionTypes.tanker - }) - } - }, - special = { - red = { - infantry = Preset:new({ - display = 'Infantry', - cost=-1, - type='defense', - template='defense-red', - }), - }, - blue = { - infantry = Preset:new({ - display = 'Infantry', - cost=-1, - type='defense', - template='defense-blue', - }) - } - } -} - -zones = {} -do - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Batumi.lua ]]----------------- - -zones.batumi = ZoneCommand:new('Batumi') -zones.batumi.initialState = { side=2 } -zones.batumi.keepActive = true -zones.batumi.isHeloSpawn = true -zones.batumi.isPlaneSpawn = true -zones.batumi.maxResource = 50000 -zones.batumi:defineUpgrades({ - [1] = { --red side - presets.upgrades.basic.comPost:extend({ - name = 'batumi-com-red', - products = { - presets.special.red.infantry:extend({ name='batumi-defense-red'}), - presets.defenses.red.infantry:extend({ name='batumi-garrison-red' }) - } - }), - }, - [2] = --blue side - { - presets.upgrades.basic.comPost:extend({ - name = 'batumi-com-blue', - products = { - presets.special.blue.infantry:extend({ name='batumi-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='batumi-garrison-blue' }) - } - }), - presets.upgrades.supply.fuelTank:extend({ - name = 'batumi-fueltank-blue', - products = { - presets.missions.supply.convoy_escorted:extend({ name='batumi-supply-convoy-1'}), - presets.missions.supply.helo:extend({ name='batumi-supply-blue-1' }), - presets.missions.supply.transfer:extend({name='batumi-transfer-blue'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name = 'batumi-mission-command-blue', - products = { - presets.defenses.blue.shorad:extend({ name='batumi-sam-blue' }), - presets.missions.attack.sead:extend({name='batumi-sead-blue-1', altitude=25000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.attack.cas:extend({name='batumi-cas-blue-1', altitude=15000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.bai:extend({name='batumi-cas-blue-1', altitude=10000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.strike:extend({name='batumi-strike-blue-1', altitude=20000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.patrol.aircraft:extend({name='batumi-patrol-blue-1', altitude=25000, range=25}), - presets.missions.support.awacs:extend({name='batumi-awacs-blue', altitude=30000, freq=257.5}), - presets.missions.support.tanker:extend({name='batumi-tanker-blue', altitude=25000, freq=257, tacan='37', variant="Drogue"}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Batumi.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Mike.lua ]]----------------- - -zones.mike = ZoneCommand:new("Mike") -zones.mike.initialState = { side=1 } -zones.mike.keepActive = true -zones.mike:defineUpgrades({ - [1] = - { - presets.upgrades.basic.tent:extend({ - name='mike-tent-red', - products = { - presets.special.red.infantry:extend({ name='mike-defense-red'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='mike-comcenter-red', - products = { - presets.defenses.red.sam:extend({ name='mike-sam-red'}) - } - }) - }, - [2] = - { - presets.upgrades.basic.tent:extend({ - name='mike-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='mike-defense-blue'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='mike-comcenter-blue', - products = { - presets.defenses.blue.sam:extend({ name='mike-sam-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Mike.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Tyrnyauz.lua ]]----------------- - -zones.tyrnyauz = ZoneCommand:new("Tyrnyauz") -zones.tyrnyauz.initialState = { side=1 } -zones.tyrnyauz.isHeloSpawn = true -zones.tyrnyauz:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='tyrnyauz-tent-red', - products = { - presets.special.red.infantry:extend({ name='tyrnyauz-defense-red'}), - presets.defenses.red.infantry:extend({ name='tyrnyauz-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='tyrnyauz-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='tyrnyauz-supply-red'}), - presets.missions.supply.helo:extend({name='tyrnyauz-supply-red-2'}), - presets.missions.supply.transfer:extend({name='tyrnyauz-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='tyrnyauz-ammo-red', - products = { - presets.missions.attack.surface:extend({name='tyrnyauz-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='tyrnyauz-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='tyrnyauz-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='tyrnyauz-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='tyrnyauz-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='tyrnyauz-supply-blue'}), - presets.missions.supply.helo:extend({name='tyrnyauz-supply-blue-2'}), - presets.missions.supply.transfer:extend({name='tyrnyauz-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='tyrnyauz-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='tyrnyauz-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Tyrnyauz.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/India.lua ]]----------------- - -zones.india = ZoneCommand:new("India") -zones.india.initialState = nil -zones.india:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='india-tent-red', - products = { - presets.special.red.infantry:extend({ name='india-defense-red'}), - presets.defenses.red.infantry:extend({ name='india-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='india-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='india-supply-red'}), - presets.missions.supply.transfer:extend({name='india-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='india-ammo-red', - products = { - presets.missions.attack.surface:extend({name='india-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='india-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='india-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='india-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='india-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='india-supply-blue'}), - presets.missions.supply.transfer:extend({name='india-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='india-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='india-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/India.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/IntelCenter.lua ]]----------------- - -zones.intelcenter = ZoneCommand:new("Intel Center") -zones.intelcenter.initialState = { side=1 } -zones.intelcenter:defineUpgrades({ - [1] = - { - presets.upgrades.basic.tent:extend({ - name='intelcenter-tent-red', - products = { - presets.special.red.infantry:extend({ name='intelcenter-defense-red'}), - presets.defenses.red.infantry:extend({ name='intelcenter-garrison-red'}) - } - }), - presets.upgrades.supply.hq:extend({ - name='intelcenter-hq-red', - products = { - presets.missions.supply.convoy:extend({ name='intelcenter-supply-red'}), - presets.missions.supply.convoy:extend({ name='intelcenter-supply-red-1'}), - presets.missions.supply.transfer:extend({name='intelcenter-transfer-red'}) - } - }), - presets.upgrades.supply.antenna:extend({ - name='intelcenter-antenna-red', - products = { - } - }), - presets.upgrades.supply.antenna:extend({ - name='intelcenter-antenna-red-1', - products = { - } - }), - presets.upgrades.supply.antenna:extend({ - name='intelcenter-antenna-red-2', - products = { - } - }) - }, - [2] = - { - presets.upgrades.basic.tent:extend({ - name='intelcenter-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='intelcenter-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='intelcenter-garrison-blue'}) - } - }), - presets.upgrades.supply.hq:extend({ - name='intelcenter-hq-blue', - products = { - presets.missions.supply.convoy:extend({ name='intelcenter-supply-blue'}), - presets.missions.supply.convoy:extend({ name='intelcenter-supply-blue-1'}), - presets.missions.supply.transfer:extend({name='intelcenter-transfer-blue'}) - } - }), - presets.upgrades.supply.antenna:extend({ - name='intelcenter-antenna-blue', - products = { - } - }), - presets.upgrades.supply.antenna:extend({ - name='intelcenter-antenna-blue-1', - products = { - } - }), - presets.upgrades.supply.antenna:extend({ - name='intelcenter-antenna-blue-2', - products = { - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/IntelCenter.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Mineralnye.lua ]]----------------- - -zones.mineralnye = ZoneCommand:new("Mineralnye") -zones.mineralnye.initialState = { side=1 } -zones.mineralnye.keepActive = true -zones.mineralnye.isHeloSpawn = true -zones.mineralnye.isPlaneSpawn = true -zones.mineralnye:defineUpgrades({ - [1] = - { - presets.upgrades.basic.comPost:extend({ - name='mineralnye-compost-red', - products = { - presets.special.red.infantry:extend({ name='mineralnye-defense-red'}), - presets.defenses.red.infantry:extend({ name='mineralnye-garrison-red'}) - } - }), - presets.upgrades.supply.fuelTank:extend({ - name='mineralnye-fuel-red', - products = { - presets.missions.supply.helo:extend({name='mineralnye-supply-red'}), - presets.missions.supply.helo:extend({name='mineralnye-supply-red-1'}), - presets.missions.supply.transfer:extend({name='mineralnye-transfer-red'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='mineralnye-comcenter-red', - products = { - presets.defenses.red.sa11:extend({ name='mineralnye-airdef-red'}), - presets.missions.attack.cas:extend({name='mineralnye-cas-red', altitude=15000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.bai:extend({name='mineralnye-cas-red', altitude=10000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.strike:extend({name='mineralnye-strike-red', altitude=30000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.attack.strike:extend({name='mineralnye-strike-red-1', altitude=30000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.patrol.aircraft:extend({name='mineralnye-patrol-red', altitude=25000, range=25}) - } - }) - }, - [2] = - { - presets.upgrades.basic.comPost:extend({ - name='mineralnye-compost-blue', - products = { - presets.special.blue.infantry:extend({ name='mineralnye-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='mineralnye-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelTank:extend({ - name='mineralnye-fuel-blue', - products = { - presets.missions.supply.helo:extend({name='mineralnye-supply-blue'}), - presets.missions.supply.helo:extend({name='mineralnye-supply-blue-1'}), - presets.missions.supply.transfer:extend({name='mineralnye-transfer-blue'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='mineralnye-comcenter-blue', - products = { - presets.defenses.blue.nasams:extend({ name='mineralnye-airdef-blue'}), - presets.missions.attack.cas:extend({name='mineralnye-cas-blue', altitude=15000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.bai:extend({name='mineralnye-cas-blue', altitude=10000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.strike:extend({name='mineralnye-strike-blue', altitude=30000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.attack.strike:extend({name='mineralnye-strike-blue-1', altitude=30000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.patrol.aircraft:extend({name='mineralnye-patrol-blue', altitude=25000, range=25}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Mineralnye.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/PowerPlant.lua ]]----------------- - -zones.powerplant = ZoneCommand:new("Power Plant") -zones.powerplant.initialState = { side=1 } -zones.powerplant:defineUpgrades({ - [1] = - { - presets.upgrades.basic.tent:extend({ - name='powerplant-tent-red', - products = { - presets.special.red.infantry:extend({ name='powerplant-defense-red'}), - presets.defenses.red.infantry:extend({ name='powerplant-garrison-red'}) - } - }), - presets.upgrades.supply.powerplant1:extend({ - name='powerplant-building-red-1', - products = { - presets.missions.supply.convoy:extend({ name='powerplant-supply-red'}), - presets.missions.supply.transfer:extend({name='powerplant-transfer-red'}) - } - }), - presets.upgrades.supply.powerplant2:extend({ - name='powerplant-building-red-2', - products = { - presets.missions.supply.convoy:extend({ name='powerplant-supply-red-1'}), - presets.missions.supply.transfer:extend({name='powerplant-transfer-red'}) - } - }) - }, - [2] = - { - presets.upgrades.basic.tent:extend({ - name='powerplant-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='powerplant-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='powerplant-garrison-blue'}) - } - }), - presets.upgrades.supply.powerplant1:extend({ - name='powerplant-building-blue-1', - products = { - presets.missions.supply.convoy:extend({ name='powerplant-supply-blue'}), - presets.missions.supply.transfer:extend({name='powerplant-transfer-blue'}) - } - }), - presets.upgrades.supply.powerplant2:extend({ - name='powerplant-building-blue-2', - products = { - presets.missions.supply.convoy:extend({ name='powerplant-supply-blue-1'}), - presets.missions.supply.transfer:extend({name='powerplant-transfer-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/PowerPlant.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Zugdidi.lua ]]----------------- - -zones.zugdidi = ZoneCommand:new("Zugdidi") -zones.zugdidi.initialState = { side=1 } -zones.zugdidi:defineUpgrades({ - [1] = - { - presets.upgrades.basic.comPost:extend({ - name='zugdidi-compost-red', - products = { - presets.missions.supply.transfer:extend({name='zugdidi-transfer-red'}), - presets.special.red.infantry:extend({ name='zugdidi-defense-red'}), - presets.defenses.red.infantry:extend({ name='zugdidi-garrison-red'}), - presets.missions.attack.surface:extend({name='zugdidi-attack-red'}), - presets.missions.supply.convoy:extend({name='zugdidi-supply-red'}) - } - }), - presets.upgrades.supply.hangar:extend({ - name='zugdidi-hangar-red-1', - products = { - presets.missions.supply.helo:extend({name='zugdidi-supply-red-1'}) - } - }), - presets.upgrades.supply.hangar:extend({ - name='zugdidi-hangar-red-2', - products = { - presets.missions.supply.helo:extend({name='zugdidi-supply-red-2'}) - } - }), - presets.upgrades.supply.hangar:extend({ - name='zugdidi-hangar-red-3', - products = { - presets.missions.supply.helo:extend({name='zugdidi-supply-red-3'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='zugdidi-comcenter-red', - products = { - presets.defenses.red.sa6:extend({ name='zugdidi-sam-red'}) - } - }) - }, - [2] = - { - presets.upgrades.basic.tent:extend({ - name='zugdidi-compost-blue', - products = { - presets.missions.supply.transfer:extend({name='zugdidi-transfer-blue'}), - presets.special.blue.infantry:extend({ name='zugdidi-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='zugdidi-garrison-blue'}), - presets.missions.attack.surface:extend({name='zugdidi-attack-blue'}), - presets.missions.supply.convoy:extend({name='zugdidi-supply-blue'}) - } - }), - presets.upgrades.supply.hangar:extend({ - name='zugdidi-hangar-blue-1', - products = { - presets.missions.supply.helo:extend({name='zugdidi-supply-blue-1'}) - } - }), - presets.upgrades.supply.hangar:extend({ - name='zugdidi-hangar-blue-2', - products = { - presets.missions.supply.helo:extend({name='zugdidi-supply-blue-2'}) - } - }), - presets.upgrades.supply.hangar:extend({ - name='zugdidi-hangar-blue-3', - products = { - presets.missions.supply.helo:extend({name='zugdidi-supply-blue-3'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='zugdidi-comcenter-blue', - products = { - presets.defenses.blue.shorad:extend({ name='zugdidi-sam-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Zugdidi.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Babugent.lua ]]----------------- - -zones.babugent = ZoneCommand:new("Babugent") -zones.babugent.initialState = { side=1 } -zones.babugent:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='babugent-tent-red', - products = { - presets.special.red.infantry:extend({ name='babugent-defense-red'}), - presets.defenses.red.infantry:extend({ name='babugent-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='babugent-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='babugent-supply-red'}), - presets.missions.supply.helo:extend({name='babugent-supply-red-2'}), - presets.missions.supply.transfer:extend({name='babugent-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='babugent-ammo-red', - products = { - presets.missions.attack.surface:extend({name='babugent-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='babugent-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='babugent-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='babugent-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='babugent-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='babugent-supply-blue'}), - presets.missions.supply.helo:extend({name='babugent-supply-blue-2'}), - presets.missions.supply.transfer:extend({name='babugent-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='babugent-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='babugent-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Babugent.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Kislovodsk.lua ]]----------------- - -zones.kislovodsk = ZoneCommand:new("Kislovodsk") -zones.kislovodsk.initialState = { side=1 } -zones.kislovodsk:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='kislovodsk-tent-red', - products = { - presets.special.red.infantry:extend({ name='kislovodsk-defense-red'}), - presets.defenses.red.infantry:extend({ name='kislovodsk-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='kislovodsk-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='kislovodsk-supply-red'}), - presets.missions.supply.transfer:extend({name='kislovodsk-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='kislovodsk-ammo-red', - products = { - presets.missions.attack.surface:extend({name='kislovodsk-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='kislovodsk-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='kislovodsk-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='kislovodsk-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='kislovodsk-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='kislovodsk-supply-blue'}), - presets.missions.supply.transfer:extend({name='kislovodsk-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='kislovodsk-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='kislovodsk-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Kislovodsk.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Gudauta.lua ]]----------------- - -zones.gudauta = ZoneCommand:new("Gudauta") -zones.gudauta.initialState = { side=1 } -zones.gudauta.keepActive = true -zones.gudauta.maxResource = 50000 -zones.gudauta:defineUpgrades({ - [1] = - { - presets.upgrades.basic.comPost:extend({ - name='gudauta-compost-red', - products = { - presets.special.red.infantry:extend({ name='gudauta-defense-red'}), - presets.defenses.red.infantry:extend({ name='gudauta-garrison-red'}) - } - }), - presets.upgrades.supply.fuelTank:extend({ - name='gudauta-fuel-red', - products = { - presets.missions.supply.helo:extend({name='gudauta-supply-red'}), - presets.missions.supply.helo:extend({name='gudauta-supply-red-1'}), - presets.missions.supply.transfer:extend({name='gudauta-transfer-red'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='gudauta-comcenter-red', - products = { - presets.defenses.red.sam:extend({ name='gudauta-airdef-red'}), - presets.missions.attack.sead:extend({name='gudauta-sead-red', altitude=25000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.attack.sead:extend({name='gudauta-sead-red-1', altitude=25000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.attack.cas:extend({name='gudauta-cas-red', altitude=15000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.bai:extend({name='gudauta-cas-red', altitude=10000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.patrol.aircraft:extend({name='gudauta-patrol-red', altitude=25000, range=25}) - } - }) - }, - [2] = - { - presets.upgrades.basic.comPost:extend({ - name='gudauta-compost-blue', - products = { - presets.special.blue.infantry:extend({ name='gudauta-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='gudauta-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelTank:extend({ - name='gudauta-fuel-blue', - products = { - presets.missions.supply.helo:extend({name='gudauta-supply-blue'}), - presets.missions.supply.helo:extend({name='gudauta-supply-blue-1'}), - presets.missions.supply.transfer:extend({name='gudauta-transfer-blue'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='gudauta-comcenter-blue', - products = { - presets.defenses.blue.sam:extend({ name='gudauta-airdef-blue'}), - presets.missions.attack.sead:extend({name='gudauta-sead-blue', altitude=25000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.attack.sead:extend({name='gudauta-sead-blue-1', altitude=25000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.attack.cas:extend({name='gudauta-cas-blue', altitude=15000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.bai:extend({name='gudauta-cas-blue', altitude=10000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.patrol.aircraft:extend({name='gudauta-patrol-blue', altitude=25000, range=25}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Gudauta.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Distillery.lua ]]----------------- - -zones.distillery = ZoneCommand:new("Distillery") -zones.distillery.initialState = { side=1 } -zones.distillery:defineUpgrades({ - [1] = - { - presets.upgrades.basic.tent:extend({ - name='distillery-tent-red', - products = { - presets.special.red.infantry:extend({ name='distillery-defense-red'}), - presets.defenses.red.infantry:extend({ name='distillery-garrison-red'}) - } - }), - presets.upgrades.supply.factory1:extend({ - name='distillery-prod-red-1', - products = { - presets.missions.supply.convoy:extend({ name='distillery-supply-red-1'}), - presets.missions.supply.transfer:extend({name='distillery-transfer-red'}) - } - }), - presets.upgrades.supply.factory2:extend({ - name='distillery-prod-red-2', - products = { - presets.missions.supply.convoy:extend({ name='distillery-supply-red-2', cost=2000}), - presets.missions.supply.transfer:extend({name='distillery-transfer-red2'}) - } - }), - presets.upgrades.supply.factoryTank:extend({ - name='distillery-tank-red-1', - products = { - } - }), - presets.upgrades.supply.factoryTank:extend({ - name='distillery-tank-red-2', - products = { - } - }), - presets.upgrades.supply.factoryTank:extend({ - name='distillery-tank-red-3', - products = { - } - }) - }, - [2] = - { - presets.upgrades.basic.tent:extend({ - name='distillery-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='distillery-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='distillery-garrison-blue'}) - } - }), - presets.upgrades.supply.factory1:extend({ - name='distillery-prod-blue-1', - products = { - presets.missions.supply.convoy:extend({ name='distillery-supply-blue-1'}), - presets.missions.supply.transfer:extend({name='distillery-transfer-blue'}) - } - }), - presets.upgrades.supply.factory2:extend({ - name='distillery-prod-blue-2', - products = { - presets.missions.supply.convoy:extend({ name='distillery-supply-blue-2', cost=2000}), - presets.missions.supply.transfer:extend({name='distillery-transfer-blue2'}) - } - }), - presets.upgrades.supply.factoryTank:extend({ - name='distillery-tank-blue-1', - products = { - } - }), - presets.upgrades.supply.factoryTank:extend({ - name='distillery-tank-blue-2', - products = { - } - }), - presets.upgrades.supply.factoryTank:extend({ - name='distillery-tank-blue-3', - products = { - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Distillery.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Sochi.lua ]]----------------- - -zones.sochi = ZoneCommand:new("Sochi") -zones.sochi.initialState = { side=1 } -zones.sochi.keepActive = true -zones.sochi.maxResource = 50000 -zones.sochi:defineUpgrades({ - [1] = - { - presets.upgrades.basic.comPost:extend({ - name='sochi-compost-red', - products = { - presets.special.red.infantry:extend({ name='sochi-defense-red'}), - presets.defenses.red.infantry:extend({ name='sochi-garrison-red'}) - } - }), - presets.upgrades.supply.fuelTank:extend({ - name='sochi-fuel-red', - products = { - presets.missions.supply.helo:extend({name='sochi-supply-red-1'}), - presets.missions.supply.helo:extend({name='sochi-supply-red-2'}), - presets.missions.supply.convoy_escorted:extend({name='sochi-supply-red-3'}), - presets.missions.supply.transfer:extend({name='sochi-transfer-red'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='sochi-comcenter-red', - products = { - presets.defenses.red.sa10:extend({ name='sochi-airdef-red'}), - presets.missions.attack.sead:extend({name='sochi-sead-red', altitude=25000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.attack.strike:extend({name='sochi-strike-red', altitude=30000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.patrol.aircraft:extend({name='sochi-patrol-red', altitude=25000, range=25}), - presets.missions.patrol.aircraft:extend({name='sochi-patrol-red-1', altitude=25000, range=25}), - presets.missions.attack.cas:extend({name='sochi-cas-red', altitude=15000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.bai:extend({name='sochi-cas-red', altitude=10000, expend=AI.Task.WeaponExpend.ONE}) - } - }) - }, - [2] = - { - presets.upgrades.basic.comPost:extend({ - name='sochi-compost-blue', - products = { - presets.special.blue.infantry:extend({ name='sochi-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='sochi-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelTank:extend({ - name='sochi-fuel-blue', - products = { - presets.missions.supply.helo:extend({name='sochi-supply-blue-1'}), - presets.missions.supply.helo:extend({name='sochi-supply-blue-2'}), - presets.missions.supply.convoy_escorted:extend({name='sochi-supply-blue-3'}), - presets.missions.supply.transfer:extend({name='sochi-transfer-blue'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='sochi-comcenter-blue', - products = { - presets.defenses.blue.patriot:extend({ name='sochi-airdef-blue'}), - presets.missions.attack.sead:extend({name='sochi-sead-blue', altitude=25000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.attack.strike:extend({name='sochi-strike-blue', altitude=30000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.patrol.aircraft:extend({name='sochi-patrol-blue', altitude=25000, range=25}), - presets.missions.attack.cas:extend({name='sochi-cas-blue', altitude=15000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.bai:extend({name='sochi-cas-blue', altitude=10000, expend=AI.Task.WeaponExpend.ONE}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Sochi.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Golf.lua ]]----------------- - -zones.golf = ZoneCommand:new("Golf") -zones.golf.initialState = nil -zones.golf.isHeloSpawn = true -zones.golf:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='golf-tent-red', - products = { - presets.special.red.infantry:extend({ name='golf-defense-red'}), - presets.defenses.red.infantry:extend({ name='golf-garrison-red'}) - } - }), - presets.upgrades.supply.fuelTank:extend({ - name='golf-fuel-red', - products = { - presets.missions.supply.helo:extend({name='golf-supply-red'}), - presets.missions.supply.helo:extend({name='golf-supply-red-1'}), - presets.missions.supply.transfer:extend({name='golf-transfer-red'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='golf-comcenter-red', - products = { - presets.defenses.red.shorad:extend({name='golf-sam-red'}), - presets.missions.attack.helo:extend({name='golf-cas-red', altitude=200, expend=AI.Task.WeaponExpend.HALF }) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='golf-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='golf-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='golf-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelTankFarp:extend({ - name='golf-fuel-blue', - products = { - presets.missions.supply.helo:extend({name='golf-supply-blue'}), - presets.missions.supply.helo:extend({name='golf-supply-blue-1'}), - presets.missions.supply.transfer:extend({name='golf-transfer-blue'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='golf-comcenter-blue', - products = { - presets.defenses.blue.shorad:extend({name='golf-sam-blue'}), - presets.missions.attack.helo:extend({name='golf-cas-blue', altitude=200, expend=AI.Task.WeaponExpend.HALF }) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Golf.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Charlie.lua ]]----------------- - -zones.charlie = ZoneCommand:new("Charlie") -zones.charlie.initialState = { side=2 } -zones.charlie.keepActive = true -zones.charlie:defineUpgrades({ - [1] = - { - presets.upgrades.basic.tent:extend({ - name='charlie-tent-red', - products = { - presets.special.red.infantry:extend({ name='charlie-defense-red'}), - presets.defenses.red.infantry:extend({ name='charlie-garrison-red'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='charlie-comcenter-red', - products = { - presets.defenses.red.sam:extend({ name='charlie-sam-red'}) - } - }) - }, - [2] = - { - presets.upgrades.basic.tent:extend({ - name='charlie-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='charlie-defense-red'}), - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='charlie-comcenter-blue', - products = { - presets.defenses.blue.sam:extend({ name='charlie-sam-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Charlie.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Lentehi.lua ]]----------------- - -zones.lentehi = ZoneCommand:new("Lentehi") -zones.lentehi.initialState = { side=1 } -zones.lentehi:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='lentehi-tent-red', - products = { - presets.special.red.infantry:extend({ name='lentehi-defense-red'}), - presets.defenses.red.infantry:extend({ name='lentehi-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='lentehi-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='lentehi-supply-red'}), - presets.missions.supply.helo:extend({name='lentehi-supply-red-2'}), - presets.missions.supply.transfer:extend({name='lentehi-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='lentehi-ammo-red', - products = { - presets.missions.attack.surface:extend({name='lentehi-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='lentehi-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='lentehi-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='lentehi-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='lentehi-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='lentehi-supply-blue'}), - presets.missions.supply.helo:extend({name='lentehi-supply-blue-2'}), - presets.missions.supply.transfer:extend({name='lentehi-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='lentehi-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='lentehi-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Lentehi.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Refinery.lua ]]----------------- - -zones.refinery = ZoneCommand:new("Refinery") -zones.refinery.initialState = { side=1 } -zones.refinery:defineUpgrades({ - [1] = - { - presets.upgrades.basic.tent:extend({ - name='refinery-tent-red', - products = { - presets.special.red.infantry:extend({ name='refinery-defense-red'}), - presets.defenses.red.infantry:extend({ name='refinery-garrison-red'}) - } - }), - presets.upgrades.supply.refinery1:extend({ - name='refinery-building-red', - products = { - presets.missions.supply.convoy:extend({ name='refinery-supply-red'}), - presets.missions.supply.convoy:extend({ name='refinery-supply-red-1'}), - presets.missions.supply.helo:extend({ name='refinery-supply-red-2'}), - presets.missions.supply.transfer:extend({name='refinery-transfer-red'}) - } - }) - }, - [2] = - { - presets.upgrades.basic.tent:extend({ - name='refinery-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='refinery-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='refinery-garrison-blue'}) - } - }), - presets.upgrades.supply.refinery1:extend({ - name='refinery-building-blue', - products = { - presets.missions.supply.convoy:extend({ name='refinery-supply-blue'}), - presets.missions.supply.convoy:extend({ name='refinery-supply-blue-1'}), - presets.missions.supply.helo:extend({ name='refinery-supply-blue-2'}), - presets.missions.supply.transfer:extend({name='refinery-transfer-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Refinery.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Mozdok.lua ]]----------------- - -zones.mozdok = ZoneCommand:new("Mozdok") -zones.mozdok.initialState = { side=1 } -zones.mozdok.keepActive = true -zones.mozdok.maxResource = 50000 -zones.mozdok:defineUpgrades({ - [1] = - { - presets.upgrades.basic.comPost:extend({ - name='mozdok-compost-red', - products = { - presets.special.red.infantry:extend({ name='mozdok-defense-red'}), - presets.defenses.red.infantry:extend({ name='mozdok-garrison-red'}) - } - }), - presets.upgrades.supply.fuelTank:extend({ - name='mozdok-fuel-red', - products = { - presets.missions.supply.helo:extend({name='mozdok-supply-red-1'}), - presets.missions.supply.helo:extend({name='mozdok-supply-red-2'}), - presets.missions.supply.convoy_escorted:extend({name='mozdok-supply-red-3'}), - presets.missions.supply.transfer:extend({name='mozdok-transfer-red'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='mozdok-comcenter-red', - products = { - presets.defenses.red.sa10:extend({ name='mozdok-airdef-red'}), - presets.missions.patrol.aircraft:extend({name='mozdok-patrol-red', altitude=25000, range=25}), - presets.missions.attack.cas:extend({name='mozdok-cas-red', altitude=15000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.bai:extend({name='mozdok-cas-red', altitude=10000, expend=AI.Task.WeaponExpend.ONE}) - } - }) - }, - [2] = - { - presets.upgrades.basic.comPost:extend({ - name='mozdok-compost-blue', - products = { - presets.special.blue.infantry:extend({ name='mozdok-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='mozdok-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelTank:extend({ - name='mozdok-fuel-blue', - products = { - presets.missions.supply.helo:extend({name='mozdok-supply-blue-1'}), - presets.missions.supply.helo:extend({name='mozdok-supply-blue-2'}), - presets.missions.supply.convoy_escorted:extend({name='mozdok-supply-blue-3'}), - presets.missions.supply.transfer:extend({name='mozdok-transfer-blue'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='mozdok-comcenter-blue', - products = { - presets.defenses.blue.shorad:extend({ name='mozdok-airdef-blue'}), - presets.missions.patrol.aircraft:extend({name='mozdok-patrol-blue', altitude=25000, range=25}), - presets.missions.attack.cas:extend({name='mozdok-cas-blue', altitude=15000, cost=50, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.cas:extend({name='mozdok-cas-blue-1', altitude=15000, cost=50, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.bai:extend({name='mozdok-cas-blue', altitude=15000, cost=50, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.bai:extend({name='mozdok-cas-blue-1', altitude=15000, cost=50, expend=AI.Task.WeaponExpend.ONE}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Mozdok.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Lima.lua ]]----------------- - -zones.lima = ZoneCommand:new("Lima") -zones.lima.initialState = { side=1 } -zones.lima:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='lima-tent-red', - products = { - presets.special.red.infantry:extend({ name='lima-defense-red'}), - presets.defenses.red.infantry:extend({ name='lima-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='lima-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='lima-supply-red'}), - presets.missions.supply.helo:extend({name='lima-supply-red-1'}), - presets.missions.supply.transfer:extend({name='lima-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='lima-ammo-red', - products = { - presets.missions.attack.surface:extend({name='lima-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='lima-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='lima-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='lima-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='lima-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='lima-supply-blue'}), - presets.missions.supply.helo:extend({name='lima-supply-blue-1'}), - presets.missions.supply.transfer:extend({name='lima-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='lima-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='lima-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Lima.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Oscar.lua ]]----------------- - -zones.oscar = ZoneCommand:new("Oscar") -zones.oscar.initialState = { side=1 } -zones.oscar:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='oscar-tent-red', - products = { - presets.special.red.infantry:extend({ name='oscar-defense-red'}), - presets.defenses.red.infantry:extend({ name='oscar-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='oscar-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='oscar-supply-red'}), - presets.missions.supply.transfer:extend({name='oscar-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='oscar-ammo-red', - products = { - presets.missions.attack.surface:extend({name='oscar-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='oscar-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='oscar-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='oscar-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='oscar-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='oscar-supply-blue'}), - presets.missions.supply.transfer:extend({name='oscar-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='oscar-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='oscar-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Oscar.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Nalchik.lua ]]----------------- - -zones.nalchik = ZoneCommand:new("Nalchik") -zones.nalchik.initialState = { side=1 } -zones.nalchik.keepActive = true -zones.nalchik.isHeloSpawn = true -zones.nalchik.isPlaneSpawn = true -zones.nalchik:defineUpgrades({ - [1] = - { - presets.upgrades.basic.comPost:extend({ - name='nalchik-compost-red', - products = { - presets.special.red.infantry:extend({ name='nalchik-defense-red'}), - presets.defenses.red.infantry:extend({ name='nalchik-garrison-red'}) - } - }), - presets.upgrades.supply.fuelTank:extend({ - name='nalchik-fuel-red', - products = { - presets.missions.supply.helo:extend({name='nalchik-supply-red-1'}), - presets.missions.supply.helo:extend({name='nalchik-supply-red-2'}), - presets.missions.supply.transfer:extend({name='nalchik-transfer-red'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='nalchik-comcenter-red', - products = { - presets.defenses.red.sa3:extend({ name='nalchik-airdef-red'}), - presets.missions.attack.sead:extend({name='nalchik-sead-red', altitude=25000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.attack.cas:extend({name='nalchik-cas-red', altitude=15000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.bai:extend({name='nalchik-cas-red', altitude=10000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.strike:extend({name='nalchik-strike-red', altitude=30000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.patrol.aircraft:extend({name='nalchik-patrol-red', altitude=25000, range=25}), - presets.missions.patrol.aircraft:extend({name='nalchik-patrol-red-2', altitude=25000, range=25}), - presets.missions.support.awacs:extend({name='nalchik-awacs-red', altitude=30000, freq=251.2}), - presets.missions.support.tanker:extend({name='nalchik-tanker-red', altitude=30000, freq=252.2, tacan='40', variant='Drogue'}) - } - }) - }, - [2] = - { - presets.upgrades.basic.comPost:extend({ - name='nalchik-compost-blue', - products = { - presets.special.blue.infantry:extend({ name='nalchik-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='nalchik-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelTank:extend({ - name='nalchik-fuel-blue', - products = { - presets.missions.supply.helo:extend({name='nalchik-supply-blue-1'}), - presets.missions.supply.helo:extend({name='nalchik-supply-blue-2'}), - presets.missions.supply.transfer:extend({name='nalchik-transfer-blue'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='nalchik-comcenter-blue', - products = { - presets.defenses.blue.nasams:extend({ name='nalchik-airdef-blue'}), - presets.missions.support.awacs:extend({name='nalchik-awacs-blue', altitude=30000, freq=259.5}), - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Nalchik.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Digora.lua ]]----------------- - -zones.digora = ZoneCommand:new("Digora") -zones.digora.initialState = { side=1 } -zones.digora:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='digora-tent-red', - products = { - presets.special.red.infantry:extend({ name='digora-defense-red'}), - presets.defenses.red.infantry:extend({ name='digora-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='digora-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='digora-supply-red'}), - presets.missions.supply.transfer:extend({name='digora-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='digora-ammo-red', - products = { - presets.missions.attack.surface:extend({name='digora-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='digora-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='digora-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='digora-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='digora-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='digora-supply-blue'}), - presets.missions.supply.transfer:extend({name='digora-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='digora-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='digora-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Digora.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Uniform.lua ]]----------------- - -zones.uniform = ZoneCommand:new("Uniform") -zones.uniform.initialState = { side=1 } -zones.uniform:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='uniform-tent-red', - products = { - presets.special.red.infantry:extend({ name='uniform-defense-red'}), - presets.defenses.red.infantry:extend({ name='uniform-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='uniform-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='uniform-supply-red'}), - presets.missions.supply.transfer:extend({name='uniform-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='uniform-ammo-red', - products = { - presets.missions.attack.surface:extend({name='uniform-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='uniform-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='uniform-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='uniform-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='uniform-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='uniform-supply-blue'}), - presets.missions.supply.transfer:extend({name='uniform-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='uniform-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='uniform-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Uniform.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Factory.lua ]]----------------- - -zones.factory = ZoneCommand:new("Factory") -zones.factory.initialState = { side=2 } -zones.factory:defineUpgrades({ - [1] = - { - presets.upgrades.basic.tent:extend({ - name='factory-tent-red', - products = { - presets.special.red.infantry:extend({ name='factory-defense-red'}), - presets.defenses.red.infantry:extend({ name='factory-garrison-red'}) - } - }), - presets.upgrades.supply.factory1:extend({ - name='factory-prod-red-1', - products = { - presets.missions.supply.convoy:extend({ name='factory-supply-red-1'}), - presets.missions.supply.transfer:extend({name='factory-transfer-red'}) - } - }), - presets.upgrades.supply.factory2:extend({ - name='factory-prod-red-2', - products = { - presets.missions.supply.convoy:extend({ name='factory-supply-red-2', cost=2000}), - presets.missions.supply.transfer:extend({name='factory-transfer-red2'}) - } - }), - presets.upgrades.supply.factoryTank:extend({ - name='factory-tank-red-1', - products = { - } - }), - presets.upgrades.supply.factoryTank:extend({ - name='factory-tank-red-2', - products = { - } - }), - presets.upgrades.supply.factoryTank:extend({ - name='factory-tank-red-3', - products = { - } - }) - }, - [2] = - { - presets.upgrades.basic.tent:extend({ - name='factory-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='factory-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='factory-garrison-blue'}) - } - }), - presets.upgrades.supply.factory1:extend({ - name='factory-prod-blue-1', - products = { - presets.missions.supply.convoy:extend({ name='factory-supply-blue-1'}), - presets.missions.supply.transfer:extend({name='factory-transfer-blue'}) - } - }), - presets.upgrades.supply.factory2:extend({ - name='factory-prod-blue-2', - products = { - presets.missions.supply.convoy:extend({ name='factory-supply-blue-2', cost=2000}), - presets.missions.supply.transfer:extend({name='factory-transfer-blue2'}) - } - }), - presets.upgrades.supply.factoryTank:extend({ - name='factory-tank-blue-1', - products = { - } - }), - presets.upgrades.supply.factoryTank:extend({ - name='factory-tank-blue-2', - products = { - } - }), - presets.upgrades.supply.factoryTank:extend({ - name='factory-tank-blue-3', - products = { - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Factory.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Senaki.lua ]]----------------- - -zones.senaki = ZoneCommand:new("Senaki") -zones.senaki.initialState = { side=1 } -zones.senaki.keepActive = true -zones.senaki.isHeloSpawn = true -zones.senaki.isPlaneSpawn = true -zones.senaki.maxResource = 50000 -zones.senaki:defineUpgrades({ - [1] = - { - presets.upgrades.basic.comPost:extend({ - name='senaki-compost-red', - products = { - presets.special.red.infantry:extend({ name='senaki-defense-red'}), - presets.defenses.red.infantry:extend({ name='senaki-garrison-red'}) - } - }), - presets.upgrades.supply.fuelTank:extend({ - name='senaki-fuel-red', - products = { - presets.missions.supply.helo:extend({name='senaki-supply-red-1'}), - presets.missions.supply.helo:extend({name='senaki-supply-red-2'}), - presets.missions.supply.transfer:extend({name='senaki-transfer-red'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='senaki-comcenter-red', - products = { - presets.defenses.red.sa3:extend({ name='senaki-airdef-red'}), - presets.missions.attack.sead:extend({name='senaki-sead-red', altitude=25000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.attack.cas:extend({name='senaki-cas-red', altitude=15000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.bai:extend({name='senaki-cas-red', altitude=10000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.strike:extend({name='senaki-strike-red', altitude=20000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.patrol.aircraft:extend({name='senaki-patrol-red', altitude=25000, range=25}), - presets.missions.patrol.aircraft:extend({name='senaki-patrol-red-2', altitude=20000, range=25}) - } - }) - }, - [2] = - { - presets.upgrades.basic.comPost:extend({ - name='senaki-compost-blue', - products = { - presets.special.blue.infantry:extend({ name='senaki-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='senaki-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelTank:extend({ - name='senaki-fuel-blue', - products = { - presets.missions.supply.helo:extend({name='senaki-supply-blue-1'}), - presets.missions.supply.helo:extend({name='senaki-supply-blue-2'}), - presets.missions.supply.transfer:extend({name='senaki-transfer-blue'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='senaki-comcenter-blue', - products = { - presets.defenses.blue.shorad:extend({ name='senaki-airdef-blue'}), - presets.missions.attack.sead:extend({name='senaki-sead-blue', altitude=25000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.attack.cas:extend({name='senaki-cas-blue', altitude=15000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.bai:extend({name='senaki-cas-blue', altitude=10000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.strike:extend({name='senaki-strike-blue', altitude=20000, expend=AI.Task.WeaponExpend.TWO}), - presets.missions.patrol.aircraft:extend({name='senaki-patrol-blue', altitude=25000, range=25}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Senaki.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Kutaisi.lua ]]----------------- - -zones.kutaisi = ZoneCommand:new("Kutaisi") -zones.kutaisi.initialState = { side=1 } -zones.kutaisi.keepActive = true -zones.kutaisi.maxResource = 50000 -zones.kutaisi:defineUpgrades({ - [1] = - { - presets.upgrades.basic.comPost:extend({ - name='kutaisi-compost-red', - products = { - presets.special.red.infantry:extend({ name='kutaisi-defense-red'}), - presets.defenses.red.infantry:extend({ name='kutaisi-garrison-red'}) - } - }), - presets.upgrades.supply.fuelTank:extend({ - name='kutaisi-fuel-red', - products = { - presets.missions.supply.helo:extend({name='kutaisi-supply-red-1'}), - presets.missions.supply.helo:extend({name='kutaisi-supply-red-2'}), - presets.missions.supply.transfer:extend({name='kutaisi-transfer-red'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='kutaisi-comcenter-red', - products = { - presets.defenses.red.shorad:extend({ name='kutaisi-airdef-red'}), - presets.missions.attack.sead:extend({name='kutaisi-sead-red', altitude=25000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.attack.cas:extend({name='kutaisi-cas-red', altitude=15000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.bai:extend({name='kutaisi-cas-red', altitude=10000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.strike:extend({name='kutaisi-strike-red', altitude=20000, expend=AI.Task.WeaponExpend.HALF}), - presets.missions.patrol.aircraft:extend({name='kutaisi-patrol-red', altitude=25000, range=25}), - presets.missions.patrol.aircraft:extend({name='kutaisi-patrol-red-2', altitude=25000, range=25}) - } - }) - }, - [2] = - { - presets.upgrades.basic.comPost:extend({ - name='kutaisi-compost-blue', - products = { - presets.special.blue.infantry:extend({ name='kutaisi-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='kutaisi-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelTank:extend({ - name='kutaisi-fuel-blue', - products = { - presets.missions.supply.helo:extend({name='kutaisi-supply-blue-1'}), - presets.missions.supply.helo:extend({name='kutaisi-supply-blue-2'}), - presets.missions.supply.transfer:extend({name='kutaisi-transfer-blue'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='kutaisi-comcenter-blue', - products = { - presets.defenses.blue.shorad:extend({ name='kutaisi-airdef-blue'}), - presets.missions.attack.sead:extend({name='kutaisi-sead-blue', altitude=25000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.attack.cas:extend({name='kutaisi-cas-blue', altitude=15000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.bai:extend({name='kutaisi-cas-blue', altitude=10000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.strike:extend({name='kutaisi-strike-blue', altitude=20000, expend=AI.Task.WeaponExpend.TWO}), - presets.missions.patrol.aircraft:extend({name='kutaisi-patrol-blue', altitude=25000, range=25}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Kutaisi.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Prohladniy.lua ]]----------------- - -zones.prohladniy = ZoneCommand:new("Prohladniy") -zones.prohladniy.initialState = { side=1 } -zones.prohladniy:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='prohladniy-tent-red', - products = { - presets.special.red.infantry:extend({ name='prohladniy-defense-red'}), - presets.defenses.red.infantry:extend({ name='prohladniy-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='prohladniy-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='prohladniy-supply-red'}), - presets.missions.supply.transfer:extend({name='prohladniy-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='prohladniy-ammo-red', - products = { - presets.missions.attack.surface:extend({name='prohladniy-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='prohladniy-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='prohladniy-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='prohladniy-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='prohladniy-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='prohladniy-supply-blue'}), - presets.missions.supply.transfer:extend({name='prohladniy-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='prohladniy-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='prohladniy-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Prohladniy.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Tallyk.lua ]]----------------- - -zones.tallyk = ZoneCommand:new("Tallyk") -zones.tallyk.initialState = { side=1 } -zones.tallyk.keepActive = true -zones.tallyk:defineUpgrades({ - [1] = - { - presets.upgrades.basic.tent:extend({ - name='tallyk-tent-red', - products = { - presets.special.red.infantry:extend({ name='tallyk-defense-red'}), - presets.defenses.red.infantry:extend({ name='tallyk-garrison-red'}), - presets.missions.attack.surface:extend({name='tallyk-assault-red'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='tallyk-comcenter-red', - products = { - presets.defenses.red.sam:extend({ name='tallyk-sam-red'}) - } - }) - }, - [2] = - { - presets.upgrades.basic.tent:extend({ - name='tallyk-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='tallyk-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='tallyk-garrison-blue'}), - presets.missions.attack.surface:extend({name='tallyk-assault-blue'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='tallyk-comcenter-blue', - products = { - presets.defenses.blue.sam:extend({ name='tallyk-sam-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Tallyk.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Terek.lua ]]----------------- - -zones.terek = ZoneCommand:new("Terek") -zones.terek.initialState = { side=1 } -zones.terek:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='terek-tent-red', - products = { - presets.special.red.infantry:extend({ name='terek-defense-red'}), - presets.defenses.red.infantry:extend({ name='terek-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='terek-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='terek-supply-red'}), - presets.missions.supply.transfer:extend({name='terek-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='terek-ammo-red', - products = { - presets.missions.attack.surface:extend({name='terek-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='terek-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='terek-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='terek-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='terek-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='terek-supply-blue'}), - presets.missions.supply.transfer:extend({name='terek-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='terek-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='terek-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Terek.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Humara.lua ]]----------------- - -zones.humara = ZoneCommand:new("Humara") -zones.humara.initialState = { side=1 } -zones.humara:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='humara-tent-red', - products = { - presets.special.red.infantry:extend({ name='humara-defense-red'}), - presets.defenses.red.infantry:extend({ name='humara-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='humara-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='humara-supply-red'}), - presets.missions.supply.transfer:extend({name='humara-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='humara-ammo-red', - products = { - presets.missions.attack.surface:extend({name='humara-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='humara-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='humara-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='humara-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='humara-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='humara-supply-blue'}), - presets.missions.supply.transfer:extend({name='humara-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='humara-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='humara-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Humara.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Ochamchira.lua ]]----------------- - -zones.ochamchira = ZoneCommand:new("Ochamchira") -zones.ochamchira.initialState = { side=1 } -zones.ochamchira:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='ochamchira-tent-red', - products = { - presets.special.red.infantry:extend({ name='ochamchira-defense-red'}), - presets.defenses.red.infantry:extend({ name='ochamchira-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='ochamchira-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='ochamchira-supply-red'}), - presets.missions.supply.transfer:extend({name='ochamchira-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='ochamchira-ammo-red', - products = { - presets.missions.attack.surface:extend({name='ochamchira-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='ochamchira-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='ochamchira-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='ochamchira-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='ochamchira-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='ochamchira-supply-blue'}), - presets.missions.supply.transfer:extend({name='ochamchira-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='ochamchira-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='ochamchira-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Ochamchira.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/November.lua ]]----------------- - -zones.november = ZoneCommand:new("November") -zones.november.initialState = { side=1 } -zones.november.isHeloSpawn = true -zones.november:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='november-tent-red', - products = { - presets.special.red.infantry:extend({ name='november-defense-red'}), - presets.defenses.red.infantry:extend({ name='november-garrison-red'}) - } - }), - presets.upgrades.supply.fuelTankFarp:extend({ - name='november-fuel-red', - products = { - presets.missions.supply.helo:extend({name='november-supply-red'}), - presets.missions.supply.helo:extend({name='november-supply-red-1'}), - presets.missions.supply.transfer:extend({name='november-transfer-red'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='november-comcenter-red', - products = { - presets.defenses.red.shorad:extend({name='november-sam-red'}), - presets.missions.attack.helo:extend({name='november-cas-red', altitude=200, expend=AI.Task.WeaponExpend.HALF }) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='november-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='november-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='november-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelTankFarp:extend({ - name='november-fuel-blue', - products = { - presets.missions.supply.helo:extend({name='november-supply-blue'}), - presets.missions.supply.helo:extend({name='november-supply-blue-1'}), - presets.missions.supply.transfer:extend({name='november-transfer-blue'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='november-comcenter-blue', - products = { - presets.defenses.blue.shorad:extend({name='november-sam-blue'}), - presets.missions.attack.helo:extend({name='november-cas-blue', altitude=200, expend=AI.Task.WeaponExpend.HALF }) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/November.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/XRay.lua ]]----------------- - -zones.xray = ZoneCommand:new("XRay") -zones.xray.initialState = { side=1 } -zones.xray:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='xray-tent-red', - products = { - presets.special.red.infantry:extend({ name='xray-defense-red'}), - presets.defenses.red.infantry:extend({ name='xray-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='xray-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='xray-supply-red'}), - presets.missions.supply.helo:extend({name='xray-supply-red-2'}), - presets.missions.supply.transfer:extend({name='xray-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='xray-ammo-red', - products = { - presets.missions.attack.surface:extend({name='xray-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='xray-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='xray-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='xray-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='xray-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='xray-supply-blue'}), - presets.missions.supply.helo:extend({name='xray-supply-blue-2'}), - presets.missions.supply.transfer:extend({name='xray-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='xray-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='xray-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/XRay.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Whiskey.lua ]]----------------- - -zones.whiskey = ZoneCommand:new("Whiskey") -zones.whiskey.initialState = { side=1 } -zones.whiskey:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='whiskey-tent-red', - products = { - presets.special.red.infantry:extend({ name='whiskey-defense-red'}), - presets.defenses.red.infantry:extend({ name='whiskey-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='whiskey-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='whiskey-supply-red'}), - presets.missions.supply.transfer:extend({name='whiskey-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='whiskey-ammo-red', - products = { - presets.missions.attack.surface:extend({name='whiskey-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='whiskey-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='whiskey-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='whiskey-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='whiskey-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='whiskey-supply-blue'}), - presets.missions.supply.transfer:extend({name='whiskey-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='whiskey-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='whiskey-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Whiskey.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Mine.lua ]]----------------- - -zones.mine = ZoneCommand:new("Mine") -zones.mine.initialState = { side=1 } -zones.mine:defineUpgrades({ - [1] = - { - presets.upgrades.basic.tent:extend({ - name='mine-tent-red', - products = { - presets.special.red.infantry:extend({ name='mine-defense-red'}), - presets.defenses.red.infantry:extend({ name='mine-garrison-red'}) - } - }), - presets.upgrades.supply.excavator:extend({ - name='mine-excavator-red-1', - products = { - presets.missions.supply.convoy:extend({ name='mine-supply-red'}), - presets.missions.supply.transfer:extend({name='mine-transfer-red'}) - } - }), - presets.upgrades.supply.excavator:extend({ - name='mine-excavator-red-2', - products = { - presets.missions.supply.convoy:extend({ name='mine-supply-red'}), - presets.missions.supply.transfer:extend({name='mine-transfer-red'}) - } - }), - presets.upgrades.supply.excavator:extend({ - name='mine-excavator-red-3', - products = { - presets.missions.supply.convoy:extend({ name='mine-supply-red'}), - presets.missions.supply.transfer:extend({name='mine-transfer-red'}) - } - }) - }, - [2] = - { - presets.upgrades.basic.tent:extend({ - name='mine-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='mine-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='mine-garrison-blue'}) - } - }), - presets.upgrades.supply.excavator:extend({ - name='mine-excavator-blue-1', - products = { - presets.missions.supply.convoy:extend({ name='mine-supply-blue'}), - presets.missions.supply.transfer:extend({name='mine-transfer-blue'}) - } - }), - presets.upgrades.supply.excavator:extend({ - name='mine-excavator-blue-2', - products = { - presets.missions.supply.convoy:extend({ name='mine-supply-blue'}), - presets.missions.supply.transfer:extend({name='mine-transfer-blue'}) - } - }), - presets.upgrades.supply.excavator:extend({ - name='mine-excavator-blue-3', - products = { - presets.missions.supply.convoy:extend({ name='mine-supply-blue'}), - presets.missions.supply.transfer:extend({name='mine-transfer-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Mine.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Papa.lua ]]----------------- - -zones.papa = ZoneCommand:new("Papa") -zones.papa.initialState = { side=1 } -zones.papa.keepActive = true -zones.papa:defineUpgrades({ - [1] = - { - presets.upgrades.basic.tent:extend({ - name='papa-tent-red', - products = { - presets.special.red.infantry:extend({ name='papa-defense-red'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='papa-comcenter-red', - products = { - presets.defenses.red.sam:extend({ name='papa-sam-red'}) - } - }) - }, - [2] = - { - presets.upgrades.basic.tent:extend({ - name='papa-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='papa-defense-blue'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='papa-comcenter-blue', - products = { - presets.defenses.blue.sam:extend({ name='papa-sam-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Papa.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Sukhumi.lua ]]----------------- - -zones.sukhumi = ZoneCommand:new("Sukhumi") -zones.sukhumi.initialState = { side=1 } -zones.sukhumi.keepActive = true -zones.sukhumi.maxResource = 50000 -zones.sukhumi:defineUpgrades({ - [1] = - { - presets.upgrades.basic.comPost:extend({ - name='sukhumi-compost-red', - products = { - presets.special.red.infantry:extend({ name='sukhumi-defense-red'}), - presets.defenses.red.infantry:extend({ name='sukhumi-garrison-red'}) - } - }), - presets.upgrades.supply.fuelTank:extend({ - name='sukhumi-fuel-red', - products = { - presets.missions.supply.helo:extend({name='sukhumi-supply-red-1'}), - presets.missions.supply.helo:extend({name='sukhumi-supply-red-2'}), - presets.missions.supply.transfer:extend({name='sukhumi-transfer-red'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='sukhumi-comcenter-red', - products = { - presets.defenses.red.sa11:extend({ name='sukhumi-airdef-red'}), - presets.missions.attack.sead:extend({name='sukhumi-sead-red', altitude=25000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.attack.cas:extend({name='sukhumi-cas-red', altitude=15000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.bai:extend({name='sukhumi-cas-red', altitude=10000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.strike:extend({name='sukhumi-strike-red', altitude=20000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.patrol.aircraft:extend({name='sukhumi-patrol-red', altitude=25000, range=25}), - presets.missions.patrol.aircraft:extend({name='sukhumi-patrol-red-2', altitude=25000, range=25}) - } - }) - }, - [2] = - { - presets.upgrades.basic.comPost:extend({ - name='sukhumi-compost-blue', - products = { - presets.special.blue.infantry:extend({ name='sukhumi-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='sukhumi-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelTank:extend({ - name='sukhumi-fuel-blue', - products = { - presets.missions.supply.helo:extend({name='sukhumi-supply-blue-1'}), - presets.missions.supply.helo:extend({name='sukhumi-supply-blue-2'}), - presets.missions.supply.transfer:extend({name='sukhumi-transfer-blue'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='sukhumi-comcenter-blue', - products = { - presets.defenses.blue.nasams:extend({ name='sukhumi-airdef-blue'}), - presets.missions.attack.sead:extend({name='sukhumi-sead-blue', altitude=25000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.attack.cas:extend({name='sukhumi-cas-blue', altitude=15000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.bai:extend({name='sukhumi-cas-blue', altitude=10000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.strike:extend({name='sukhumi-strike-blue', altitude=20000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.patrol.aircraft:extend({name='sukhumi-patrol-blue', altitude=25000, range=25}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Sukhumi.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Farm.lua ]]----------------- - -zones.farm = ZoneCommand:new("Farm") -zones.farm.initialState = { side=1 } -zones.farm:defineUpgrades({ - [1] = - { - presets.upgrades.basic.tent:extend({ - name='farm-tent-red', - products = { - presets.special.red.infantry:extend({ name='farm-defense-red'}), - presets.defenses.red.infantry:extend({ name='farm-garrison-red'}) - } - }), - presets.upgrades.supply.farm1:extend({ - name='farm-prod-red-1', - products = { - presets.missions.supply.convoy:extend({ name='farm-supply-red'}), - presets.missions.supply.transfer:extend({name='farm-transfer-red'}) - } - }), - presets.upgrades.supply.farm2:extend({ - name='farm-prod-red-2', - products = { - presets.missions.supply.convoy:extend({ name='farm-supply-red'}), - presets.missions.supply.transfer:extend({name='farm-transfer-red'}) - } - }) - }, - [2] = - { - presets.upgrades.basic.tent:extend({ - name='farm-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='farm-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='farm-garrison-blue'}) - } - }), - presets.upgrades.supply.farm1:extend({ - name='farm-prod-blue-1', - products = { - presets.missions.supply.convoy:extend({ name='farm-supply-blue'}), - presets.missions.supply.transfer:extend({name='farm-transfer-blue'}) - } - }), - presets.upgrades.supply.farm2:extend({ - name='farm-prod-blue-2', - products = { - presets.missions.supply.convoy:extend({ name='farm-supply-blue'}), - presets.missions.supply.transfer:extend({name='farm-transfer-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Farm.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Romeo.lua ]]----------------- - -zones.romeo = ZoneCommand:new("Romeo") -zones.romeo.initialState = { side=1 } -zones.romeo:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='romeo-tent-red', - products = { - presets.special.red.infantry:extend({ name='romeo-defense-red'}), - presets.defenses.red.infantry:extend({ name='romeo-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='romeo-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='romeo-supply-red'}), - presets.missions.supply.transfer:extend({name='romeo-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='romeo-ammo-red', - products = { - presets.missions.attack.surface:extend({name='romeo-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='romeo-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='romeo-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='romeo-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='romeo-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='romeo-supply-blue'}), - presets.missions.supply.transfer:extend({name='romeo-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='romeo-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='romeo-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Romeo.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Zulu.lua ]]----------------- - -zones.zulu = ZoneCommand:new("Zulu") -zones.zulu.initialState = { side=1 } -zones.zulu:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='zulu-tent-red', - products = { - presets.special.red.infantry:extend({ name='zulu-defense-red'}), - presets.defenses.red.infantry:extend({ name='zulu-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='zulu-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='zulu-supply-red'}), - presets.missions.supply.transfer:extend({name='zulu-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='zulu-ammo-red', - products = { - presets.missions.attack.surface:extend({name='zulu-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='zulu-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='zulu-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='zulu-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='zulu-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='zulu-supply-blue'}), - presets.missions.supply.transfer:extend({name='zulu-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='zulu-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='zulu-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Zulu.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Yankee.lua ]]----------------- - -zones.yankee = ZoneCommand:new("Yankee") -zones.yankee.initialState = { side=1 } -zones.yankee:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='yankee-tent-red', - products = { - presets.special.red.infantry:extend({ name='yankee-defense-red'}), - presets.defenses.red.infantry:extend({ name='yankee-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='yankee-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='yankee-supply-red'}), - presets.missions.supply.transfer:extend({name='yankee-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='yankee-ammo-red', - products = { - presets.missions.attack.surface:extend({name='yankee-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='yankee-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='yankee-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='yankee-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='yankee-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='yankee-supply-blue'}), - presets.missions.supply.transfer:extend({name='yankee-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='yankee-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='yankee-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Yankee.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Malgobek.lua ]]----------------- - -zones.malgobek = ZoneCommand:new("Malgobek") -zones.malgobek.initialState = { side=1 } -zones.malgobek:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='malgobek-tent-red', - products = { - presets.special.red.infantry:extend({ name='malgobek-defense-red'}), - presets.defenses.red.infantry:extend({ name='malgobek-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='malgobek-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='malgobek-supply-red'}), - presets.missions.supply.transfer:extend({name='malgobek-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='malgobek-ammo-red', - products = { - presets.missions.attack.surface:extend({name='malgobek-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='malgobek-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='malgobek-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='malgobek-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='malgobek-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='malgobek-supply-blue'}), - presets.missions.supply.transfer:extend({name='malgobek-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='malgobek-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='malgobek-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Malgobek.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Kilo.lua ]]----------------- - -zones.kilo = ZoneCommand:new("Kilo") -zones.kilo.initialState = { side=1 } -zones.kilo:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='kilo-tent-red', - products = { - presets.special.red.infantry:extend({ name='kilo-defense-red'}), - presets.defenses.red.infantry:extend({ name='kilo-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='kilo-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='kilo-supply-red'}), - presets.missions.supply.transfer:extend({name='kilo-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='kilo-ammo-red', - products = { - presets.missions.attack.surface:extend({name='kilo-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='kilo-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='kilo-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='kilo-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='kilo-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='kilo-supply-blue'}), - presets.missions.supply.transfer:extend({name='kilo-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='kilo-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='kilo-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Kilo.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Quebec.lua ]]----------------- - -zones.quebec = ZoneCommand:new("Quebec") -zones.quebec.initialState = { side=1 } -zones.quebec.keepActive = true -zones.quebec:defineUpgrades({ - [1] = - { - presets.upgrades.basic.tent:extend({ - name='quebec-tent-red', - products = { - presets.special.red.infantry:extend({ name='quebec-defense-red'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='quebec-comcenter-red', - products = { - presets.defenses.red.sam:extend({ name='quebec-sam-red'}) - } - }) - }, - [2] = - { - presets.upgrades.basic.tent:extend({ - name='quebec-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='quebec-defense-blue'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='quebec-comcenter-blue', - products = { - presets.defenses.blue.sam:extend({ name='quebec-sam-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Quebec.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/OilFields.lua ]]----------------- - -zones.oilfields = ZoneCommand:new("Oil Fields") -zones.oilfields.initialState = { side=1 } -zones.oilfields:defineUpgrades({ - [1] = { - presets.upgrades.basic.outpost:extend({ - name='oilfields-outpost-red', - products = { - presets.special.red.infantry:extend({ name='oilfields-defense-red'}), - presets.defenses.red.infantry:extend({ name='oilfields-garrison-red'}) - } - }), - presets.upgrades.supply.oilPump:extend({ - name='oilfields-pump-red-1', - products = { - presets.missions.supply.transfer:extend({name='oilfields-transfer-red1'}) - } - }), - presets.upgrades.supply.oilPump:extend({ - name='oilfields-pump-red-2', - products = { - presets.missions.supply.convoy:extend({name='oilfields-supply-red-1'}) - } - }), - presets.upgrades.supply.oilPump:extend({ - name='oilfields-pump-red-3', - products = { - presets.missions.supply.transfer:extend({name='oilfields-transfer-red2'}) - } - }), - presets.upgrades.supply.oilPump:extend({ - name='oilfields-pump-red-4', - products = { - presets.missions.supply.convoy:extend({name='oilfields-supply-red-2'}) - } - }) - }, - [2] = { - presets.upgrades.basic.outpost:extend({ - name='oilfields-outpost-blue', - products = { - presets.special.blue.infantry:extend({ name='oilfields-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='oilfields-garrison-blue'}) - } - }), - presets.upgrades.supply.oilPump:extend({ - name='oilfields-pump-blue-1', - products = { - presets.missions.supply.transfer:extend({name='oilfields-transfer-blue1'}) - } - }), - presets.upgrades.supply.oilPump:extend({ - name='oilfields-pump-blue-2', - products = { - presets.missions.supply.convoy:extend({name='oilfields-supply-blue-1'}) - } - }), - presets.upgrades.supply.oilPump:extend({ - name='oilfields-pump-blue-3', - products = { - presets.missions.supply.transfer:extend({name='oilfields-transfer-blue2'}) - } - }), - presets.upgrades.supply.oilPump:extend({ - name='oilfields-pump-blue-4', - products = { - presets.missions.supply.convoy:extend({name='oilfields-supply-blue-2'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/OilFields.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Echo.lua ]]----------------- - -zones.echo = ZoneCommand:new("Echo") -zones.echo.initialState = { side=2 } -zones.echo:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='echo-tent-red', - products = { - presets.special.red.infantry:extend({ name='echo-defense-red'}), - presets.defenses.red.infantry:extend({ name='echo-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='echo-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='echo-supply-red'}), - presets.missions.supply.transfer:extend({name='echo-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='echo-ammo-red', - products = { - presets.missions.attack.surface:extend({name='echo-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='echo-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='echo-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='echo-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='echo-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='echo-supply-blue'}), - presets.missions.supply.transfer:extend({name='echo-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='echo-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='echo-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Echo.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Kobuleti.lua ]]----------------- - -zones.kobuleti = ZoneCommand:new("Kobuleti") -zones.kobuleti.initialState = { side=2 } -zones.kobuleti.keepActive = true -zones.kobuleti.isHeloSpawn = true -zones.kobuleti.isPlaneSpawn = true -zones.kobuleti.maxResource = 50000 -zones.kobuleti:defineUpgrades({ - [1] = - { - presets.upgrades.basic.comPost:extend({ - name='kobuleti-compost-red', - products = { - presets.special.red.infantry:extend({ name='kobuleti-defense-red'}), - presets.defenses.red.infantry:extend({ name='kobuleti-garrison-red'}), - presets.missions.attack.surface:extend({ name='kobuleti-assault-red'}) - } - }), - presets.upgrades.supply.fuelTank:extend({ - name='kobuleti-fuel-red', - products = { - presets.missions.supply.helo:extend({name='kobuleti-supply-red-1'}), - presets.missions.supply.helo:extend({name='kobuleti-supply-red-2'}), - presets.missions.supply.transfer:extend({name='kobuleti-transfer-red'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='kobuleti-comcenter-red', - products = { - presets.defenses.red.shorad:extend({ name='kobuleti-airdef-red'}), - presets.missions.attack.sead:extend({name='kobuleti-sead-red', altitude=25000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.attack.cas:extend({name='kobuleti-cas-red', altitude=15000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.bai:extend({name='kobuleti-cas-red', altitude=10000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.strike:extend({name='kobuleti-strike-red', altitude=20000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.patrol.aircraft:extend({name='kobuleti-patrol-red', altitude=25000, range=25}) - } - }) - }, - [2] = - { - presets.upgrades.basic.comPost:extend({ - name='kobuleti-compost-blue', - products = { - presets.special.blue.infantry:extend({ name='kobuleti-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='kobuleti-garrison-blue'}), - presets.missions.attack.surface:extend({ name='kobuleti-assault-blue'}) - } - }), - presets.upgrades.supply.fuelTank:extend({ - name='kobuleti-fuel-blue', - products = { - presets.missions.supply.helo:extend({name='kobuleti-supply-blue-1'}), - presets.missions.supply.helo:extend({name='kobuleti-supply-blue-2'}), - presets.missions.supply.transfer:extend({name='kobuleti-transfer-blue'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='kobuleti-comcenter-blue', - products = { - presets.defenses.blue.shorad:extend({ name='kobuleti-airdef-blue'}), - presets.missions.attack.sead:extend({name='kobuleti-sead-blue', altitude=25000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.attack.cas:extend({name='kobuleti-cas-blue', altitude=15000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.bai:extend({name='kobuleti-cas-blue', altitude=10000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.strike:extend({name='kobuleti-strike-blue', altitude=20000, expend=AI.Task.WeaponExpend.TWO}), - presets.missions.patrol.aircraft:extend({name='kobuleti-patrol-blue', altitude=25000, range=25}), - presets.missions.support.awacs:extend({name='kobuleti-awacs-blue', altitude=30000, freq=258.5}), - presets.missions.support.tanker:extend({name='kobuleti-tanker-blue', altitude=23000, freq=258, tacan='38', variant='Boom'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Kobuleti.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Alpha.lua ]]----------------- - -zones.alpha = ZoneCommand:new('Alpha') -zones.alpha.initialState = { side=2 } -zones.alpha:defineUpgrades({ - [1] = --red side - { - presets.upgrades.basic.tent:extend({ - name = 'alpha-tent-red', - products = { - presets.special.red.infantry:extend({ name='alpha-defense-red'}), - presets.defenses.red.infantry:extend({ name='alpha-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name = 'alpha-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({ name='alpha-supply-red'}), - presets.missions.supply.transfer:extend({name='alpha-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name = 'alpha-ammo-red', - products = { - presets.missions.attack.surface:extend({ name='alpha-assault-red'}) - } - }) - }, - [2] = --blue side - { - presets.upgrades.basic.tent:extend({ - name = 'alpha-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='alpha-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='alpha-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name = 'alpha-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({ name='alpha-supply-blue'}), - presets.missions.supply.transfer:extend({name='alpha-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name = 'alpha-ammo-blue', - products = { - presets.missions.attack.surface:extend({ name='alpha-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Alpha.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Foxtrot.lua ]]----------------- - -zones.foxtrot = ZoneCommand:new("Foxtrot") -zones.foxtrot.initialState = { side=2 } -zones.foxtrot:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='foxtrot-tent-red', - products = { - presets.special.red.infantry:extend({ name='foxtrot-defense-red'}), - presets.defenses.red.infantry:extend({ name='foxtrot-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='foxtrot-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='foxtrot-supply-red'}), - presets.missions.supply.transfer:extend({name='foxtrot-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='foxtrot-ammo-red', - products = { - presets.missions.attack.surface:extend({name='foxtrot-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='foxtrot-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='foxtrot-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='foxtrot-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='foxtrot-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='foxtrot-supply-blue'}), - presets.missions.supply.transfer:extend({name='foxtrot-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='foxtrot-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='foxtrot-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Foxtrot.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Sierra.lua ]]----------------- - -zones.sierra = ZoneCommand:new("Sierra") -zones.sierra.initialState = { side=1 } -zones.sierra.isHeloSpawn = true -zones.sierra:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='sierra-tent-red', - products = { - presets.special.red.infantry:extend({ name='sierra-defense-red'}), - presets.defenses.red.infantry:extend({ name='sierra-garrison-red'}) - } - }), - presets.upgrades.supply.fuelTankFarp:extend({ - name='sierra-fuel-red', - products = { - presets.missions.supply.helo:extend({name='sierra-supply-red'}), - presets.missions.supply.helo:extend({name='sierra-supply-red-1'}), - presets.missions.supply.transfer:extend({name='sierra-transfer-red'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='sierra-comcenter-red', - products = { - presets.defenses.red.shorad:extend({name='sierra-sam-red'}), - presets.missions.attack.helo:extend({name='sierra-cas-red', altitude=200, expend=AI.Task.WeaponExpend.HALF }) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='sierra-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='sierra-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='sierra-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelTankFarp:extend({ - name='sierra-fuel-blue', - products = { - presets.missions.supply.helo:extend({name='sierra-supply-blue'}), - presets.missions.supply.helo:extend({name='sierra-supply-blue-1'}), - presets.missions.supply.transfer:extend({name='sierra-transfer-blue'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='sierra-comcenter-blue', - products = { - presets.defenses.blue.shorad:extend({name='sierra-sam-blue'}), - presets.missions.attack.helo:extend({name='sierra-cas-blue', altitude=200, expend=AI.Task.WeaponExpend.HALF }) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Sierra.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Oni.lua ]]----------------- - -zones.oni = ZoneCommand:new("Oni") -zones.oni.initialState = { side=1 } -zones.oni:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='oni-tent-red', - products = { - presets.special.red.infantry:extend({ name='oni-defense-red'}), - presets.defenses.red.infantry:extend({ name='oni-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='oni-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='oni-supply-red'}), - presets.missions.supply.helo:extend({name='oni-supply-red-2'}), - presets.missions.supply.transfer:extend({name='oni-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='oni-ammo-red', - products = { - presets.missions.attack.surface:extend({name='oni-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='oni-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='oni-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='oni-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='oni-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='oni-supply-blue'}), - presets.missions.supply.helo:extend({name='oni-supply-blue-2'}), - presets.missions.supply.transfer:extend({name='oni-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='oni-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='oni-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Oni.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Hotel.lua ]]----------------- - -zones.hotel = ZoneCommand:new("Hotel") -zones.hotel.initialState = nil -zones.hotel:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='hotel-tent-red', - products = { - presets.special.red.infantry:extend({ name='hotel-defense-red'}), - presets.defenses.red.infantry:extend({ name='hotel-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='hotel-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='hotel-supply-red'}), - presets.missions.supply.transfer:extend({name='hotel-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='hotel-ammo-red', - products = { - presets.missions.attack.surface:extend({name='hotel-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='hotel-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='hotel-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='hotel-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='hotel-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='hotel-supply-blue'}), - presets.missions.supply.transfer:extend({name='hotel-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='hotel-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='hotel-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Hotel.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Victor.lua ]]----------------- - -zones.victor = ZoneCommand:new("Victor") -zones.victor.initialState = { side=1 } -zones.victor:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='victor-tent-red', - products = { - presets.special.red.infantry:extend({ name='victor-defense-red'}), - presets.defenses.red.infantry:extend({ name='victor-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='victor-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='victor-supply-red'}), - presets.missions.supply.helo:extend({name='victor-supply-red-2'}), - presets.missions.supply.transfer:extend({name='victor-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='victor-ammo-red', - products = { - presets.missions.attack.surface:extend({name='victor-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='victor-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='victor-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='victor-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='victor-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='victor-supply-blue'}), - presets.missions.supply.helo:extend({name='victor-supply-blue-2'}), - presets.missions.supply.transfer:extend({name='victor-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='victor-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='victor-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Victor.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Tango.lua ]]----------------- - -zones.tango = ZoneCommand:new("Tango") -zones.tango.initialState = { side=1 } -zones.tango.isHeloSpawn = true -zones.tango:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='tango-tent-red', - products = { - presets.special.red.infantry:extend({ name='tango-defense-red'}), - presets.defenses.red.infantry:extend({ name='tango-garrison-red'}) - } - }), - presets.upgrades.supply.fuelTankFarp:extend({ - name='tango-fuel-red', - products = { - presets.missions.supply.helo:extend({name='tango-supply-red'}), - presets.missions.supply.helo:extend({name='tango-supply-red-1'}), - presets.missions.supply.transfer:extend({name='tango-transfer-red'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='tango-comcenter-red', - products = { - presets.defenses.red.shorad:extend({name='tango-sam-red'}), - presets.missions.attack.helo:extend({name='tango-cas-red', altitude=200, expend=AI.Task.WeaponExpend.HALF }) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='tango-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='tango-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='tango-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelTankFarp:extend({ - name='tango-fuel-blue', - products = { - presets.missions.supply.helo:extend({name='tango-supply-blue'}), - presets.missions.supply.helo:extend({name='tango-supply-blue-1'}), - presets.missions.supply.transfer:extend({name='tango-transfer-blue'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='tango-comcenter-blue', - products = { - presets.defenses.blue.shorad:extend({name='tango-sam-blue'}), - presets.missions.attack.helo:extend({name='tango-cas-blue', altitude=200, expend=AI.Task.WeaponExpend.HALF }) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Tango.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Unal.lua ]]----------------- - -zones.unal = ZoneCommand:new("Unal") -zones.unal.initialState = { side=1 } -zones.unal.isHeloSpawn = true -zones.unal:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='unal-tent-red', - products = { - presets.special.red.infantry:extend({ name='unal-defense-red'}), - presets.defenses.red.infantry:extend({ name='unal-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='unal-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='unal-supply-red'}), - presets.missions.supply.helo:extend({name='unal-supply-red-2'}), - presets.missions.supply.transfer:extend({name='unal-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='unal-ammo-red', - products = { - presets.missions.attack.surface:extend({name='unal-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='unal-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='unal-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='unal-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='unal-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='unal-supply-blue'}), - presets.missions.supply.helo:extend({name='unal-supply-blue-2'}), - presets.missions.supply.transfer:extend({name='unal-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='unal-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='unal-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Unal.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Beslan.lua ]]----------------- - -zones.beslan = ZoneCommand:new("Beslan") -zones.beslan.initialState = { side=1 } -zones.beslan.keepActive = true -zones.beslan.maxResource = 50000 -zones.beslan:defineUpgrades({ - [1] = - { - presets.upgrades.basic.comPost:extend({ - name='beslan-compost-red', - products = { - presets.special.red.infantry:extend({ name='beslan-defense-red'}), - presets.defenses.red.infantry:extend({ name='beslan-garrison-red'}) - } - }), - presets.upgrades.supply.fuelTank:extend({ - name='beslan-fuel-red', - products = { - presets.missions.supply.helo:extend({name='beslan-supply-red-1'}), - presets.missions.supply.helo:extend({name='beslan-supply-red-2'}), - presets.missions.supply.convoy_escorted:extend({name='beslan-supply-red-3'}), - presets.missions.supply.transfer:extend({name='beslan-transfer-red'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='beslan-comcenter-red', - products = { - presets.defenses.red.sa5:extend({ name='beslan-airdef-red'}), - presets.missions.attack.sead:extend({name='beslan-sead-red', altitude=25000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.attack.strike:extend({name='beslan-strike-red', altitude=30000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.attack.strike:extend({name='beslan-strike-red-1', altitude=30000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.patrol.aircraft:extend({name='beslan-patrol-red', altitude=25000, range=25}) - } - }) - }, - [2] = - { - presets.upgrades.basic.comPost:extend({ - name='beslan-compost-blue', - products = { - presets.special.blue.infantry:extend({ name='beslan-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='beslan-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelTank:extend({ - name='beslan-fuel-blue', - products = { - presets.missions.supply.helo:extend({name='beslan-supply-blue-1'}), - presets.missions.supply.helo:extend({name='beslan-supply-blue-2'}), - presets.missions.supply.convoy_escorted:extend({name='beslan-supply-blue-3'}), - presets.missions.supply.transfer:extend({name='beslan-transfer-blue'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='beslan-comcenter-blue', - products = { - presets.defenses.blue.patriot:extend({ name='beslan-airdef-blue'}), - presets.missions.attack.sead:extend({name='beslan-sead-blue', altitude=25000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.attack.strike:extend({name='beslan-strike-blue', altitude=30000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.attack.strike:extend({name='beslan-strike-blue-1', altitude=30000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.patrol.aircraft:extend({name='beslan-patrol-blue', altitude=25000, range=25}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Beslan.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Bravo.lua ]]----------------- - -zones.bravo = ZoneCommand:new("Bravo") -zones.bravo.initialState = { side=2 } -zones.bravo:defineUpgrades({ - [1] = - { - presets.upgrades.basic.comPost:extend({ - name='bravo-compost-red', - products = { - presets.special.red.infantry:extend({ name='bravo-defense-red'}), - presets.defenses.red.infantry:extend({ name='bravo-garrison-red'}) - } - }), - presets.upgrades.supply.fuelTankFarp:extend({ - name='bravo-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({ name='bravo-supply-red'}), - presets.missions.supply.transfer:extend({name='bravo-transfer-red'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='bravo-comcenter-red', - products = { - presets.defenses.red.shorad:extend({ name='bravo-airdef-red'}), - presets.missions.attack.helo:extend({name='bravo-attack-red', altitude=200, expend=AI.Task.WeaponExpend.HALF}) - } - }) - }, - [2] = - { - presets.upgrades.basic.comPost:extend({ - name='bravo-compost-blue', - products = { - presets.special.blue.infantry:extend({ name='bravo-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='bravo-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelTankFarp:extend({ - name='bravo-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({ name='bravo-supply-blue'}), - presets.missions.supply.transfer:extend({name='bravo-transfer-blue'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='bravo-comcenter-blue', - products = { - presets.defenses.blue.shorad:extend({ name='bravo-airdef-blue'}), - presets.missions.attack.helo:extend({name='bravo-attack-blue', altitude=200, expend=AI.Task.WeaponExpend.HALF }) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Bravo.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/WeaponDepot.lua ]]----------------- - -zones.weapondepot = ZoneCommand:new("Weapon Depot") -zones.weapondepot.initialState = { side=1 } -zones.weapondepot:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='weapons-tent-red', - products = { - presets.special.red.infantry:extend({ name='weapons-defense-red'}), - presets.defenses.red.infantry:extend({ name='weapons-garrison-red'}) - } - }), - presets.upgrades.supply.ammoDepot:extend({ - name='weapons-ammo-red-1', - products = { - presets.missions.supply.convoy:extend({name='weapons-supply-red-1'}), - presets.missions.supply.transfer:extend({name='weapons-transfer-red-1'}) - } - }), - presets.upgrades.supply.ammoDepot:extend({ - name='weapons-ammo-red-2', - products = { - presets.missions.supply.convoy:extend({name='weapons-supply-red-2'}), - presets.missions.supply.transfer:extend({name='weapons-transfer-red-2'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='weapons-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='weapons-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='weapons-garrison-blue'}) - } - }), - presets.upgrades.supply.ammoDepot:extend({ - name='weapons-ammo-blue-1', - products = { - presets.missions.supply.convoy:extend({name='weapons-supply-blue-1'}), - presets.missions.supply.transfer:extend({name='weapons-transfer-blue-1'}) - } - }), - presets.upgrades.supply.ammoDepot:extend({ - name='weapons-ammo-blue-2', - products = { - presets.missions.supply.convoy:extend({name='weapons-supply-blue-2'}), - presets.missions.supply.transfer:extend({name='weapons-transfer-blue-2'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/WeaponDepot.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Delta.lua ]]----------------- - -zones.delta = ZoneCommand:new("Delta") -zones.delta.initialState = { side=2 } -zones.delta:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='delta-tent-red', - products = { - presets.special.red.infantry:extend({ name='delta-defense-red'}), - presets.defenses.red.infantry:extend({ name='delta-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='delta-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='delta-supply-red'}), - presets.missions.supply.transfer:extend({name='delta-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='delta-ammo-red', - products = { - presets.missions.attack.surface:extend({name='delta-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='delta-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='delta-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='delta-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='delta-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='delta-supply-blue'}), - presets.missions.supply.transfer:extend({name='delta-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='delta-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='delta-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Delta.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Cherkessk.lua ]]----------------- - -zones.cherkessk = ZoneCommand:new("Cherkessk") -zones.cherkessk.initialState = { side=1 } -zones.cherkessk.isHeloSpawn = true -zones.cherkessk:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='cherkessk-tent-red', - products = { - presets.special.red.infantry:extend({ name='cherkessk-defense-red'}), - presets.defenses.red.infantry:extend({ name='cherkessk-garrison-red'}) - } - }), - presets.upgrades.supply.fuelTankFarp:extend({ - name='cherkessk-fuel-red', - products = { - presets.missions.supply.helo:extend({name='cherkessk-supply-red'}), - presets.missions.supply.helo:extend({name='cherkessk-supply-red-1'}), - presets.missions.supply.transfer:extend({name='cherkessk-transfer-red'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='cherkessk-comcenter-red', - products = { - presets.defenses.red.shorad:extend({name='cherkessk-sam-red'}), - presets.missions.attack.helo:extend({name='cherkessk-cas-red', altitude=200, expend=AI.Task.WeaponExpend.HALF }), - presets.missions.attack.helo:extend({name='cherkessk-cas-red-1', altitude=200, expend=AI.Task.WeaponExpend.HALF }), - presets.missions.attack.surface:extend({name='cherkessk-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='cherkessk-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='cherkessk-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='cherkessk-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelTankFarp:extend({ - name='cherkessk-fuel-blue', - products = { - presets.missions.supply.helo:extend({name='cherkessk-supply-blue'}), - presets.missions.supply.helo:extend({name='cherkessk-supply-blue-1'}), - presets.missions.supply.transfer:extend({name='cherkessk-transfer-blue'}), - presets.missions.attack.surface:extend({name='cherkessk-assault-blue'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='cherkessk-comcenter-blue', - products = { - presets.defenses.blue.shorad:extend({name='cherkessk-sam-blue'}), - presets.missions.attack.helo:extend({name='cherkessk-cas-blue', altitude=200, expend=AI.Task.WeaponExpend.HALF }), - presets.missions.attack.helo:extend({name='cherkessk-cas-blue-1', altitude=200, expend=AI.Task.WeaponExpend.HALF }) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Cherkessk.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Juliett.lua ]]----------------- - -zones.juliett = ZoneCommand:new("Juliett") -zones.initialState = nil -zones.juliett:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='juliett-tent-red', - products = { - presets.special.red.infantry:extend({ name='juliett-defense-red'}), - presets.defenses.red.infantry:extend({ name='juliett-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='juliett-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='juliett-supply-red'}), - presets.missions.supply.transfer:extend({name='juliett-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='juliett-ammo-red', - products = { - presets.missions.attack.surface:extend({name='juliett-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='juliett-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='juliett-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='juliett-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='juliett-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='juliett-supply-blue'}), - presets.missions.supply.transfer:extend({name='juliett-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='juliett-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='juliett-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Juliett.lua ]]----------------- - - - - cm = ConnectionManager:new() - cm:addConnection('Batumi', 'Alpha') - cm:addConnection('Alpha', 'Bravo') - cm:addConnection('Bravo', 'Kobuleti') - cm:addConnection('Bravo', 'Factory') - cm:addConnection('Kobuleti', 'Factory') - cm:addConnection('Kobuleti', 'Charlie') - cm:addConnection('Foxtrot', 'Charlie') - cm:addConnection('Foxtrot', 'Kobuleti') - cm:addConnection('Delta','Foxtrot') - cm:addConnection('Delta','Kobuleti') - cm:addConnection('Delta','Factory') - cm:addConnection('Echo','Charlie') - cm:addConnection('Golf','Echo') - cm:addConnection('Golf','Foxtrot') - cm:addConnection('India','Delta') - cm:addConnection('Hotel','Golf') - cm:addConnection('Hotel','Foxtrot') - cm:addConnection('Hotel','Delta') - cm:addConnection('Hotel','India') - cm:addConnection('Juliett','Echo') - cm:addConnection('Juliett','Golf') - cm:addConnection('Senaki','Juliett') - cm:addConnection('Senaki','Golf') - cm:addConnection('Senaki','Hotel') - cm:addConnection('Kutaisi','Hotel') - cm:addConnection('Kutaisi','India') - cm:addConnection('Kilo','Juliett') - cm:addConnection('Mike','Kutaisi') - cm:addConnection('Mike','Senaki') - cm:addConnection('Romeo','Mike') - cm:addConnection('Romeo','Kutaisi') - cm:addConnection('Weapon Depot','Juliett') - cm:addConnection('Weapon Depot','Senaki') - cm:addConnection('Weapon Depot','Kilo') - cm:addConnection('November','Weapon Depot') - cm:addConnection('November','Senaki') - cm:addConnection('November','Mike') - cm:addConnection('Oil Fields','Romeo') - cm:addConnection('Quebec','Kilo') - cm:addConnection('Zugdidi','Weapon Depot') - cm:addConnection('Zugdidi','Quebec') - cm:addConnection('Zugdidi','November') - cm:addConnection('Zugdidi','Kilo') - cm:addConnection('Distillery','November') - cm:addConnection('Distillery','Mike') - cm:addConnection('Zugdidi','Papa') - cm:addConnection('November','Papa') - cm:addConnection('Sierra','Papa') - cm:addConnection('Sierra','Zugdidi') - cm:addConnection('Sierra','Uniform') - cm:addConnection('Mine','Uniform') - cm:addConnection('Tango','Quebec') - cm:addConnection('Tango','Zugdidi') - cm:addConnection('Sierra','Tango') - cm:addConnection('Whiskey','Tango') - cm:addConnection('Ochamchira','Tango') - cm:addConnection('Ochamchira','Whiskey') - cm:addConnection('Ochamchira','Farm') - cm:addConnection('Ochamchira','Zulu') - cm:addConnection('Farm','Zulu') - cm:addConnection('Sukhumi','Zulu') - cm:addConnection('Lentehi','Distillery', true, 3000) - cm:addConnection('Lentehi','Babugent', true, 5000) - cm:addConnection('Nalchik','Babugent') - cm:addConnection('Victor','Distillery', true, 2000) - cm:addConnection('Victor','Romeo') - cm:addConnection('Victor','Lentehi') - cm:addConnection('Victor','Oil Fields', true, 2000) - cm:addConnection('Victor','Oni') - cm:addConnection('Unal','Oni', true, 4500) - cm:addConnection('Beslan','Unal') - cm:addConnection('Digora','Beslan') - cm:addConnection('Digora','Unal') - cm:addConnection('Digora','Babugent') - cm:addConnection('Terek','Digora') - cm:addConnection('Terek','Nalchik') - cm:addConnection('Terek','Beslan') - cm:addConnection('Prohladniy','Terek') - cm:addConnection('Prohladniy','Nalchik') - cm:addConnection('Malgobek','Terek') - cm:addConnection('Malgobek','Beslan') - cm:addConnection('Lima','Mine') - cm:addConnection('Lima','Lentehi', true, 4000) - cm:addConnection('Tyrnyauz','Lima', true, 4000) - cm:addConnection('Tyrnyauz','Nalchik') - cm:addConnection('XRay','Sukhumi') - cm:addConnection('Oscar','Sukhumi') - cm:addConnection('Oscar','XRay') - cm:addConnection('Mozdok','Malgobek') - cm:addConnection('Mozdok','Prohladniy') - cm:addConnection('Gudauta','Oscar') - cm:addConnection('Yankee','Gudauta') - cm:addConnection('Sochi','Yankee') - cm:addConnection('Refinery','XRay', true, 4000) - cm:addConnection('Refinery','Humara') - cm:addConnection('Intel Center','Tyrnyauz') - cm:addConnection('Intel Center','Nalchik') - cm:addConnection('Intel Center','Prohladniy') - cm:addConnection('Intel Center','Kislovodsk') - cm:addConnection('Mineralnye','Intel Center') - cm:addConnection('Kislovodsk','Mineralnye') - cm:addConnection('Tallyk','Mineralnye') - cm:addConnection('Tallyk','Kislovodsk') - cm:addConnection('Power Plant','Mineralnye') - cm:addConnection('Power Plant','Tallyk') - cm:addConnection('Cherkessk','Tallyk') - cm:addConnection('Cherkessk','Power Plant') - cm:addConnection('Cherkessk','Humara') -end - ZoneCommand.setNeighbours(cm) bm = BattlefieldManager:new() @@ -4527,144 +104,3 @@ local offmapZones = { -- zones.gudauta, -- zones.kobuleti, } - -supplyPointRegistry = { - blue = {}, - red = {} -} - -for i,v in ipairs(blueSupply) do - local g = Group.getByName(v) - if g then - supplyPointRegistry.blue[v] = g:getUnit(1):getPoint() - end -end - -for i,v in ipairs(redSupply) do - local g = Group.getByName(v) - if g then - supplyPointRegistry.red[v] = g:getUnit(1):getPoint() - end -end - -offmapSupplyRegistry = {} -timer.scheduleFunction(function(param, time) - local availableBlue = {} - for i,v in ipairs(param.blue) do - if offmapSupplyRegistry[v] == nil then - table.insert(availableBlue, v) - end - end - - local availableRed = {} - for i,v in ipairs(param.red) do - if offmapSupplyRegistry[v] == nil then - table.insert(availableRed, v) - end - end - - local redtargets = {} - local bluetargets = {} - for _, zn in ipairs(param.offmapZones) do - if zn:needsSupplies(3000) then - local isOnRoute = false - for _,data in pairs(offmapSupplyRegistry) do - if data.zone.name == zn.name then - isOnRoute = true - break - end - end - if not isOnRoute then - if zn.side == 1 then - table.insert(redtargets, zn) - elseif zn.side == 2 then - table.insert(bluetargets, zn) - end - end - end - end - - if #availableRed > 0 and #redtargets > 0 then - local zn = redtargets[math.random(1,#redtargets)] - - local red = nil - local minD = 999999999 - for i,v in ipairs(availableRed) do - local d = mist.utils.get2DDist(zn.zone.point, supplyPointRegistry.red[v]) - if d < minD then - red = v - minD = d - end - end - - if not red then red = availableRed[math.random(1,#availableRed)] end - - local gr = red - red = nil - mist.respawnGroup(gr, true) - offmapSupplyRegistry[gr] = {zone = zn, assigned = timer.getAbsTime()} - env.info(gr..' was deployed') - timer.scheduleFunction(function(param,time) - local g = Group.getByName(param.group) - TaskExtensions.landAtAirfield(g, param.target.zone.point) - env.info(param.group..' going to '..param.target.name) - end, {group=gr, target=zn}, timer.getTime()+2) - end - - if #availableBlue > 0 and #bluetargets>0 then - local zn = bluetargets[math.random(1,#bluetargets)] - - local blue = nil - local minD = 999999999 - for i,v in ipairs(availableBlue) do - local d = mist.utils.get2DDist(zn.zone.point, supplyPointRegistry.blue[v]) - if d < minD then - blue = v - minD = d - end - end - - if not blue then blue = availableBlue[math.random(1,#availableBlue)] end - - local gr = blue - blue = nil - mist.respawnGroup(gr, true) - offmapSupplyRegistry[gr] = {zone = zn, assigned = timer.getAbsTime()} - env.info(gr..' was deployed') - timer.scheduleFunction(function(param,time) - local g = Group.getByName(param.group) - TaskExtensions.landAtAirfield(g, param.target.zone.point) - env.info(param.group..' going to '..param.target.name) - end, {group=gr, target=zn}, timer.getTime()+2) - end - - return time+(60*5) -end, {blue = blueSupply, red = redSupply, offmapZones = offmapZones}, timer.getTime()+60) - - - -timer.scheduleFunction(function(param, time) - - for groupname,data in pairs(offmapSupplyRegistry) do - local gr = Group.getByName(groupname) - if not gr then - offmapSupplyRegistry[groupname] = nil - env.info(groupname..' was destroyed') - end - - if gr and ((timer.getAbsTime() - data.assigned) > (60*60)) then - gr:destroy() - offmapSupplyRegistry[groupname] = nil - env.info(groupname..' despawned due to being alive for too long') - end - - if gr and Utils.allGroupIsLanded(gr) and Utils.someOfGroupInZone(gr, data.zone.name) then - data.zone:addResource(15000) - gr:destroy() - offmapSupplyRegistry[groupname] = nil - env.info(groupname..' landed at '..data.zone.name..' and delivered 15000 resources') - end - end - - return time+180 -end, {}, timer.getTime()+180) \ No newline at end of file diff --git a/resources/plugins/pretense/init_footer.lua b/resources/plugins/pretense/init_footer.lua index 9df8452d..2559cb93 100644 --- a/resources/plugins/pretense/init_footer.lua +++ b/resources/plugins/pretense/init_footer.lua @@ -1,4533 +1,3 @@ - - -local savefile = 'pretense_1.1.json' -if lfs then - local dir = lfs.writedir()..'Missions/Saves/' - lfs.mkdir(dir) - savefile = dir..savefile - env.info('Pretense - Save file path: '..savefile) -end - - -do - TemplateDB.templates["infantry-red"] = { - units = { - "BTR_D", - "T-90", - "T-90", - "Infantry AK ver2", - "Infantry AK", - "Infantry AK", - "Paratrooper RPG-16", - "Infantry AK ver3", - "SA-18 Igla manpad" - }, - skill = "Excellent", - dataCategory= TemplateDB.type.group - } - - TemplateDB.templates["infantry-blue"] = { - units = { - "M1045 HMMWV TOW", - "Soldier stinger", - "Soldier M4 GRG", - "Soldier M4 GRG", - "Soldier M4 GRG", - "Soldier M4 GRG", - "Soldier M4 GRG", - "M1043 HMMWV Armament" - }, - skill = "Excellent", - dataCategory= TemplateDB.type.group - } - - TemplateDB.templates["defense-red"] = { - units = { - "Infantry AK ver2", - "Infantry AK", - "Infantry AK ver3", - "Paratrooper RPG-16", - "SA-18 Igla manpad" - }, - skill = "Excellent", - dataCategory= TemplateDB.type.group - } - - TemplateDB.templates["defense-blue"] = { - units = { - "Soldier M4 GRG", - "Soldier M4 GRG", - "Soldier M4 GRG", - "Soldier RPG", - "Soldier stinger", - }, - skill = "Excellent", - dataCategory= TemplateDB.type.group - } - - TemplateDB.templates["shorad-red"] = { - units = { - "Strela-10M3", - "Strela-10M3", - "Ural-4320T", - "2S6 Tunguska" - }, - maxDist = 300, - skill = "Excellent", - dataCategory= TemplateDB.type.group - } - - TemplateDB.templates["shorad-blue"] = { - units = { - "Roland ADS", - "M48 Chaparral", - "M 818", - "Gepard", - "Gepard" - }, - maxDist = 300, - skill = "Excellent", - dataCategory= TemplateDB.type.group - } - - TemplateDB.templates["sam-red"] = { - units = { - "p-19 s-125 sr", - "Ural-4320T", - "Ural-4320T", - "S_75M_Volhov", - "S_75M_Volhov", - "S_75M_Volhov", - "S_75M_Volhov", - "S_75M_Volhov", - "Tor 9A331", - "SNR_75V" - }, - maxDist = 300, - skill = "Excellent", - dataCategory= TemplateDB.type.group - } - - TemplateDB.templates["sam-blue"] = { - units = { - "Hawk pcp", - "Hawk cwar", - "Hawk ln", - "Hawk ln", - "Hawk ln", - "Hawk ln", - "Hawk ln", - "Hawk tr", - "M 818", - "Hawk sr" - }, - maxDist = 300, - skill = "Good", - dataCategory= TemplateDB.type.group - } - - TemplateDB.templates["patriot"] = { - units = { - "Patriot cp", - "Patriot str", - "M 818", - "M 818", - "Patriot ln", - "Patriot ln", - "Patriot ln", - "Patriot ln", - "Patriot str", - "Patriot str", - "Patriot str", - "Patriot EPP", - "Patriot ECS", - "Patriot AMG" - }, - maxDist = 300, - skill = "Good", - dataCategory= TemplateDB.type.group - } - - TemplateDB.templates["sa3"] = { - units = { - "p-19 s-125 sr", - "snr s-125 tr", - "5p73 s-125 ln", - "5p73 s-125 ln", - "Ural-4320T", - "5p73 s-125 ln", - "5p73 s-125 ln" - }, - maxDist = 300, - skill = "Excellent", - dataCategory= TemplateDB.type.group - } - - TemplateDB.templates["sa6"] = { - units = { - "Kub 1S91 str", - "Kub 2P25 ln", - "Kub 2P25 ln", - "Kub 2P25 ln", - "Kub 2P25 ln", - "2S6 Tunguska", - "Ural-4320T", - "2S6 Tunguska", - "Kub 2P25 ln" - }, - maxDist = 300, - skill = "Excellent", - dataCategory= TemplateDB.type.group - } - - TemplateDB.templates["sa10"] = { - units = { - "S-300PS 54K6 cp", - "S-300PS 5P85C ln", - "S-300PS 5P85C ln", - "S-300PS 5P85C ln", - "GAZ-66", - "GAZ-66", - "GAZ-66", - "S-300PS 5P85C ln", - "S-300PS 5P85C ln", - "S-300PS 5P85C ln", - "S-300PS 40B6MD sr", - "S-300PS 40B6M tr", - "S-300PS 64H6E sr" - }, - maxDist = 300, - skill = "Excellent", - dataCategory= TemplateDB.type.group - } - - TemplateDB.templates["sa5"] = { - units = { - "RLS_19J6", - "Ural-4320T", - "Ural-4320T", - "RPC_5N62V", - "S-200_Launcher", - "S-200_Launcher", - "S-200_Launcher", - "S-200_Launcher", - "S-200_Launcher", - "S-200_Launcher" - }, - maxDist = 300, - skill = "Excellent", - dataCategory= TemplateDB.type.group - } - - TemplateDB.templates["sa11"] = { - units = { - "SA-11 Buk SR 9S18M1", - "SA-11 Buk LN 9A310M1", - "SA-11 Buk LN 9A310M1", - "SA-11 Buk LN 9A310M1", - "SA-11 Buk LN 9A310M1", - "SA-11 Buk LN 9A310M1", - "2S6 Tunguska", - "SA-11 Buk SR 9S18M1", - "GAZ-66", - "GAZ-66", - "SA-11 Buk CC 9S470M1" - }, - maxDist = 300, - skill = "Excellent", - dataCategory= TemplateDB.type.group - } - - TemplateDB.templates["nasams"] = { - units = { - "NASAMS_Command_Post", - "NASAMS_Radar_MPQ64F1", - "Vulcan", - "M 818", - "M 818", - "Roland ADS", - "Roland ADS", - "NASAMS_LN_C", - "NASAMS_LN_C", - "NASAMS_LN_C", - "NASAMS_LN_C", - "NASAMS_Radar_MPQ64F1", - "NASAMS_Radar_MPQ64F1", - "NASAMS_Radar_MPQ64F1" - }, - maxDist = 300, - skill = "Excellent", - dataCategory= TemplateDB.type.group - } -end - -presets = { - upgrades = { - basic = { - tent = Preset:new({ - display = 'Tent', - cost = 1500, - type = 'upgrade', - template = "tent" - }), - comPost = Preset:new({ - display = 'Barracks', - cost = 1500, - type = 'upgrade', - template = "barracks" - }), - outpost = Preset:new({ - display = 'Outpost', - cost = 1500, - type = 'upgrade', - template = "outpost" - }) - }, - attack = { - ammoCache = Preset:new({ - display = 'Ammo Cache', - cost = 1500, - type = 'upgrade', - template = "ammo-cache" - }), - ammoDepot = Preset:new({ - display = 'Ammo Depot', - cost = 2000, - type = 'upgrade', - template = "ammo-depot" - }) - }, - supply = { - fuelCache = Preset:new({ - display = 'Fuel Cache', - cost = 1500, - type = 'upgrade', - template = "fuel-cache" - }), - fuelTank = Preset:new({ - display = 'Fuel Tank', - cost = 1500, - type = 'upgrade', - template = "fuel-tank-big" - }), - fuelTankFarp = Preset:new({ - display = 'Fuel Tank', - cost = 1500, - type = 'upgrade', - template = "fuel-tank-small" - }), - factory1 = Preset:new({ - display='Factory', - cost = 2000, - type ='upgrade', - income = 20, - template = "factory-1" - }), - factory2 = Preset:new({ - display='Factory', - cost = 2000, - type ='upgrade', - income = 20, - template = "factory-2" - }), - factoryTank = Preset:new({ - display='Storage Tank', - cost = 1500, - type ='upgrade', - income = 10, - template = "chem-tank" - }), - ammoDepot = Preset:new({ - display = 'Ammo Depot', - cost = 2000, - type = 'upgrade', - income = 40, - template = "ammo-depot" - }), - oilPump = Preset:new({ - display = 'Oil Pump', - cost = 1500, - type = 'upgrade', - income = 20, - template = "oil-pump" - }), - hangar = Preset:new({ - display = 'Hangar', - cost = 2000, - type = 'upgrade', - income = 30, - template = "hangar" - }), - excavator = Preset:new({ - display = 'Excavator', - cost = 2000, - type = 'upgrade', - income = 20, - template = "excavator" - }), - farm1 = Preset:new({ - display = 'Farm House', - cost = 2000, - type = 'upgrade', - income = 40, - template = "farm-house-1" - }), - farm2 = Preset:new({ - display = 'Farm House', - cost = 2000, - type = 'upgrade', - income = 40, - template = "farm-house-2" - }), - refinery1 = Preset:new({ - display='Refinery', - cost = 2000, - type ='upgrade', - income = 100, - template = "factory-1" - }), - powerplant1 = Preset:new({ - display='Power Plant', - cost = 1500, - type ='upgrade', - income = 25, - template = "factory-1" - }), - powerplant2 = Preset:new({ - display='Power Plant', - cost = 1500, - type ='upgrade', - income = 25, - template = "factory-2" - }), - antenna = Preset:new({ - display='Antenna', - cost = 1000, - type ='upgrade', - income = 10, - template = "antenna" - }), - hq = Preset:new({ - display='HQ Building', - cost = 2000, - type ='upgrade', - income = 50, - template = "tv-tower" - }) - }, - airdef = { - comCenter = Preset:new({ - display = 'Command Center', - cost = 2500, - type = 'upgrade', - template = "command-center" - }) - } - }, - defenses = { - red = { - infantry = Preset:new({ - display = 'Infantry', - cost=2000, - type='defense', - template='infantry-red', - }), - shorad = Preset:new({ - display = 'SAM', - cost=2500, - type='defense', - template='shorad-red', - }), - sam = Preset:new({ - display = 'SAM', - cost=3000, - type='defense', - template='sam-red', - }), - sa10 = Preset:new({ - display = 'SAM', - cost=3000, - type='defense', - template='sa10', - }), - sa5 = Preset:new({ - display = 'SAM', - cost=3000, - type='defense', - template='sa5', - }), - sa3 = Preset:new({ - display = 'SAM', - cost=3000, - type='defense', - template='sa3', - }), - sa6 = Preset:new({ - display = 'SAM', - cost=3000, - type='defense', - template='sa6', - }), - sa11 = Preset:new({ - display = 'SAM', - cost=3000, - type='defense', - template='sa11', - }) - }, - blue = { - infantry = Preset:new({ - display = 'Infantry', - cost=2000, - type='defense', - template='infantry-blue', - }), - shorad = Preset:new({ - display = 'SAM', - cost=2500, - type='defense', - template='shorad-blue', - }), - sam = Preset:new({ - display = 'SAM', - cost=3000, - type='defense', - template='sam-blue', - }), - patriot = Preset:new({ - display = 'SAM', - cost=3000, - type='defense', - template='patriot', - }), - nasams = Preset:new({ - display = 'SAM', - cost=3000, - type='defense', - template='nasams', - }) - } - }, - missions = { - supply = { - convoy = Preset:new({ - display = 'Supply convoy', - cost = 4000, - type = 'mission', - missionType = ZoneCommand.missionTypes.supply_convoy - }), - convoy_escorted = Preset:new({ - display = 'Supply convoy', - cost = 3000, - type = 'mission', - missionType = ZoneCommand.missionTypes.supply_convoy - }), - helo = Preset:new({ - display = 'Supply helicopter', - cost = 2500, - type='mission', - missionType = ZoneCommand.missionTypes.supply_air - }), - transfer = Preset:new({ - display = 'Supply transfer', - cost = 1000, - type='mission', - missionType = ZoneCommand.missionTypes.supply_transfer - }) - }, - attack = { - surface = Preset:new({ - display = 'Ground assault', - cost = 100, - type = 'mission', - missionType = ZoneCommand.missionTypes.assault, - }), - cas = Preset:new({ - display = 'CAS', - cost = 200, - type='mission', - missionType = ZoneCommand.missionTypes.cas - }), - bai = Preset:new({ - display = 'BAI', - cost = 200, - type='mission', - missionType = ZoneCommand.missionTypes.bai - }), - strike = Preset:new({ - display = 'Strike', - cost = 300, - type='mission', - missionType = ZoneCommand.missionTypes.strike - }), - sead = Preset:new({ - display = 'SEAD', - cost = 200, - type='mission', - missionType = ZoneCommand.missionTypes.sead - }), - helo = Preset:new({ - display = 'CAS', - cost = 100, - type='mission', - missionType = ZoneCommand.missionTypes.cas_helo - }) - }, - patrol={ - aircraft = Preset:new({ - display= "Patrol", - cost = 100, - type='mission', - missionType = ZoneCommand.missionTypes.patrol - }) - }, - support ={ - awacs = Preset:new({ - display= "AWACS", - cost = 300, - type='mission', - bias='5', - missionType = ZoneCommand.missionTypes.awacs - }), - tanker = Preset:new({ - display= "Tanker", - cost = 200, - type='mission', - bias='2', - missionType = ZoneCommand.missionTypes.tanker - }) - } - }, - special = { - red = { - infantry = Preset:new({ - display = 'Infantry', - cost=-1, - type='defense', - template='defense-red', - }), - }, - blue = { - infantry = Preset:new({ - display = 'Infantry', - cost=-1, - type='defense', - template='defense-blue', - }) - } - } -} - -zones = {} -do - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Batumi.lua ]]----------------- - -zones.batumi = ZoneCommand:new('Batumi') -zones.batumi.initialState = { side=2 } -zones.batumi.keepActive = true -zones.batumi.isHeloSpawn = true -zones.batumi.isPlaneSpawn = true -zones.batumi.maxResource = 50000 -zones.batumi:defineUpgrades({ - [1] = { --red side - presets.upgrades.basic.comPost:extend({ - name = 'batumi-com-red', - products = { - presets.special.red.infantry:extend({ name='batumi-defense-red'}), - presets.defenses.red.infantry:extend({ name='batumi-garrison-red' }) - } - }), - }, - [2] = --blue side - { - presets.upgrades.basic.comPost:extend({ - name = 'batumi-com-blue', - products = { - presets.special.blue.infantry:extend({ name='batumi-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='batumi-garrison-blue' }) - } - }), - presets.upgrades.supply.fuelTank:extend({ - name = 'batumi-fueltank-blue', - products = { - presets.missions.supply.convoy_escorted:extend({ name='batumi-supply-convoy-1'}), - presets.missions.supply.helo:extend({ name='batumi-supply-blue-1' }), - presets.missions.supply.transfer:extend({name='batumi-transfer-blue'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name = 'batumi-mission-command-blue', - products = { - presets.defenses.blue.shorad:extend({ name='batumi-sam-blue' }), - presets.missions.attack.sead:extend({name='batumi-sead-blue-1', altitude=25000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.attack.cas:extend({name='batumi-cas-blue-1', altitude=15000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.bai:extend({name='batumi-cas-blue-1', altitude=10000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.strike:extend({name='batumi-strike-blue-1', altitude=20000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.patrol.aircraft:extend({name='batumi-patrol-blue-1', altitude=25000, range=25}), - presets.missions.support.awacs:extend({name='batumi-awacs-blue', altitude=30000, freq=257.5}), - presets.missions.support.tanker:extend({name='batumi-tanker-blue', altitude=25000, freq=257, tacan='37', variant="Drogue"}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Batumi.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Mike.lua ]]----------------- - -zones.mike = ZoneCommand:new("Mike") -zones.mike.initialState = { side=1 } -zones.mike.keepActive = true -zones.mike:defineUpgrades({ - [1] = - { - presets.upgrades.basic.tent:extend({ - name='mike-tent-red', - products = { - presets.special.red.infantry:extend({ name='mike-defense-red'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='mike-comcenter-red', - products = { - presets.defenses.red.sam:extend({ name='mike-sam-red'}) - } - }) - }, - [2] = - { - presets.upgrades.basic.tent:extend({ - name='mike-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='mike-defense-blue'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='mike-comcenter-blue', - products = { - presets.defenses.blue.sam:extend({ name='mike-sam-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Mike.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Tyrnyauz.lua ]]----------------- - -zones.tyrnyauz = ZoneCommand:new("Tyrnyauz") -zones.tyrnyauz.initialState = { side=1 } -zones.tyrnyauz.isHeloSpawn = true -zones.tyrnyauz:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='tyrnyauz-tent-red', - products = { - presets.special.red.infantry:extend({ name='tyrnyauz-defense-red'}), - presets.defenses.red.infantry:extend({ name='tyrnyauz-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='tyrnyauz-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='tyrnyauz-supply-red'}), - presets.missions.supply.helo:extend({name='tyrnyauz-supply-red-2'}), - presets.missions.supply.transfer:extend({name='tyrnyauz-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='tyrnyauz-ammo-red', - products = { - presets.missions.attack.surface:extend({name='tyrnyauz-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='tyrnyauz-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='tyrnyauz-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='tyrnyauz-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='tyrnyauz-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='tyrnyauz-supply-blue'}), - presets.missions.supply.helo:extend({name='tyrnyauz-supply-blue-2'}), - presets.missions.supply.transfer:extend({name='tyrnyauz-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='tyrnyauz-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='tyrnyauz-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Tyrnyauz.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/India.lua ]]----------------- - -zones.india = ZoneCommand:new("India") -zones.india.initialState = nil -zones.india:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='india-tent-red', - products = { - presets.special.red.infantry:extend({ name='india-defense-red'}), - presets.defenses.red.infantry:extend({ name='india-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='india-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='india-supply-red'}), - presets.missions.supply.transfer:extend({name='india-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='india-ammo-red', - products = { - presets.missions.attack.surface:extend({name='india-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='india-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='india-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='india-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='india-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='india-supply-blue'}), - presets.missions.supply.transfer:extend({name='india-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='india-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='india-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/India.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/IntelCenter.lua ]]----------------- - -zones.intelcenter = ZoneCommand:new("Intel Center") -zones.intelcenter.initialState = { side=1 } -zones.intelcenter:defineUpgrades({ - [1] = - { - presets.upgrades.basic.tent:extend({ - name='intelcenter-tent-red', - products = { - presets.special.red.infantry:extend({ name='intelcenter-defense-red'}), - presets.defenses.red.infantry:extend({ name='intelcenter-garrison-red'}) - } - }), - presets.upgrades.supply.hq:extend({ - name='intelcenter-hq-red', - products = { - presets.missions.supply.convoy:extend({ name='intelcenter-supply-red'}), - presets.missions.supply.convoy:extend({ name='intelcenter-supply-red-1'}), - presets.missions.supply.transfer:extend({name='intelcenter-transfer-red'}) - } - }), - presets.upgrades.supply.antenna:extend({ - name='intelcenter-antenna-red', - products = { - } - }), - presets.upgrades.supply.antenna:extend({ - name='intelcenter-antenna-red-1', - products = { - } - }), - presets.upgrades.supply.antenna:extend({ - name='intelcenter-antenna-red-2', - products = { - } - }) - }, - [2] = - { - presets.upgrades.basic.tent:extend({ - name='intelcenter-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='intelcenter-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='intelcenter-garrison-blue'}) - } - }), - presets.upgrades.supply.hq:extend({ - name='intelcenter-hq-blue', - products = { - presets.missions.supply.convoy:extend({ name='intelcenter-supply-blue'}), - presets.missions.supply.convoy:extend({ name='intelcenter-supply-blue-1'}), - presets.missions.supply.transfer:extend({name='intelcenter-transfer-blue'}) - } - }), - presets.upgrades.supply.antenna:extend({ - name='intelcenter-antenna-blue', - products = { - } - }), - presets.upgrades.supply.antenna:extend({ - name='intelcenter-antenna-blue-1', - products = { - } - }), - presets.upgrades.supply.antenna:extend({ - name='intelcenter-antenna-blue-2', - products = { - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/IntelCenter.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Mineralnye.lua ]]----------------- - -zones.mineralnye = ZoneCommand:new("Mineralnye") -zones.mineralnye.initialState = { side=1 } -zones.mineralnye.keepActive = true -zones.mineralnye.isHeloSpawn = true -zones.mineralnye.isPlaneSpawn = true -zones.mineralnye:defineUpgrades({ - [1] = - { - presets.upgrades.basic.comPost:extend({ - name='mineralnye-compost-red', - products = { - presets.special.red.infantry:extend({ name='mineralnye-defense-red'}), - presets.defenses.red.infantry:extend({ name='mineralnye-garrison-red'}) - } - }), - presets.upgrades.supply.fuelTank:extend({ - name='mineralnye-fuel-red', - products = { - presets.missions.supply.helo:extend({name='mineralnye-supply-red'}), - presets.missions.supply.helo:extend({name='mineralnye-supply-red-1'}), - presets.missions.supply.transfer:extend({name='mineralnye-transfer-red'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='mineralnye-comcenter-red', - products = { - presets.defenses.red.sa11:extend({ name='mineralnye-airdef-red'}), - presets.missions.attack.cas:extend({name='mineralnye-cas-red', altitude=15000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.bai:extend({name='mineralnye-cas-red', altitude=10000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.strike:extend({name='mineralnye-strike-red', altitude=30000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.attack.strike:extend({name='mineralnye-strike-red-1', altitude=30000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.patrol.aircraft:extend({name='mineralnye-patrol-red', altitude=25000, range=25}) - } - }) - }, - [2] = - { - presets.upgrades.basic.comPost:extend({ - name='mineralnye-compost-blue', - products = { - presets.special.blue.infantry:extend({ name='mineralnye-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='mineralnye-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelTank:extend({ - name='mineralnye-fuel-blue', - products = { - presets.missions.supply.helo:extend({name='mineralnye-supply-blue'}), - presets.missions.supply.helo:extend({name='mineralnye-supply-blue-1'}), - presets.missions.supply.transfer:extend({name='mineralnye-transfer-blue'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='mineralnye-comcenter-blue', - products = { - presets.defenses.blue.nasams:extend({ name='mineralnye-airdef-blue'}), - presets.missions.attack.cas:extend({name='mineralnye-cas-blue', altitude=15000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.bai:extend({name='mineralnye-cas-blue', altitude=10000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.strike:extend({name='mineralnye-strike-blue', altitude=30000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.attack.strike:extend({name='mineralnye-strike-blue-1', altitude=30000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.patrol.aircraft:extend({name='mineralnye-patrol-blue', altitude=25000, range=25}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Mineralnye.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/PowerPlant.lua ]]----------------- - -zones.powerplant = ZoneCommand:new("Power Plant") -zones.powerplant.initialState = { side=1 } -zones.powerplant:defineUpgrades({ - [1] = - { - presets.upgrades.basic.tent:extend({ - name='powerplant-tent-red', - products = { - presets.special.red.infantry:extend({ name='powerplant-defense-red'}), - presets.defenses.red.infantry:extend({ name='powerplant-garrison-red'}) - } - }), - presets.upgrades.supply.powerplant1:extend({ - name='powerplant-building-red-1', - products = { - presets.missions.supply.convoy:extend({ name='powerplant-supply-red'}), - presets.missions.supply.transfer:extend({name='powerplant-transfer-red'}) - } - }), - presets.upgrades.supply.powerplant2:extend({ - name='powerplant-building-red-2', - products = { - presets.missions.supply.convoy:extend({ name='powerplant-supply-red-1'}), - presets.missions.supply.transfer:extend({name='powerplant-transfer-red'}) - } - }) - }, - [2] = - { - presets.upgrades.basic.tent:extend({ - name='powerplant-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='powerplant-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='powerplant-garrison-blue'}) - } - }), - presets.upgrades.supply.powerplant1:extend({ - name='powerplant-building-blue-1', - products = { - presets.missions.supply.convoy:extend({ name='powerplant-supply-blue'}), - presets.missions.supply.transfer:extend({name='powerplant-transfer-blue'}) - } - }), - presets.upgrades.supply.powerplant2:extend({ - name='powerplant-building-blue-2', - products = { - presets.missions.supply.convoy:extend({ name='powerplant-supply-blue-1'}), - presets.missions.supply.transfer:extend({name='powerplant-transfer-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/PowerPlant.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Zugdidi.lua ]]----------------- - -zones.zugdidi = ZoneCommand:new("Zugdidi") -zones.zugdidi.initialState = { side=1 } -zones.zugdidi:defineUpgrades({ - [1] = - { - presets.upgrades.basic.comPost:extend({ - name='zugdidi-compost-red', - products = { - presets.missions.supply.transfer:extend({name='zugdidi-transfer-red'}), - presets.special.red.infantry:extend({ name='zugdidi-defense-red'}), - presets.defenses.red.infantry:extend({ name='zugdidi-garrison-red'}), - presets.missions.attack.surface:extend({name='zugdidi-attack-red'}), - presets.missions.supply.convoy:extend({name='zugdidi-supply-red'}) - } - }), - presets.upgrades.supply.hangar:extend({ - name='zugdidi-hangar-red-1', - products = { - presets.missions.supply.helo:extend({name='zugdidi-supply-red-1'}) - } - }), - presets.upgrades.supply.hangar:extend({ - name='zugdidi-hangar-red-2', - products = { - presets.missions.supply.helo:extend({name='zugdidi-supply-red-2'}) - } - }), - presets.upgrades.supply.hangar:extend({ - name='zugdidi-hangar-red-3', - products = { - presets.missions.supply.helo:extend({name='zugdidi-supply-red-3'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='zugdidi-comcenter-red', - products = { - presets.defenses.red.sa6:extend({ name='zugdidi-sam-red'}) - } - }) - }, - [2] = - { - presets.upgrades.basic.tent:extend({ - name='zugdidi-compost-blue', - products = { - presets.missions.supply.transfer:extend({name='zugdidi-transfer-blue'}), - presets.special.blue.infantry:extend({ name='zugdidi-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='zugdidi-garrison-blue'}), - presets.missions.attack.surface:extend({name='zugdidi-attack-blue'}), - presets.missions.supply.convoy:extend({name='zugdidi-supply-blue'}) - } - }), - presets.upgrades.supply.hangar:extend({ - name='zugdidi-hangar-blue-1', - products = { - presets.missions.supply.helo:extend({name='zugdidi-supply-blue-1'}) - } - }), - presets.upgrades.supply.hangar:extend({ - name='zugdidi-hangar-blue-2', - products = { - presets.missions.supply.helo:extend({name='zugdidi-supply-blue-2'}) - } - }), - presets.upgrades.supply.hangar:extend({ - name='zugdidi-hangar-blue-3', - products = { - presets.missions.supply.helo:extend({name='zugdidi-supply-blue-3'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='zugdidi-comcenter-blue', - products = { - presets.defenses.blue.shorad:extend({ name='zugdidi-sam-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Zugdidi.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Babugent.lua ]]----------------- - -zones.babugent = ZoneCommand:new("Babugent") -zones.babugent.initialState = { side=1 } -zones.babugent:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='babugent-tent-red', - products = { - presets.special.red.infantry:extend({ name='babugent-defense-red'}), - presets.defenses.red.infantry:extend({ name='babugent-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='babugent-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='babugent-supply-red'}), - presets.missions.supply.helo:extend({name='babugent-supply-red-2'}), - presets.missions.supply.transfer:extend({name='babugent-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='babugent-ammo-red', - products = { - presets.missions.attack.surface:extend({name='babugent-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='babugent-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='babugent-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='babugent-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='babugent-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='babugent-supply-blue'}), - presets.missions.supply.helo:extend({name='babugent-supply-blue-2'}), - presets.missions.supply.transfer:extend({name='babugent-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='babugent-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='babugent-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Babugent.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Kislovodsk.lua ]]----------------- - -zones.kislovodsk = ZoneCommand:new("Kislovodsk") -zones.kislovodsk.initialState = { side=1 } -zones.kislovodsk:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='kislovodsk-tent-red', - products = { - presets.special.red.infantry:extend({ name='kislovodsk-defense-red'}), - presets.defenses.red.infantry:extend({ name='kislovodsk-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='kislovodsk-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='kislovodsk-supply-red'}), - presets.missions.supply.transfer:extend({name='kislovodsk-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='kislovodsk-ammo-red', - products = { - presets.missions.attack.surface:extend({name='kislovodsk-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='kislovodsk-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='kislovodsk-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='kislovodsk-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='kislovodsk-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='kislovodsk-supply-blue'}), - presets.missions.supply.transfer:extend({name='kislovodsk-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='kislovodsk-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='kislovodsk-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Kislovodsk.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Gudauta.lua ]]----------------- - -zones.gudauta = ZoneCommand:new("Gudauta") -zones.gudauta.initialState = { side=1 } -zones.gudauta.keepActive = true -zones.gudauta.maxResource = 50000 -zones.gudauta:defineUpgrades({ - [1] = - { - presets.upgrades.basic.comPost:extend({ - name='gudauta-compost-red', - products = { - presets.special.red.infantry:extend({ name='gudauta-defense-red'}), - presets.defenses.red.infantry:extend({ name='gudauta-garrison-red'}) - } - }), - presets.upgrades.supply.fuelTank:extend({ - name='gudauta-fuel-red', - products = { - presets.missions.supply.helo:extend({name='gudauta-supply-red'}), - presets.missions.supply.helo:extend({name='gudauta-supply-red-1'}), - presets.missions.supply.transfer:extend({name='gudauta-transfer-red'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='gudauta-comcenter-red', - products = { - presets.defenses.red.sam:extend({ name='gudauta-airdef-red'}), - presets.missions.attack.sead:extend({name='gudauta-sead-red', altitude=25000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.attack.sead:extend({name='gudauta-sead-red-1', altitude=25000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.attack.cas:extend({name='gudauta-cas-red', altitude=15000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.bai:extend({name='gudauta-cas-red', altitude=10000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.patrol.aircraft:extend({name='gudauta-patrol-red', altitude=25000, range=25}) - } - }) - }, - [2] = - { - presets.upgrades.basic.comPost:extend({ - name='gudauta-compost-blue', - products = { - presets.special.blue.infantry:extend({ name='gudauta-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='gudauta-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelTank:extend({ - name='gudauta-fuel-blue', - products = { - presets.missions.supply.helo:extend({name='gudauta-supply-blue'}), - presets.missions.supply.helo:extend({name='gudauta-supply-blue-1'}), - presets.missions.supply.transfer:extend({name='gudauta-transfer-blue'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='gudauta-comcenter-blue', - products = { - presets.defenses.blue.sam:extend({ name='gudauta-airdef-blue'}), - presets.missions.attack.sead:extend({name='gudauta-sead-blue', altitude=25000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.attack.sead:extend({name='gudauta-sead-blue-1', altitude=25000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.attack.cas:extend({name='gudauta-cas-blue', altitude=15000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.bai:extend({name='gudauta-cas-blue', altitude=10000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.patrol.aircraft:extend({name='gudauta-patrol-blue', altitude=25000, range=25}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Gudauta.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Distillery.lua ]]----------------- - -zones.distillery = ZoneCommand:new("Distillery") -zones.distillery.initialState = { side=1 } -zones.distillery:defineUpgrades({ - [1] = - { - presets.upgrades.basic.tent:extend({ - name='distillery-tent-red', - products = { - presets.special.red.infantry:extend({ name='distillery-defense-red'}), - presets.defenses.red.infantry:extend({ name='distillery-garrison-red'}) - } - }), - presets.upgrades.supply.factory1:extend({ - name='distillery-prod-red-1', - products = { - presets.missions.supply.convoy:extend({ name='distillery-supply-red-1'}), - presets.missions.supply.transfer:extend({name='distillery-transfer-red'}) - } - }), - presets.upgrades.supply.factory2:extend({ - name='distillery-prod-red-2', - products = { - presets.missions.supply.convoy:extend({ name='distillery-supply-red-2', cost=2000}), - presets.missions.supply.transfer:extend({name='distillery-transfer-red2'}) - } - }), - presets.upgrades.supply.factoryTank:extend({ - name='distillery-tank-red-1', - products = { - } - }), - presets.upgrades.supply.factoryTank:extend({ - name='distillery-tank-red-2', - products = { - } - }), - presets.upgrades.supply.factoryTank:extend({ - name='distillery-tank-red-3', - products = { - } - }) - }, - [2] = - { - presets.upgrades.basic.tent:extend({ - name='distillery-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='distillery-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='distillery-garrison-blue'}) - } - }), - presets.upgrades.supply.factory1:extend({ - name='distillery-prod-blue-1', - products = { - presets.missions.supply.convoy:extend({ name='distillery-supply-blue-1'}), - presets.missions.supply.transfer:extend({name='distillery-transfer-blue'}) - } - }), - presets.upgrades.supply.factory2:extend({ - name='distillery-prod-blue-2', - products = { - presets.missions.supply.convoy:extend({ name='distillery-supply-blue-2', cost=2000}), - presets.missions.supply.transfer:extend({name='distillery-transfer-blue2'}) - } - }), - presets.upgrades.supply.factoryTank:extend({ - name='distillery-tank-blue-1', - products = { - } - }), - presets.upgrades.supply.factoryTank:extend({ - name='distillery-tank-blue-2', - products = { - } - }), - presets.upgrades.supply.factoryTank:extend({ - name='distillery-tank-blue-3', - products = { - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Distillery.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Sochi.lua ]]----------------- - -zones.sochi = ZoneCommand:new("Sochi") -zones.sochi.initialState = { side=1 } -zones.sochi.keepActive = true -zones.sochi.maxResource = 50000 -zones.sochi:defineUpgrades({ - [1] = - { - presets.upgrades.basic.comPost:extend({ - name='sochi-compost-red', - products = { - presets.special.red.infantry:extend({ name='sochi-defense-red'}), - presets.defenses.red.infantry:extend({ name='sochi-garrison-red'}) - } - }), - presets.upgrades.supply.fuelTank:extend({ - name='sochi-fuel-red', - products = { - presets.missions.supply.helo:extend({name='sochi-supply-red-1'}), - presets.missions.supply.helo:extend({name='sochi-supply-red-2'}), - presets.missions.supply.convoy_escorted:extend({name='sochi-supply-red-3'}), - presets.missions.supply.transfer:extend({name='sochi-transfer-red'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='sochi-comcenter-red', - products = { - presets.defenses.red.sa10:extend({ name='sochi-airdef-red'}), - presets.missions.attack.sead:extend({name='sochi-sead-red', altitude=25000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.attack.strike:extend({name='sochi-strike-red', altitude=30000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.patrol.aircraft:extend({name='sochi-patrol-red', altitude=25000, range=25}), - presets.missions.patrol.aircraft:extend({name='sochi-patrol-red-1', altitude=25000, range=25}), - presets.missions.attack.cas:extend({name='sochi-cas-red', altitude=15000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.bai:extend({name='sochi-cas-red', altitude=10000, expend=AI.Task.WeaponExpend.ONE}) - } - }) - }, - [2] = - { - presets.upgrades.basic.comPost:extend({ - name='sochi-compost-blue', - products = { - presets.special.blue.infantry:extend({ name='sochi-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='sochi-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelTank:extend({ - name='sochi-fuel-blue', - products = { - presets.missions.supply.helo:extend({name='sochi-supply-blue-1'}), - presets.missions.supply.helo:extend({name='sochi-supply-blue-2'}), - presets.missions.supply.convoy_escorted:extend({name='sochi-supply-blue-3'}), - presets.missions.supply.transfer:extend({name='sochi-transfer-blue'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='sochi-comcenter-blue', - products = { - presets.defenses.blue.patriot:extend({ name='sochi-airdef-blue'}), - presets.missions.attack.sead:extend({name='sochi-sead-blue', altitude=25000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.attack.strike:extend({name='sochi-strike-blue', altitude=30000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.patrol.aircraft:extend({name='sochi-patrol-blue', altitude=25000, range=25}), - presets.missions.attack.cas:extend({name='sochi-cas-blue', altitude=15000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.bai:extend({name='sochi-cas-blue', altitude=10000, expend=AI.Task.WeaponExpend.ONE}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Sochi.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Golf.lua ]]----------------- - -zones.golf = ZoneCommand:new("Golf") -zones.golf.initialState = nil -zones.golf.isHeloSpawn = true -zones.golf:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='golf-tent-red', - products = { - presets.special.red.infantry:extend({ name='golf-defense-red'}), - presets.defenses.red.infantry:extend({ name='golf-garrison-red'}) - } - }), - presets.upgrades.supply.fuelTank:extend({ - name='golf-fuel-red', - products = { - presets.missions.supply.helo:extend({name='golf-supply-red'}), - presets.missions.supply.helo:extend({name='golf-supply-red-1'}), - presets.missions.supply.transfer:extend({name='golf-transfer-red'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='golf-comcenter-red', - products = { - presets.defenses.red.shorad:extend({name='golf-sam-red'}), - presets.missions.attack.helo:extend({name='golf-cas-red', altitude=200, expend=AI.Task.WeaponExpend.HALF }) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='golf-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='golf-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='golf-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelTankFarp:extend({ - name='golf-fuel-blue', - products = { - presets.missions.supply.helo:extend({name='golf-supply-blue'}), - presets.missions.supply.helo:extend({name='golf-supply-blue-1'}), - presets.missions.supply.transfer:extend({name='golf-transfer-blue'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='golf-comcenter-blue', - products = { - presets.defenses.blue.shorad:extend({name='golf-sam-blue'}), - presets.missions.attack.helo:extend({name='golf-cas-blue', altitude=200, expend=AI.Task.WeaponExpend.HALF }) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Golf.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Charlie.lua ]]----------------- - -zones.charlie = ZoneCommand:new("Charlie") -zones.charlie.initialState = { side=2 } -zones.charlie.keepActive = true -zones.charlie:defineUpgrades({ - [1] = - { - presets.upgrades.basic.tent:extend({ - name='charlie-tent-red', - products = { - presets.special.red.infantry:extend({ name='charlie-defense-red'}), - presets.defenses.red.infantry:extend({ name='charlie-garrison-red'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='charlie-comcenter-red', - products = { - presets.defenses.red.sam:extend({ name='charlie-sam-red'}) - } - }) - }, - [2] = - { - presets.upgrades.basic.tent:extend({ - name='charlie-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='charlie-defense-red'}), - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='charlie-comcenter-blue', - products = { - presets.defenses.blue.sam:extend({ name='charlie-sam-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Charlie.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Lentehi.lua ]]----------------- - -zones.lentehi = ZoneCommand:new("Lentehi") -zones.lentehi.initialState = { side=1 } -zones.lentehi:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='lentehi-tent-red', - products = { - presets.special.red.infantry:extend({ name='lentehi-defense-red'}), - presets.defenses.red.infantry:extend({ name='lentehi-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='lentehi-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='lentehi-supply-red'}), - presets.missions.supply.helo:extend({name='lentehi-supply-red-2'}), - presets.missions.supply.transfer:extend({name='lentehi-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='lentehi-ammo-red', - products = { - presets.missions.attack.surface:extend({name='lentehi-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='lentehi-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='lentehi-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='lentehi-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='lentehi-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='lentehi-supply-blue'}), - presets.missions.supply.helo:extend({name='lentehi-supply-blue-2'}), - presets.missions.supply.transfer:extend({name='lentehi-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='lentehi-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='lentehi-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Lentehi.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Refinery.lua ]]----------------- - -zones.refinery = ZoneCommand:new("Refinery") -zones.refinery.initialState = { side=1 } -zones.refinery:defineUpgrades({ - [1] = - { - presets.upgrades.basic.tent:extend({ - name='refinery-tent-red', - products = { - presets.special.red.infantry:extend({ name='refinery-defense-red'}), - presets.defenses.red.infantry:extend({ name='refinery-garrison-red'}) - } - }), - presets.upgrades.supply.refinery1:extend({ - name='refinery-building-red', - products = { - presets.missions.supply.convoy:extend({ name='refinery-supply-red'}), - presets.missions.supply.convoy:extend({ name='refinery-supply-red-1'}), - presets.missions.supply.helo:extend({ name='refinery-supply-red-2'}), - presets.missions.supply.transfer:extend({name='refinery-transfer-red'}) - } - }) - }, - [2] = - { - presets.upgrades.basic.tent:extend({ - name='refinery-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='refinery-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='refinery-garrison-blue'}) - } - }), - presets.upgrades.supply.refinery1:extend({ - name='refinery-building-blue', - products = { - presets.missions.supply.convoy:extend({ name='refinery-supply-blue'}), - presets.missions.supply.convoy:extend({ name='refinery-supply-blue-1'}), - presets.missions.supply.helo:extend({ name='refinery-supply-blue-2'}), - presets.missions.supply.transfer:extend({name='refinery-transfer-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Refinery.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Mozdok.lua ]]----------------- - -zones.mozdok = ZoneCommand:new("Mozdok") -zones.mozdok.initialState = { side=1 } -zones.mozdok.keepActive = true -zones.mozdok.maxResource = 50000 -zones.mozdok:defineUpgrades({ - [1] = - { - presets.upgrades.basic.comPost:extend({ - name='mozdok-compost-red', - products = { - presets.special.red.infantry:extend({ name='mozdok-defense-red'}), - presets.defenses.red.infantry:extend({ name='mozdok-garrison-red'}) - } - }), - presets.upgrades.supply.fuelTank:extend({ - name='mozdok-fuel-red', - products = { - presets.missions.supply.helo:extend({name='mozdok-supply-red-1'}), - presets.missions.supply.helo:extend({name='mozdok-supply-red-2'}), - presets.missions.supply.convoy_escorted:extend({name='mozdok-supply-red-3'}), - presets.missions.supply.transfer:extend({name='mozdok-transfer-red'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='mozdok-comcenter-red', - products = { - presets.defenses.red.sa10:extend({ name='mozdok-airdef-red'}), - presets.missions.patrol.aircraft:extend({name='mozdok-patrol-red', altitude=25000, range=25}), - presets.missions.attack.cas:extend({name='mozdok-cas-red', altitude=15000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.bai:extend({name='mozdok-cas-red', altitude=10000, expend=AI.Task.WeaponExpend.ONE}) - } - }) - }, - [2] = - { - presets.upgrades.basic.comPost:extend({ - name='mozdok-compost-blue', - products = { - presets.special.blue.infantry:extend({ name='mozdok-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='mozdok-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelTank:extend({ - name='mozdok-fuel-blue', - products = { - presets.missions.supply.helo:extend({name='mozdok-supply-blue-1'}), - presets.missions.supply.helo:extend({name='mozdok-supply-blue-2'}), - presets.missions.supply.convoy_escorted:extend({name='mozdok-supply-blue-3'}), - presets.missions.supply.transfer:extend({name='mozdok-transfer-blue'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='mozdok-comcenter-blue', - products = { - presets.defenses.blue.shorad:extend({ name='mozdok-airdef-blue'}), - presets.missions.patrol.aircraft:extend({name='mozdok-patrol-blue', altitude=25000, range=25}), - presets.missions.attack.cas:extend({name='mozdok-cas-blue', altitude=15000, cost=50, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.cas:extend({name='mozdok-cas-blue-1', altitude=15000, cost=50, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.bai:extend({name='mozdok-cas-blue', altitude=15000, cost=50, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.bai:extend({name='mozdok-cas-blue-1', altitude=15000, cost=50, expend=AI.Task.WeaponExpend.ONE}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Mozdok.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Lima.lua ]]----------------- - -zones.lima = ZoneCommand:new("Lima") -zones.lima.initialState = { side=1 } -zones.lima:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='lima-tent-red', - products = { - presets.special.red.infantry:extend({ name='lima-defense-red'}), - presets.defenses.red.infantry:extend({ name='lima-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='lima-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='lima-supply-red'}), - presets.missions.supply.helo:extend({name='lima-supply-red-1'}), - presets.missions.supply.transfer:extend({name='lima-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='lima-ammo-red', - products = { - presets.missions.attack.surface:extend({name='lima-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='lima-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='lima-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='lima-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='lima-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='lima-supply-blue'}), - presets.missions.supply.helo:extend({name='lima-supply-blue-1'}), - presets.missions.supply.transfer:extend({name='lima-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='lima-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='lima-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Lima.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Oscar.lua ]]----------------- - -zones.oscar = ZoneCommand:new("Oscar") -zones.oscar.initialState = { side=1 } -zones.oscar:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='oscar-tent-red', - products = { - presets.special.red.infantry:extend({ name='oscar-defense-red'}), - presets.defenses.red.infantry:extend({ name='oscar-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='oscar-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='oscar-supply-red'}), - presets.missions.supply.transfer:extend({name='oscar-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='oscar-ammo-red', - products = { - presets.missions.attack.surface:extend({name='oscar-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='oscar-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='oscar-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='oscar-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='oscar-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='oscar-supply-blue'}), - presets.missions.supply.transfer:extend({name='oscar-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='oscar-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='oscar-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Oscar.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Nalchik.lua ]]----------------- - -zones.nalchik = ZoneCommand:new("Nalchik") -zones.nalchik.initialState = { side=1 } -zones.nalchik.keepActive = true -zones.nalchik.isHeloSpawn = true -zones.nalchik.isPlaneSpawn = true -zones.nalchik:defineUpgrades({ - [1] = - { - presets.upgrades.basic.comPost:extend({ - name='nalchik-compost-red', - products = { - presets.special.red.infantry:extend({ name='nalchik-defense-red'}), - presets.defenses.red.infantry:extend({ name='nalchik-garrison-red'}) - } - }), - presets.upgrades.supply.fuelTank:extend({ - name='nalchik-fuel-red', - products = { - presets.missions.supply.helo:extend({name='nalchik-supply-red-1'}), - presets.missions.supply.helo:extend({name='nalchik-supply-red-2'}), - presets.missions.supply.transfer:extend({name='nalchik-transfer-red'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='nalchik-comcenter-red', - products = { - presets.defenses.red.sa3:extend({ name='nalchik-airdef-red'}), - presets.missions.attack.sead:extend({name='nalchik-sead-red', altitude=25000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.attack.cas:extend({name='nalchik-cas-red', altitude=15000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.bai:extend({name='nalchik-cas-red', altitude=10000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.strike:extend({name='nalchik-strike-red', altitude=30000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.patrol.aircraft:extend({name='nalchik-patrol-red', altitude=25000, range=25}), - presets.missions.patrol.aircraft:extend({name='nalchik-patrol-red-2', altitude=25000, range=25}), - presets.missions.support.awacs:extend({name='nalchik-awacs-red', altitude=30000, freq=251.2}), - presets.missions.support.tanker:extend({name='nalchik-tanker-red', altitude=30000, freq=252.2, tacan='40', variant='Drogue'}) - } - }) - }, - [2] = - { - presets.upgrades.basic.comPost:extend({ - name='nalchik-compost-blue', - products = { - presets.special.blue.infantry:extend({ name='nalchik-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='nalchik-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelTank:extend({ - name='nalchik-fuel-blue', - products = { - presets.missions.supply.helo:extend({name='nalchik-supply-blue-1'}), - presets.missions.supply.helo:extend({name='nalchik-supply-blue-2'}), - presets.missions.supply.transfer:extend({name='nalchik-transfer-blue'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='nalchik-comcenter-blue', - products = { - presets.defenses.blue.nasams:extend({ name='nalchik-airdef-blue'}), - presets.missions.support.awacs:extend({name='nalchik-awacs-blue', altitude=30000, freq=259.5}), - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Nalchik.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Digora.lua ]]----------------- - -zones.digora = ZoneCommand:new("Digora") -zones.digora.initialState = { side=1 } -zones.digora:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='digora-tent-red', - products = { - presets.special.red.infantry:extend({ name='digora-defense-red'}), - presets.defenses.red.infantry:extend({ name='digora-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='digora-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='digora-supply-red'}), - presets.missions.supply.transfer:extend({name='digora-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='digora-ammo-red', - products = { - presets.missions.attack.surface:extend({name='digora-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='digora-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='digora-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='digora-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='digora-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='digora-supply-blue'}), - presets.missions.supply.transfer:extend({name='digora-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='digora-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='digora-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Digora.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Uniform.lua ]]----------------- - -zones.uniform = ZoneCommand:new("Uniform") -zones.uniform.initialState = { side=1 } -zones.uniform:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='uniform-tent-red', - products = { - presets.special.red.infantry:extend({ name='uniform-defense-red'}), - presets.defenses.red.infantry:extend({ name='uniform-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='uniform-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='uniform-supply-red'}), - presets.missions.supply.transfer:extend({name='uniform-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='uniform-ammo-red', - products = { - presets.missions.attack.surface:extend({name='uniform-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='uniform-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='uniform-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='uniform-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='uniform-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='uniform-supply-blue'}), - presets.missions.supply.transfer:extend({name='uniform-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='uniform-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='uniform-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Uniform.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Factory.lua ]]----------------- - -zones.factory = ZoneCommand:new("Factory") -zones.factory.initialState = { side=2 } -zones.factory:defineUpgrades({ - [1] = - { - presets.upgrades.basic.tent:extend({ - name='factory-tent-red', - products = { - presets.special.red.infantry:extend({ name='factory-defense-red'}), - presets.defenses.red.infantry:extend({ name='factory-garrison-red'}) - } - }), - presets.upgrades.supply.factory1:extend({ - name='factory-prod-red-1', - products = { - presets.missions.supply.convoy:extend({ name='factory-supply-red-1'}), - presets.missions.supply.transfer:extend({name='factory-transfer-red'}) - } - }), - presets.upgrades.supply.factory2:extend({ - name='factory-prod-red-2', - products = { - presets.missions.supply.convoy:extend({ name='factory-supply-red-2', cost=2000}), - presets.missions.supply.transfer:extend({name='factory-transfer-red2'}) - } - }), - presets.upgrades.supply.factoryTank:extend({ - name='factory-tank-red-1', - products = { - } - }), - presets.upgrades.supply.factoryTank:extend({ - name='factory-tank-red-2', - products = { - } - }), - presets.upgrades.supply.factoryTank:extend({ - name='factory-tank-red-3', - products = { - } - }) - }, - [2] = - { - presets.upgrades.basic.tent:extend({ - name='factory-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='factory-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='factory-garrison-blue'}) - } - }), - presets.upgrades.supply.factory1:extend({ - name='factory-prod-blue-1', - products = { - presets.missions.supply.convoy:extend({ name='factory-supply-blue-1'}), - presets.missions.supply.transfer:extend({name='factory-transfer-blue'}) - } - }), - presets.upgrades.supply.factory2:extend({ - name='factory-prod-blue-2', - products = { - presets.missions.supply.convoy:extend({ name='factory-supply-blue-2', cost=2000}), - presets.missions.supply.transfer:extend({name='factory-transfer-blue2'}) - } - }), - presets.upgrades.supply.factoryTank:extend({ - name='factory-tank-blue-1', - products = { - } - }), - presets.upgrades.supply.factoryTank:extend({ - name='factory-tank-blue-2', - products = { - } - }), - presets.upgrades.supply.factoryTank:extend({ - name='factory-tank-blue-3', - products = { - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Factory.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Senaki.lua ]]----------------- - -zones.senaki = ZoneCommand:new("Senaki") -zones.senaki.initialState = { side=1 } -zones.senaki.keepActive = true -zones.senaki.isHeloSpawn = true -zones.senaki.isPlaneSpawn = true -zones.senaki.maxResource = 50000 -zones.senaki:defineUpgrades({ - [1] = - { - presets.upgrades.basic.comPost:extend({ - name='senaki-compost-red', - products = { - presets.special.red.infantry:extend({ name='senaki-defense-red'}), - presets.defenses.red.infantry:extend({ name='senaki-garrison-red'}) - } - }), - presets.upgrades.supply.fuelTank:extend({ - name='senaki-fuel-red', - products = { - presets.missions.supply.helo:extend({name='senaki-supply-red-1'}), - presets.missions.supply.helo:extend({name='senaki-supply-red-2'}), - presets.missions.supply.transfer:extend({name='senaki-transfer-red'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='senaki-comcenter-red', - products = { - presets.defenses.red.sa3:extend({ name='senaki-airdef-red'}), - presets.missions.attack.sead:extend({name='senaki-sead-red', altitude=25000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.attack.cas:extend({name='senaki-cas-red', altitude=15000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.bai:extend({name='senaki-cas-red', altitude=10000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.strike:extend({name='senaki-strike-red', altitude=20000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.patrol.aircraft:extend({name='senaki-patrol-red', altitude=25000, range=25}), - presets.missions.patrol.aircraft:extend({name='senaki-patrol-red-2', altitude=20000, range=25}) - } - }) - }, - [2] = - { - presets.upgrades.basic.comPost:extend({ - name='senaki-compost-blue', - products = { - presets.special.blue.infantry:extend({ name='senaki-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='senaki-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelTank:extend({ - name='senaki-fuel-blue', - products = { - presets.missions.supply.helo:extend({name='senaki-supply-blue-1'}), - presets.missions.supply.helo:extend({name='senaki-supply-blue-2'}), - presets.missions.supply.transfer:extend({name='senaki-transfer-blue'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='senaki-comcenter-blue', - products = { - presets.defenses.blue.shorad:extend({ name='senaki-airdef-blue'}), - presets.missions.attack.sead:extend({name='senaki-sead-blue', altitude=25000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.attack.cas:extend({name='senaki-cas-blue', altitude=15000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.bai:extend({name='senaki-cas-blue', altitude=10000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.strike:extend({name='senaki-strike-blue', altitude=20000, expend=AI.Task.WeaponExpend.TWO}), - presets.missions.patrol.aircraft:extend({name='senaki-patrol-blue', altitude=25000, range=25}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Senaki.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Kutaisi.lua ]]----------------- - -zones.kutaisi = ZoneCommand:new("Kutaisi") -zones.kutaisi.initialState = { side=1 } -zones.kutaisi.keepActive = true -zones.kutaisi.maxResource = 50000 -zones.kutaisi:defineUpgrades({ - [1] = - { - presets.upgrades.basic.comPost:extend({ - name='kutaisi-compost-red', - products = { - presets.special.red.infantry:extend({ name='kutaisi-defense-red'}), - presets.defenses.red.infantry:extend({ name='kutaisi-garrison-red'}) - } - }), - presets.upgrades.supply.fuelTank:extend({ - name='kutaisi-fuel-red', - products = { - presets.missions.supply.helo:extend({name='kutaisi-supply-red-1'}), - presets.missions.supply.helo:extend({name='kutaisi-supply-red-2'}), - presets.missions.supply.transfer:extend({name='kutaisi-transfer-red'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='kutaisi-comcenter-red', - products = { - presets.defenses.red.shorad:extend({ name='kutaisi-airdef-red'}), - presets.missions.attack.sead:extend({name='kutaisi-sead-red', altitude=25000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.attack.cas:extend({name='kutaisi-cas-red', altitude=15000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.bai:extend({name='kutaisi-cas-red', altitude=10000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.strike:extend({name='kutaisi-strike-red', altitude=20000, expend=AI.Task.WeaponExpend.HALF}), - presets.missions.patrol.aircraft:extend({name='kutaisi-patrol-red', altitude=25000, range=25}), - presets.missions.patrol.aircraft:extend({name='kutaisi-patrol-red-2', altitude=25000, range=25}) - } - }) - }, - [2] = - { - presets.upgrades.basic.comPost:extend({ - name='kutaisi-compost-blue', - products = { - presets.special.blue.infantry:extend({ name='kutaisi-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='kutaisi-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelTank:extend({ - name='kutaisi-fuel-blue', - products = { - presets.missions.supply.helo:extend({name='kutaisi-supply-blue-1'}), - presets.missions.supply.helo:extend({name='kutaisi-supply-blue-2'}), - presets.missions.supply.transfer:extend({name='kutaisi-transfer-blue'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='kutaisi-comcenter-blue', - products = { - presets.defenses.blue.shorad:extend({ name='kutaisi-airdef-blue'}), - presets.missions.attack.sead:extend({name='kutaisi-sead-blue', altitude=25000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.attack.cas:extend({name='kutaisi-cas-blue', altitude=15000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.bai:extend({name='kutaisi-cas-blue', altitude=10000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.strike:extend({name='kutaisi-strike-blue', altitude=20000, expend=AI.Task.WeaponExpend.TWO}), - presets.missions.patrol.aircraft:extend({name='kutaisi-patrol-blue', altitude=25000, range=25}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Kutaisi.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Prohladniy.lua ]]----------------- - -zones.prohladniy = ZoneCommand:new("Prohladniy") -zones.prohladniy.initialState = { side=1 } -zones.prohladniy:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='prohladniy-tent-red', - products = { - presets.special.red.infantry:extend({ name='prohladniy-defense-red'}), - presets.defenses.red.infantry:extend({ name='prohladniy-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='prohladniy-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='prohladniy-supply-red'}), - presets.missions.supply.transfer:extend({name='prohladniy-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='prohladniy-ammo-red', - products = { - presets.missions.attack.surface:extend({name='prohladniy-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='prohladniy-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='prohladniy-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='prohladniy-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='prohladniy-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='prohladniy-supply-blue'}), - presets.missions.supply.transfer:extend({name='prohladniy-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='prohladniy-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='prohladniy-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Prohladniy.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Tallyk.lua ]]----------------- - -zones.tallyk = ZoneCommand:new("Tallyk") -zones.tallyk.initialState = { side=1 } -zones.tallyk.keepActive = true -zones.tallyk:defineUpgrades({ - [1] = - { - presets.upgrades.basic.tent:extend({ - name='tallyk-tent-red', - products = { - presets.special.red.infantry:extend({ name='tallyk-defense-red'}), - presets.defenses.red.infantry:extend({ name='tallyk-garrison-red'}), - presets.missions.attack.surface:extend({name='tallyk-assault-red'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='tallyk-comcenter-red', - products = { - presets.defenses.red.sam:extend({ name='tallyk-sam-red'}) - } - }) - }, - [2] = - { - presets.upgrades.basic.tent:extend({ - name='tallyk-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='tallyk-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='tallyk-garrison-blue'}), - presets.missions.attack.surface:extend({name='tallyk-assault-blue'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='tallyk-comcenter-blue', - products = { - presets.defenses.blue.sam:extend({ name='tallyk-sam-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Tallyk.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Terek.lua ]]----------------- - -zones.terek = ZoneCommand:new("Terek") -zones.terek.initialState = { side=1 } -zones.terek:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='terek-tent-red', - products = { - presets.special.red.infantry:extend({ name='terek-defense-red'}), - presets.defenses.red.infantry:extend({ name='terek-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='terek-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='terek-supply-red'}), - presets.missions.supply.transfer:extend({name='terek-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='terek-ammo-red', - products = { - presets.missions.attack.surface:extend({name='terek-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='terek-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='terek-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='terek-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='terek-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='terek-supply-blue'}), - presets.missions.supply.transfer:extend({name='terek-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='terek-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='terek-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Terek.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Humara.lua ]]----------------- - -zones.humara = ZoneCommand:new("Humara") -zones.humara.initialState = { side=1 } -zones.humara:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='humara-tent-red', - products = { - presets.special.red.infantry:extend({ name='humara-defense-red'}), - presets.defenses.red.infantry:extend({ name='humara-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='humara-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='humara-supply-red'}), - presets.missions.supply.transfer:extend({name='humara-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='humara-ammo-red', - products = { - presets.missions.attack.surface:extend({name='humara-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='humara-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='humara-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='humara-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='humara-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='humara-supply-blue'}), - presets.missions.supply.transfer:extend({name='humara-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='humara-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='humara-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Humara.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Ochamchira.lua ]]----------------- - -zones.ochamchira = ZoneCommand:new("Ochamchira") -zones.ochamchira.initialState = { side=1 } -zones.ochamchira:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='ochamchira-tent-red', - products = { - presets.special.red.infantry:extend({ name='ochamchira-defense-red'}), - presets.defenses.red.infantry:extend({ name='ochamchira-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='ochamchira-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='ochamchira-supply-red'}), - presets.missions.supply.transfer:extend({name='ochamchira-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='ochamchira-ammo-red', - products = { - presets.missions.attack.surface:extend({name='ochamchira-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='ochamchira-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='ochamchira-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='ochamchira-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='ochamchira-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='ochamchira-supply-blue'}), - presets.missions.supply.transfer:extend({name='ochamchira-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='ochamchira-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='ochamchira-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Ochamchira.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/November.lua ]]----------------- - -zones.november = ZoneCommand:new("November") -zones.november.initialState = { side=1 } -zones.november.isHeloSpawn = true -zones.november:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='november-tent-red', - products = { - presets.special.red.infantry:extend({ name='november-defense-red'}), - presets.defenses.red.infantry:extend({ name='november-garrison-red'}) - } - }), - presets.upgrades.supply.fuelTankFarp:extend({ - name='november-fuel-red', - products = { - presets.missions.supply.helo:extend({name='november-supply-red'}), - presets.missions.supply.helo:extend({name='november-supply-red-1'}), - presets.missions.supply.transfer:extend({name='november-transfer-red'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='november-comcenter-red', - products = { - presets.defenses.red.shorad:extend({name='november-sam-red'}), - presets.missions.attack.helo:extend({name='november-cas-red', altitude=200, expend=AI.Task.WeaponExpend.HALF }) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='november-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='november-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='november-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelTankFarp:extend({ - name='november-fuel-blue', - products = { - presets.missions.supply.helo:extend({name='november-supply-blue'}), - presets.missions.supply.helo:extend({name='november-supply-blue-1'}), - presets.missions.supply.transfer:extend({name='november-transfer-blue'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='november-comcenter-blue', - products = { - presets.defenses.blue.shorad:extend({name='november-sam-blue'}), - presets.missions.attack.helo:extend({name='november-cas-blue', altitude=200, expend=AI.Task.WeaponExpend.HALF }) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/November.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/XRay.lua ]]----------------- - -zones.xray = ZoneCommand:new("XRay") -zones.xray.initialState = { side=1 } -zones.xray:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='xray-tent-red', - products = { - presets.special.red.infantry:extend({ name='xray-defense-red'}), - presets.defenses.red.infantry:extend({ name='xray-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='xray-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='xray-supply-red'}), - presets.missions.supply.helo:extend({name='xray-supply-red-2'}), - presets.missions.supply.transfer:extend({name='xray-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='xray-ammo-red', - products = { - presets.missions.attack.surface:extend({name='xray-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='xray-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='xray-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='xray-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='xray-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='xray-supply-blue'}), - presets.missions.supply.helo:extend({name='xray-supply-blue-2'}), - presets.missions.supply.transfer:extend({name='xray-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='xray-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='xray-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/XRay.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Whiskey.lua ]]----------------- - -zones.whiskey = ZoneCommand:new("Whiskey") -zones.whiskey.initialState = { side=1 } -zones.whiskey:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='whiskey-tent-red', - products = { - presets.special.red.infantry:extend({ name='whiskey-defense-red'}), - presets.defenses.red.infantry:extend({ name='whiskey-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='whiskey-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='whiskey-supply-red'}), - presets.missions.supply.transfer:extend({name='whiskey-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='whiskey-ammo-red', - products = { - presets.missions.attack.surface:extend({name='whiskey-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='whiskey-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='whiskey-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='whiskey-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='whiskey-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='whiskey-supply-blue'}), - presets.missions.supply.transfer:extend({name='whiskey-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='whiskey-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='whiskey-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Whiskey.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Mine.lua ]]----------------- - -zones.mine = ZoneCommand:new("Mine") -zones.mine.initialState = { side=1 } -zones.mine:defineUpgrades({ - [1] = - { - presets.upgrades.basic.tent:extend({ - name='mine-tent-red', - products = { - presets.special.red.infantry:extend({ name='mine-defense-red'}), - presets.defenses.red.infantry:extend({ name='mine-garrison-red'}) - } - }), - presets.upgrades.supply.excavator:extend({ - name='mine-excavator-red-1', - products = { - presets.missions.supply.convoy:extend({ name='mine-supply-red'}), - presets.missions.supply.transfer:extend({name='mine-transfer-red'}) - } - }), - presets.upgrades.supply.excavator:extend({ - name='mine-excavator-red-2', - products = { - presets.missions.supply.convoy:extend({ name='mine-supply-red'}), - presets.missions.supply.transfer:extend({name='mine-transfer-red'}) - } - }), - presets.upgrades.supply.excavator:extend({ - name='mine-excavator-red-3', - products = { - presets.missions.supply.convoy:extend({ name='mine-supply-red'}), - presets.missions.supply.transfer:extend({name='mine-transfer-red'}) - } - }) - }, - [2] = - { - presets.upgrades.basic.tent:extend({ - name='mine-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='mine-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='mine-garrison-blue'}) - } - }), - presets.upgrades.supply.excavator:extend({ - name='mine-excavator-blue-1', - products = { - presets.missions.supply.convoy:extend({ name='mine-supply-blue'}), - presets.missions.supply.transfer:extend({name='mine-transfer-blue'}) - } - }), - presets.upgrades.supply.excavator:extend({ - name='mine-excavator-blue-2', - products = { - presets.missions.supply.convoy:extend({ name='mine-supply-blue'}), - presets.missions.supply.transfer:extend({name='mine-transfer-blue'}) - } - }), - presets.upgrades.supply.excavator:extend({ - name='mine-excavator-blue-3', - products = { - presets.missions.supply.convoy:extend({ name='mine-supply-blue'}), - presets.missions.supply.transfer:extend({name='mine-transfer-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Mine.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Papa.lua ]]----------------- - -zones.papa = ZoneCommand:new("Papa") -zones.papa.initialState = { side=1 } -zones.papa.keepActive = true -zones.papa:defineUpgrades({ - [1] = - { - presets.upgrades.basic.tent:extend({ - name='papa-tent-red', - products = { - presets.special.red.infantry:extend({ name='papa-defense-red'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='papa-comcenter-red', - products = { - presets.defenses.red.sam:extend({ name='papa-sam-red'}) - } - }) - }, - [2] = - { - presets.upgrades.basic.tent:extend({ - name='papa-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='papa-defense-blue'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='papa-comcenter-blue', - products = { - presets.defenses.blue.sam:extend({ name='papa-sam-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Papa.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Sukhumi.lua ]]----------------- - -zones.sukhumi = ZoneCommand:new("Sukhumi") -zones.sukhumi.initialState = { side=1 } -zones.sukhumi.keepActive = true -zones.sukhumi.maxResource = 50000 -zones.sukhumi:defineUpgrades({ - [1] = - { - presets.upgrades.basic.comPost:extend({ - name='sukhumi-compost-red', - products = { - presets.special.red.infantry:extend({ name='sukhumi-defense-red'}), - presets.defenses.red.infantry:extend({ name='sukhumi-garrison-red'}) - } - }), - presets.upgrades.supply.fuelTank:extend({ - name='sukhumi-fuel-red', - products = { - presets.missions.supply.helo:extend({name='sukhumi-supply-red-1'}), - presets.missions.supply.helo:extend({name='sukhumi-supply-red-2'}), - presets.missions.supply.transfer:extend({name='sukhumi-transfer-red'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='sukhumi-comcenter-red', - products = { - presets.defenses.red.sa11:extend({ name='sukhumi-airdef-red'}), - presets.missions.attack.sead:extend({name='sukhumi-sead-red', altitude=25000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.attack.cas:extend({name='sukhumi-cas-red', altitude=15000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.bai:extend({name='sukhumi-cas-red', altitude=10000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.strike:extend({name='sukhumi-strike-red', altitude=20000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.patrol.aircraft:extend({name='sukhumi-patrol-red', altitude=25000, range=25}), - presets.missions.patrol.aircraft:extend({name='sukhumi-patrol-red-2', altitude=25000, range=25}) - } - }) - }, - [2] = - { - presets.upgrades.basic.comPost:extend({ - name='sukhumi-compost-blue', - products = { - presets.special.blue.infantry:extend({ name='sukhumi-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='sukhumi-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelTank:extend({ - name='sukhumi-fuel-blue', - products = { - presets.missions.supply.helo:extend({name='sukhumi-supply-blue-1'}), - presets.missions.supply.helo:extend({name='sukhumi-supply-blue-2'}), - presets.missions.supply.transfer:extend({name='sukhumi-transfer-blue'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='sukhumi-comcenter-blue', - products = { - presets.defenses.blue.nasams:extend({ name='sukhumi-airdef-blue'}), - presets.missions.attack.sead:extend({name='sukhumi-sead-blue', altitude=25000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.attack.cas:extend({name='sukhumi-cas-blue', altitude=15000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.bai:extend({name='sukhumi-cas-blue', altitude=10000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.strike:extend({name='sukhumi-strike-blue', altitude=20000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.patrol.aircraft:extend({name='sukhumi-patrol-blue', altitude=25000, range=25}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Sukhumi.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Farm.lua ]]----------------- - -zones.farm = ZoneCommand:new("Farm") -zones.farm.initialState = { side=1 } -zones.farm:defineUpgrades({ - [1] = - { - presets.upgrades.basic.tent:extend({ - name='farm-tent-red', - products = { - presets.special.red.infantry:extend({ name='farm-defense-red'}), - presets.defenses.red.infantry:extend({ name='farm-garrison-red'}) - } - }), - presets.upgrades.supply.farm1:extend({ - name='farm-prod-red-1', - products = { - presets.missions.supply.convoy:extend({ name='farm-supply-red'}), - presets.missions.supply.transfer:extend({name='farm-transfer-red'}) - } - }), - presets.upgrades.supply.farm2:extend({ - name='farm-prod-red-2', - products = { - presets.missions.supply.convoy:extend({ name='farm-supply-red'}), - presets.missions.supply.transfer:extend({name='farm-transfer-red'}) - } - }) - }, - [2] = - { - presets.upgrades.basic.tent:extend({ - name='farm-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='farm-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='farm-garrison-blue'}) - } - }), - presets.upgrades.supply.farm1:extend({ - name='farm-prod-blue-1', - products = { - presets.missions.supply.convoy:extend({ name='farm-supply-blue'}), - presets.missions.supply.transfer:extend({name='farm-transfer-blue'}) - } - }), - presets.upgrades.supply.farm2:extend({ - name='farm-prod-blue-2', - products = { - presets.missions.supply.convoy:extend({ name='farm-supply-blue'}), - presets.missions.supply.transfer:extend({name='farm-transfer-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Farm.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Romeo.lua ]]----------------- - -zones.romeo = ZoneCommand:new("Romeo") -zones.romeo.initialState = { side=1 } -zones.romeo:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='romeo-tent-red', - products = { - presets.special.red.infantry:extend({ name='romeo-defense-red'}), - presets.defenses.red.infantry:extend({ name='romeo-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='romeo-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='romeo-supply-red'}), - presets.missions.supply.transfer:extend({name='romeo-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='romeo-ammo-red', - products = { - presets.missions.attack.surface:extend({name='romeo-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='romeo-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='romeo-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='romeo-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='romeo-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='romeo-supply-blue'}), - presets.missions.supply.transfer:extend({name='romeo-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='romeo-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='romeo-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Romeo.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Zulu.lua ]]----------------- - -zones.zulu = ZoneCommand:new("Zulu") -zones.zulu.initialState = { side=1 } -zones.zulu:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='zulu-tent-red', - products = { - presets.special.red.infantry:extend({ name='zulu-defense-red'}), - presets.defenses.red.infantry:extend({ name='zulu-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='zulu-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='zulu-supply-red'}), - presets.missions.supply.transfer:extend({name='zulu-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='zulu-ammo-red', - products = { - presets.missions.attack.surface:extend({name='zulu-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='zulu-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='zulu-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='zulu-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='zulu-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='zulu-supply-blue'}), - presets.missions.supply.transfer:extend({name='zulu-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='zulu-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='zulu-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Zulu.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Yankee.lua ]]----------------- - -zones.yankee = ZoneCommand:new("Yankee") -zones.yankee.initialState = { side=1 } -zones.yankee:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='yankee-tent-red', - products = { - presets.special.red.infantry:extend({ name='yankee-defense-red'}), - presets.defenses.red.infantry:extend({ name='yankee-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='yankee-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='yankee-supply-red'}), - presets.missions.supply.transfer:extend({name='yankee-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='yankee-ammo-red', - products = { - presets.missions.attack.surface:extend({name='yankee-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='yankee-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='yankee-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='yankee-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='yankee-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='yankee-supply-blue'}), - presets.missions.supply.transfer:extend({name='yankee-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='yankee-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='yankee-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Yankee.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Malgobek.lua ]]----------------- - -zones.malgobek = ZoneCommand:new("Malgobek") -zones.malgobek.initialState = { side=1 } -zones.malgobek:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='malgobek-tent-red', - products = { - presets.special.red.infantry:extend({ name='malgobek-defense-red'}), - presets.defenses.red.infantry:extend({ name='malgobek-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='malgobek-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='malgobek-supply-red'}), - presets.missions.supply.transfer:extend({name='malgobek-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='malgobek-ammo-red', - products = { - presets.missions.attack.surface:extend({name='malgobek-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='malgobek-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='malgobek-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='malgobek-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='malgobek-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='malgobek-supply-blue'}), - presets.missions.supply.transfer:extend({name='malgobek-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='malgobek-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='malgobek-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Malgobek.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Kilo.lua ]]----------------- - -zones.kilo = ZoneCommand:new("Kilo") -zones.kilo.initialState = { side=1 } -zones.kilo:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='kilo-tent-red', - products = { - presets.special.red.infantry:extend({ name='kilo-defense-red'}), - presets.defenses.red.infantry:extend({ name='kilo-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='kilo-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='kilo-supply-red'}), - presets.missions.supply.transfer:extend({name='kilo-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='kilo-ammo-red', - products = { - presets.missions.attack.surface:extend({name='kilo-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='kilo-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='kilo-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='kilo-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='kilo-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='kilo-supply-blue'}), - presets.missions.supply.transfer:extend({name='kilo-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='kilo-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='kilo-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Kilo.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Quebec.lua ]]----------------- - -zones.quebec = ZoneCommand:new("Quebec") -zones.quebec.initialState = { side=1 } -zones.quebec.keepActive = true -zones.quebec:defineUpgrades({ - [1] = - { - presets.upgrades.basic.tent:extend({ - name='quebec-tent-red', - products = { - presets.special.red.infantry:extend({ name='quebec-defense-red'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='quebec-comcenter-red', - products = { - presets.defenses.red.sam:extend({ name='quebec-sam-red'}) - } - }) - }, - [2] = - { - presets.upgrades.basic.tent:extend({ - name='quebec-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='quebec-defense-blue'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='quebec-comcenter-blue', - products = { - presets.defenses.blue.sam:extend({ name='quebec-sam-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Quebec.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/OilFields.lua ]]----------------- - -zones.oilfields = ZoneCommand:new("Oil Fields") -zones.oilfields.initialState = { side=1 } -zones.oilfields:defineUpgrades({ - [1] = { - presets.upgrades.basic.outpost:extend({ - name='oilfields-outpost-red', - products = { - presets.special.red.infantry:extend({ name='oilfields-defense-red'}), - presets.defenses.red.infantry:extend({ name='oilfields-garrison-red'}) - } - }), - presets.upgrades.supply.oilPump:extend({ - name='oilfields-pump-red-1', - products = { - presets.missions.supply.transfer:extend({name='oilfields-transfer-red1'}) - } - }), - presets.upgrades.supply.oilPump:extend({ - name='oilfields-pump-red-2', - products = { - presets.missions.supply.convoy:extend({name='oilfields-supply-red-1'}) - } - }), - presets.upgrades.supply.oilPump:extend({ - name='oilfields-pump-red-3', - products = { - presets.missions.supply.transfer:extend({name='oilfields-transfer-red2'}) - } - }), - presets.upgrades.supply.oilPump:extend({ - name='oilfields-pump-red-4', - products = { - presets.missions.supply.convoy:extend({name='oilfields-supply-red-2'}) - } - }) - }, - [2] = { - presets.upgrades.basic.outpost:extend({ - name='oilfields-outpost-blue', - products = { - presets.special.blue.infantry:extend({ name='oilfields-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='oilfields-garrison-blue'}) - } - }), - presets.upgrades.supply.oilPump:extend({ - name='oilfields-pump-blue-1', - products = { - presets.missions.supply.transfer:extend({name='oilfields-transfer-blue1'}) - } - }), - presets.upgrades.supply.oilPump:extend({ - name='oilfields-pump-blue-2', - products = { - presets.missions.supply.convoy:extend({name='oilfields-supply-blue-1'}) - } - }), - presets.upgrades.supply.oilPump:extend({ - name='oilfields-pump-blue-3', - products = { - presets.missions.supply.transfer:extend({name='oilfields-transfer-blue2'}) - } - }), - presets.upgrades.supply.oilPump:extend({ - name='oilfields-pump-blue-4', - products = { - presets.missions.supply.convoy:extend({name='oilfields-supply-blue-2'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/OilFields.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Echo.lua ]]----------------- - -zones.echo = ZoneCommand:new("Echo") -zones.echo.initialState = { side=2 } -zones.echo:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='echo-tent-red', - products = { - presets.special.red.infantry:extend({ name='echo-defense-red'}), - presets.defenses.red.infantry:extend({ name='echo-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='echo-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='echo-supply-red'}), - presets.missions.supply.transfer:extend({name='echo-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='echo-ammo-red', - products = { - presets.missions.attack.surface:extend({name='echo-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='echo-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='echo-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='echo-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='echo-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='echo-supply-blue'}), - presets.missions.supply.transfer:extend({name='echo-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='echo-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='echo-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Echo.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Kobuleti.lua ]]----------------- - -zones.kobuleti = ZoneCommand:new("Kobuleti") -zones.kobuleti.initialState = { side=2 } -zones.kobuleti.keepActive = true -zones.kobuleti.isHeloSpawn = true -zones.kobuleti.isPlaneSpawn = true -zones.kobuleti.maxResource = 50000 -zones.kobuleti:defineUpgrades({ - [1] = - { - presets.upgrades.basic.comPost:extend({ - name='kobuleti-compost-red', - products = { - presets.special.red.infantry:extend({ name='kobuleti-defense-red'}), - presets.defenses.red.infantry:extend({ name='kobuleti-garrison-red'}), - presets.missions.attack.surface:extend({ name='kobuleti-assault-red'}) - } - }), - presets.upgrades.supply.fuelTank:extend({ - name='kobuleti-fuel-red', - products = { - presets.missions.supply.helo:extend({name='kobuleti-supply-red-1'}), - presets.missions.supply.helo:extend({name='kobuleti-supply-red-2'}), - presets.missions.supply.transfer:extend({name='kobuleti-transfer-red'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='kobuleti-comcenter-red', - products = { - presets.defenses.red.shorad:extend({ name='kobuleti-airdef-red'}), - presets.missions.attack.sead:extend({name='kobuleti-sead-red', altitude=25000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.attack.cas:extend({name='kobuleti-cas-red', altitude=15000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.bai:extend({name='kobuleti-cas-red', altitude=10000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.strike:extend({name='kobuleti-strike-red', altitude=20000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.patrol.aircraft:extend({name='kobuleti-patrol-red', altitude=25000, range=25}) - } - }) - }, - [2] = - { - presets.upgrades.basic.comPost:extend({ - name='kobuleti-compost-blue', - products = { - presets.special.blue.infantry:extend({ name='kobuleti-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='kobuleti-garrison-blue'}), - presets.missions.attack.surface:extend({ name='kobuleti-assault-blue'}) - } - }), - presets.upgrades.supply.fuelTank:extend({ - name='kobuleti-fuel-blue', - products = { - presets.missions.supply.helo:extend({name='kobuleti-supply-blue-1'}), - presets.missions.supply.helo:extend({name='kobuleti-supply-blue-2'}), - presets.missions.supply.transfer:extend({name='kobuleti-transfer-blue'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='kobuleti-comcenter-blue', - products = { - presets.defenses.blue.shorad:extend({ name='kobuleti-airdef-blue'}), - presets.missions.attack.sead:extend({name='kobuleti-sead-blue', altitude=25000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.attack.cas:extend({name='kobuleti-cas-blue', altitude=15000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.bai:extend({name='kobuleti-cas-blue', altitude=10000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.strike:extend({name='kobuleti-strike-blue', altitude=20000, expend=AI.Task.WeaponExpend.TWO}), - presets.missions.patrol.aircraft:extend({name='kobuleti-patrol-blue', altitude=25000, range=25}), - presets.missions.support.awacs:extend({name='kobuleti-awacs-blue', altitude=30000, freq=258.5}), - presets.missions.support.tanker:extend({name='kobuleti-tanker-blue', altitude=23000, freq=258, tacan='38', variant='Boom'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Kobuleti.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Alpha.lua ]]----------------- - -zones.alpha = ZoneCommand:new('Alpha') -zones.alpha.initialState = { side=2 } -zones.alpha:defineUpgrades({ - [1] = --red side - { - presets.upgrades.basic.tent:extend({ - name = 'alpha-tent-red', - products = { - presets.special.red.infantry:extend({ name='alpha-defense-red'}), - presets.defenses.red.infantry:extend({ name='alpha-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name = 'alpha-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({ name='alpha-supply-red'}), - presets.missions.supply.transfer:extend({name='alpha-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name = 'alpha-ammo-red', - products = { - presets.missions.attack.surface:extend({ name='alpha-assault-red'}) - } - }) - }, - [2] = --blue side - { - presets.upgrades.basic.tent:extend({ - name = 'alpha-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='alpha-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='alpha-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name = 'alpha-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({ name='alpha-supply-blue'}), - presets.missions.supply.transfer:extend({name='alpha-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name = 'alpha-ammo-blue', - products = { - presets.missions.attack.surface:extend({ name='alpha-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Alpha.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Foxtrot.lua ]]----------------- - -zones.foxtrot = ZoneCommand:new("Foxtrot") -zones.foxtrot.initialState = { side=2 } -zones.foxtrot:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='foxtrot-tent-red', - products = { - presets.special.red.infantry:extend({ name='foxtrot-defense-red'}), - presets.defenses.red.infantry:extend({ name='foxtrot-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='foxtrot-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='foxtrot-supply-red'}), - presets.missions.supply.transfer:extend({name='foxtrot-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='foxtrot-ammo-red', - products = { - presets.missions.attack.surface:extend({name='foxtrot-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='foxtrot-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='foxtrot-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='foxtrot-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='foxtrot-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='foxtrot-supply-blue'}), - presets.missions.supply.transfer:extend({name='foxtrot-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='foxtrot-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='foxtrot-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Foxtrot.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Sierra.lua ]]----------------- - -zones.sierra = ZoneCommand:new("Sierra") -zones.sierra.initialState = { side=1 } -zones.sierra.isHeloSpawn = true -zones.sierra:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='sierra-tent-red', - products = { - presets.special.red.infantry:extend({ name='sierra-defense-red'}), - presets.defenses.red.infantry:extend({ name='sierra-garrison-red'}) - } - }), - presets.upgrades.supply.fuelTankFarp:extend({ - name='sierra-fuel-red', - products = { - presets.missions.supply.helo:extend({name='sierra-supply-red'}), - presets.missions.supply.helo:extend({name='sierra-supply-red-1'}), - presets.missions.supply.transfer:extend({name='sierra-transfer-red'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='sierra-comcenter-red', - products = { - presets.defenses.red.shorad:extend({name='sierra-sam-red'}), - presets.missions.attack.helo:extend({name='sierra-cas-red', altitude=200, expend=AI.Task.WeaponExpend.HALF }) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='sierra-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='sierra-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='sierra-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelTankFarp:extend({ - name='sierra-fuel-blue', - products = { - presets.missions.supply.helo:extend({name='sierra-supply-blue'}), - presets.missions.supply.helo:extend({name='sierra-supply-blue-1'}), - presets.missions.supply.transfer:extend({name='sierra-transfer-blue'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='sierra-comcenter-blue', - products = { - presets.defenses.blue.shorad:extend({name='sierra-sam-blue'}), - presets.missions.attack.helo:extend({name='sierra-cas-blue', altitude=200, expend=AI.Task.WeaponExpend.HALF }) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Sierra.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Oni.lua ]]----------------- - -zones.oni = ZoneCommand:new("Oni") -zones.oni.initialState = { side=1 } -zones.oni:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='oni-tent-red', - products = { - presets.special.red.infantry:extend({ name='oni-defense-red'}), - presets.defenses.red.infantry:extend({ name='oni-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='oni-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='oni-supply-red'}), - presets.missions.supply.helo:extend({name='oni-supply-red-2'}), - presets.missions.supply.transfer:extend({name='oni-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='oni-ammo-red', - products = { - presets.missions.attack.surface:extend({name='oni-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='oni-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='oni-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='oni-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='oni-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='oni-supply-blue'}), - presets.missions.supply.helo:extend({name='oni-supply-blue-2'}), - presets.missions.supply.transfer:extend({name='oni-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='oni-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='oni-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Oni.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Hotel.lua ]]----------------- - -zones.hotel = ZoneCommand:new("Hotel") -zones.hotel.initialState = nil -zones.hotel:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='hotel-tent-red', - products = { - presets.special.red.infantry:extend({ name='hotel-defense-red'}), - presets.defenses.red.infantry:extend({ name='hotel-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='hotel-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='hotel-supply-red'}), - presets.missions.supply.transfer:extend({name='hotel-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='hotel-ammo-red', - products = { - presets.missions.attack.surface:extend({name='hotel-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='hotel-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='hotel-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='hotel-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='hotel-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='hotel-supply-blue'}), - presets.missions.supply.transfer:extend({name='hotel-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='hotel-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='hotel-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Hotel.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Victor.lua ]]----------------- - -zones.victor = ZoneCommand:new("Victor") -zones.victor.initialState = { side=1 } -zones.victor:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='victor-tent-red', - products = { - presets.special.red.infantry:extend({ name='victor-defense-red'}), - presets.defenses.red.infantry:extend({ name='victor-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='victor-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='victor-supply-red'}), - presets.missions.supply.helo:extend({name='victor-supply-red-2'}), - presets.missions.supply.transfer:extend({name='victor-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='victor-ammo-red', - products = { - presets.missions.attack.surface:extend({name='victor-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='victor-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='victor-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='victor-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='victor-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='victor-supply-blue'}), - presets.missions.supply.helo:extend({name='victor-supply-blue-2'}), - presets.missions.supply.transfer:extend({name='victor-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='victor-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='victor-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Victor.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Tango.lua ]]----------------- - -zones.tango = ZoneCommand:new("Tango") -zones.tango.initialState = { side=1 } -zones.tango.isHeloSpawn = true -zones.tango:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='tango-tent-red', - products = { - presets.special.red.infantry:extend({ name='tango-defense-red'}), - presets.defenses.red.infantry:extend({ name='tango-garrison-red'}) - } - }), - presets.upgrades.supply.fuelTankFarp:extend({ - name='tango-fuel-red', - products = { - presets.missions.supply.helo:extend({name='tango-supply-red'}), - presets.missions.supply.helo:extend({name='tango-supply-red-1'}), - presets.missions.supply.transfer:extend({name='tango-transfer-red'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='tango-comcenter-red', - products = { - presets.defenses.red.shorad:extend({name='tango-sam-red'}), - presets.missions.attack.helo:extend({name='tango-cas-red', altitude=200, expend=AI.Task.WeaponExpend.HALF }) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='tango-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='tango-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='tango-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelTankFarp:extend({ - name='tango-fuel-blue', - products = { - presets.missions.supply.helo:extend({name='tango-supply-blue'}), - presets.missions.supply.helo:extend({name='tango-supply-blue-1'}), - presets.missions.supply.transfer:extend({name='tango-transfer-blue'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='tango-comcenter-blue', - products = { - presets.defenses.blue.shorad:extend({name='tango-sam-blue'}), - presets.missions.attack.helo:extend({name='tango-cas-blue', altitude=200, expend=AI.Task.WeaponExpend.HALF }) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Tango.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Unal.lua ]]----------------- - -zones.unal = ZoneCommand:new("Unal") -zones.unal.initialState = { side=1 } -zones.unal.isHeloSpawn = true -zones.unal:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='unal-tent-red', - products = { - presets.special.red.infantry:extend({ name='unal-defense-red'}), - presets.defenses.red.infantry:extend({ name='unal-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='unal-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='unal-supply-red'}), - presets.missions.supply.helo:extend({name='unal-supply-red-2'}), - presets.missions.supply.transfer:extend({name='unal-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='unal-ammo-red', - products = { - presets.missions.attack.surface:extend({name='unal-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='unal-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='unal-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='unal-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='unal-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='unal-supply-blue'}), - presets.missions.supply.helo:extend({name='unal-supply-blue-2'}), - presets.missions.supply.transfer:extend({name='unal-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='unal-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='unal-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Unal.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Beslan.lua ]]----------------- - -zones.beslan = ZoneCommand:new("Beslan") -zones.beslan.initialState = { side=1 } -zones.beslan.keepActive = true -zones.beslan.maxResource = 50000 -zones.beslan:defineUpgrades({ - [1] = - { - presets.upgrades.basic.comPost:extend({ - name='beslan-compost-red', - products = { - presets.special.red.infantry:extend({ name='beslan-defense-red'}), - presets.defenses.red.infantry:extend({ name='beslan-garrison-red'}) - } - }), - presets.upgrades.supply.fuelTank:extend({ - name='beslan-fuel-red', - products = { - presets.missions.supply.helo:extend({name='beslan-supply-red-1'}), - presets.missions.supply.helo:extend({name='beslan-supply-red-2'}), - presets.missions.supply.convoy_escorted:extend({name='beslan-supply-red-3'}), - presets.missions.supply.transfer:extend({name='beslan-transfer-red'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='beslan-comcenter-red', - products = { - presets.defenses.red.sa5:extend({ name='beslan-airdef-red'}), - presets.missions.attack.sead:extend({name='beslan-sead-red', altitude=25000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.attack.strike:extend({name='beslan-strike-red', altitude=30000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.attack.strike:extend({name='beslan-strike-red-1', altitude=30000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.patrol.aircraft:extend({name='beslan-patrol-red', altitude=25000, range=25}) - } - }) - }, - [2] = - { - presets.upgrades.basic.comPost:extend({ - name='beslan-compost-blue', - products = { - presets.special.blue.infantry:extend({ name='beslan-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='beslan-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelTank:extend({ - name='beslan-fuel-blue', - products = { - presets.missions.supply.helo:extend({name='beslan-supply-blue-1'}), - presets.missions.supply.helo:extend({name='beslan-supply-blue-2'}), - presets.missions.supply.convoy_escorted:extend({name='beslan-supply-blue-3'}), - presets.missions.supply.transfer:extend({name='beslan-transfer-blue'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='beslan-comcenter-blue', - products = { - presets.defenses.blue.patriot:extend({ name='beslan-airdef-blue'}), - presets.missions.attack.sead:extend({name='beslan-sead-blue', altitude=25000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.attack.strike:extend({name='beslan-strike-blue', altitude=30000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.attack.strike:extend({name='beslan-strike-blue-1', altitude=30000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.patrol.aircraft:extend({name='beslan-patrol-blue', altitude=25000, range=25}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Beslan.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Bravo.lua ]]----------------- - -zones.bravo = ZoneCommand:new("Bravo") -zones.bravo.initialState = { side=2 } -zones.bravo:defineUpgrades({ - [1] = - { - presets.upgrades.basic.comPost:extend({ - name='bravo-compost-red', - products = { - presets.special.red.infantry:extend({ name='bravo-defense-red'}), - presets.defenses.red.infantry:extend({ name='bravo-garrison-red'}) - } - }), - presets.upgrades.supply.fuelTankFarp:extend({ - name='bravo-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({ name='bravo-supply-red'}), - presets.missions.supply.transfer:extend({name='bravo-transfer-red'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='bravo-comcenter-red', - products = { - presets.defenses.red.shorad:extend({ name='bravo-airdef-red'}), - presets.missions.attack.helo:extend({name='bravo-attack-red', altitude=200, expend=AI.Task.WeaponExpend.HALF}) - } - }) - }, - [2] = - { - presets.upgrades.basic.comPost:extend({ - name='bravo-compost-blue', - products = { - presets.special.blue.infantry:extend({ name='bravo-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='bravo-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelTankFarp:extend({ - name='bravo-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({ name='bravo-supply-blue'}), - presets.missions.supply.transfer:extend({name='bravo-transfer-blue'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='bravo-comcenter-blue', - products = { - presets.defenses.blue.shorad:extend({ name='bravo-airdef-blue'}), - presets.missions.attack.helo:extend({name='bravo-attack-blue', altitude=200, expend=AI.Task.WeaponExpend.HALF }) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Bravo.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/WeaponDepot.lua ]]----------------- - -zones.weapondepot = ZoneCommand:new("Weapon Depot") -zones.weapondepot.initialState = { side=1 } -zones.weapondepot:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='weapons-tent-red', - products = { - presets.special.red.infantry:extend({ name='weapons-defense-red'}), - presets.defenses.red.infantry:extend({ name='weapons-garrison-red'}) - } - }), - presets.upgrades.supply.ammoDepot:extend({ - name='weapons-ammo-red-1', - products = { - presets.missions.supply.convoy:extend({name='weapons-supply-red-1'}), - presets.missions.supply.transfer:extend({name='weapons-transfer-red-1'}) - } - }), - presets.upgrades.supply.ammoDepot:extend({ - name='weapons-ammo-red-2', - products = { - presets.missions.supply.convoy:extend({name='weapons-supply-red-2'}), - presets.missions.supply.transfer:extend({name='weapons-transfer-red-2'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='weapons-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='weapons-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='weapons-garrison-blue'}) - } - }), - presets.upgrades.supply.ammoDepot:extend({ - name='weapons-ammo-blue-1', - products = { - presets.missions.supply.convoy:extend({name='weapons-supply-blue-1'}), - presets.missions.supply.transfer:extend({name='weapons-transfer-blue-1'}) - } - }), - presets.upgrades.supply.ammoDepot:extend({ - name='weapons-ammo-blue-2', - products = { - presets.missions.supply.convoy:extend({name='weapons-supply-blue-2'}), - presets.missions.supply.transfer:extend({name='weapons-transfer-blue-2'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/WeaponDepot.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Delta.lua ]]----------------- - -zones.delta = ZoneCommand:new("Delta") -zones.delta.initialState = { side=2 } -zones.delta:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='delta-tent-red', - products = { - presets.special.red.infantry:extend({ name='delta-defense-red'}), - presets.defenses.red.infantry:extend({ name='delta-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='delta-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='delta-supply-red'}), - presets.missions.supply.transfer:extend({name='delta-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='delta-ammo-red', - products = { - presets.missions.attack.surface:extend({name='delta-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='delta-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='delta-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='delta-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='delta-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='delta-supply-blue'}), - presets.missions.supply.transfer:extend({name='delta-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='delta-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='delta-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Delta.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Cherkessk.lua ]]----------------- - -zones.cherkessk = ZoneCommand:new("Cherkessk") -zones.cherkessk.initialState = { side=1 } -zones.cherkessk.isHeloSpawn = true -zones.cherkessk:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='cherkessk-tent-red', - products = { - presets.special.red.infantry:extend({ name='cherkessk-defense-red'}), - presets.defenses.red.infantry:extend({ name='cherkessk-garrison-red'}) - } - }), - presets.upgrades.supply.fuelTankFarp:extend({ - name='cherkessk-fuel-red', - products = { - presets.missions.supply.helo:extend({name='cherkessk-supply-red'}), - presets.missions.supply.helo:extend({name='cherkessk-supply-red-1'}), - presets.missions.supply.transfer:extend({name='cherkessk-transfer-red'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='cherkessk-comcenter-red', - products = { - presets.defenses.red.shorad:extend({name='cherkessk-sam-red'}), - presets.missions.attack.helo:extend({name='cherkessk-cas-red', altitude=200, expend=AI.Task.WeaponExpend.HALF }), - presets.missions.attack.helo:extend({name='cherkessk-cas-red-1', altitude=200, expend=AI.Task.WeaponExpend.HALF }), - presets.missions.attack.surface:extend({name='cherkessk-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='cherkessk-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='cherkessk-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='cherkessk-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelTankFarp:extend({ - name='cherkessk-fuel-blue', - products = { - presets.missions.supply.helo:extend({name='cherkessk-supply-blue'}), - presets.missions.supply.helo:extend({name='cherkessk-supply-blue-1'}), - presets.missions.supply.transfer:extend({name='cherkessk-transfer-blue'}), - presets.missions.attack.surface:extend({name='cherkessk-assault-blue'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='cherkessk-comcenter-blue', - products = { - presets.defenses.blue.shorad:extend({name='cherkessk-sam-blue'}), - presets.missions.attack.helo:extend({name='cherkessk-cas-blue', altitude=200, expend=AI.Task.WeaponExpend.HALF }), - presets.missions.attack.helo:extend({name='cherkessk-cas-blue-1', altitude=200, expend=AI.Task.WeaponExpend.HALF }) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Cherkessk.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Juliett.lua ]]----------------- - -zones.juliett = ZoneCommand:new("Juliett") -zones.initialState = nil -zones.juliett:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='juliett-tent-red', - products = { - presets.special.red.infantry:extend({ name='juliett-defense-red'}), - presets.defenses.red.infantry:extend({ name='juliett-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='juliett-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='juliett-supply-red'}), - presets.missions.supply.transfer:extend({name='juliett-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='juliett-ammo-red', - products = { - presets.missions.attack.surface:extend({name='juliett-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='juliett-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='juliett-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='juliett-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='juliett-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='juliett-supply-blue'}), - presets.missions.supply.transfer:extend({name='juliett-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='juliett-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='juliett-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Juliett.lua ]]----------------- - - - - cm = ConnectionManager:new() - cm:addConnection('Batumi', 'Alpha') - cm:addConnection('Alpha', 'Bravo') - cm:addConnection('Bravo', 'Kobuleti') - cm:addConnection('Bravo', 'Factory') - cm:addConnection('Kobuleti', 'Factory') - cm:addConnection('Kobuleti', 'Charlie') - cm:addConnection('Foxtrot', 'Charlie') - cm:addConnection('Foxtrot', 'Kobuleti') - cm:addConnection('Delta','Foxtrot') - cm:addConnection('Delta','Kobuleti') - cm:addConnection('Delta','Factory') - cm:addConnection('Echo','Charlie') - cm:addConnection('Golf','Echo') - cm:addConnection('Golf','Foxtrot') - cm:addConnection('India','Delta') - cm:addConnection('Hotel','Golf') - cm:addConnection('Hotel','Foxtrot') - cm:addConnection('Hotel','Delta') - cm:addConnection('Hotel','India') - cm:addConnection('Juliett','Echo') - cm:addConnection('Juliett','Golf') - cm:addConnection('Senaki','Juliett') - cm:addConnection('Senaki','Golf') - cm:addConnection('Senaki','Hotel') - cm:addConnection('Kutaisi','Hotel') - cm:addConnection('Kutaisi','India') - cm:addConnection('Kilo','Juliett') - cm:addConnection('Mike','Kutaisi') - cm:addConnection('Mike','Senaki') - cm:addConnection('Romeo','Mike') - cm:addConnection('Romeo','Kutaisi') - cm:addConnection('Weapon Depot','Juliett') - cm:addConnection('Weapon Depot','Senaki') - cm:addConnection('Weapon Depot','Kilo') - cm:addConnection('November','Weapon Depot') - cm:addConnection('November','Senaki') - cm:addConnection('November','Mike') - cm:addConnection('Oil Fields','Romeo') - cm:addConnection('Quebec','Kilo') - cm:addConnection('Zugdidi','Weapon Depot') - cm:addConnection('Zugdidi','Quebec') - cm:addConnection('Zugdidi','November') - cm:addConnection('Zugdidi','Kilo') - cm:addConnection('Distillery','November') - cm:addConnection('Distillery','Mike') - cm:addConnection('Zugdidi','Papa') - cm:addConnection('November','Papa') - cm:addConnection('Sierra','Papa') - cm:addConnection('Sierra','Zugdidi') - cm:addConnection('Sierra','Uniform') - cm:addConnection('Mine','Uniform') - cm:addConnection('Tango','Quebec') - cm:addConnection('Tango','Zugdidi') - cm:addConnection('Sierra','Tango') - cm:addConnection('Whiskey','Tango') - cm:addConnection('Ochamchira','Tango') - cm:addConnection('Ochamchira','Whiskey') - cm:addConnection('Ochamchira','Farm') - cm:addConnection('Ochamchira','Zulu') - cm:addConnection('Farm','Zulu') - cm:addConnection('Sukhumi','Zulu') - cm:addConnection('Lentehi','Distillery', true, 3000) - cm:addConnection('Lentehi','Babugent', true, 5000) - cm:addConnection('Nalchik','Babugent') - cm:addConnection('Victor','Distillery', true, 2000) - cm:addConnection('Victor','Romeo') - cm:addConnection('Victor','Lentehi') - cm:addConnection('Victor','Oil Fields', true, 2000) - cm:addConnection('Victor','Oni') - cm:addConnection('Unal','Oni', true, 4500) - cm:addConnection('Beslan','Unal') - cm:addConnection('Digora','Beslan') - cm:addConnection('Digora','Unal') - cm:addConnection('Digora','Babugent') - cm:addConnection('Terek','Digora') - cm:addConnection('Terek','Nalchik') - cm:addConnection('Terek','Beslan') - cm:addConnection('Prohladniy','Terek') - cm:addConnection('Prohladniy','Nalchik') - cm:addConnection('Malgobek','Terek') - cm:addConnection('Malgobek','Beslan') - cm:addConnection('Lima','Mine') - cm:addConnection('Lima','Lentehi', true, 4000) - cm:addConnection('Tyrnyauz','Lima', true, 4000) - cm:addConnection('Tyrnyauz','Nalchik') - cm:addConnection('XRay','Sukhumi') - cm:addConnection('Oscar','Sukhumi') - cm:addConnection('Oscar','XRay') - cm:addConnection('Mozdok','Malgobek') - cm:addConnection('Mozdok','Prohladniy') - cm:addConnection('Gudauta','Oscar') - cm:addConnection('Yankee','Gudauta') - cm:addConnection('Sochi','Yankee') - cm:addConnection('Refinery','XRay', true, 4000) - cm:addConnection('Refinery','Humara') - cm:addConnection('Intel Center','Tyrnyauz') - cm:addConnection('Intel Center','Nalchik') - cm:addConnection('Intel Center','Prohladniy') - cm:addConnection('Intel Center','Kislovodsk') - cm:addConnection('Mineralnye','Intel Center') - cm:addConnection('Kislovodsk','Mineralnye') - cm:addConnection('Tallyk','Mineralnye') - cm:addConnection('Tallyk','Kislovodsk') - cm:addConnection('Power Plant','Mineralnye') - cm:addConnection('Power Plant','Tallyk') - cm:addConnection('Cherkessk','Tallyk') - cm:addConnection('Cherkessk','Power Plant') - cm:addConnection('Cherkessk','Humara') -end - -ZoneCommand.setNeighbours(cm) - -bm = BattlefieldManager:new() - -mc = MarkerCommands:new() - -pt = PlayerTracker:new(mc) - -mt = MissionTracker:new(pt, mc) - -st = SquadTracker:new() - -ct = CSARTracker:new() - -pl = PlayerLogistics:new(mt, pt, st, ct) - -gci = GCI:new(2) - -gm = GroupMonitor:new(cm) -ZoneCommand.groupMonitor = gm - --- PlayerLogistics:registerSquadGroup(squadType, groupname, weight,cost,jobtime,extracttime, squadSize) -pl:registerSquadGroup(PlayerLogistics.infantryTypes.capture, 'capture-squad', 700, 200, 60, 60*30, 4) -pl:registerSquadGroup(PlayerLogistics.infantryTypes.sabotage, 'sabotage-squad', 800, 500, 60*5, 60*30, 4) -pl:registerSquadGroup(PlayerLogistics.infantryTypes.ambush, 'ambush-squad', 900, 300, 60*20, 60*30, 5) -pl:registerSquadGroup(PlayerLogistics.infantryTypes.engineer, 'engineer-squad', 200, 1000,60, 60*30, 2) -pl:registerSquadGroup(PlayerLogistics.infantryTypes.manpads, 'manpads-squad', 900, 500, 60*20, 60*30, 5) -pl:registerSquadGroup(PlayerLogistics.infantryTypes.spy, 'spy-squad', 100, 300, 60*10, 60*30, 1) -pl:registerSquadGroup(PlayerLogistics.infantryTypes.rapier, 'rapier-squad', 1200,2000,60*60, 60*30, 8) - -Group.getByName('jtacDrone'):destroy() -CommandFunctions.jtac = JTAC:new({name = 'jtacDrone'}) - -pm = PersistenceManager:new(savefile, gm, st, ct, pl) -pm:load() - -if pm:canRestore() then - pm:restoreZones() - pm:restoreAIMissions() - pm:restoreBattlefield() - pm:restoreCsar() - pm:restoreSquads() -else - --initial states - Starter.start(zones) -end - -timer.scheduleFunction(function(param, time) - pm:save() - env.info("Mission state saved") - return time+60 -end, zones, timer.getTime()+60) - - ---make sure support units are present where needed -ensureSpawn = { - ['golf-farp-suport'] = zones.golf, - ['november-farp-suport'] = zones.november, - ['tango-farp-suport'] = zones.tango, - ['sierra-farp-suport'] = zones.sierra, - ['cherkessk-farp-suport'] = zones.cherkessk, - ['unal-farp-suport'] = zones.unal, - ['tyrnyauz-farp-suport'] = zones.tyrnyauz -} - -for grname, zn in pairs(ensureSpawn) do - local g = Group.getByName(grname) - if g then g:destroy() end -end - -timer.scheduleFunction(function(param, time) - - for grname, zn in pairs(ensureSpawn) do - local g = Group.getByName(grname) - if zn.side == 2 then - if not g then - local err, msg = pcall(mist.respawnGroup,grname,true) - if not err then - env.info("ERROR spawning "..grname) - env.info(msg) - end - end - else - if g then g:destroy() end - end - end - - return time+30 -end, {}, timer.getTime()+30) - - ---supply injection -local blueSupply = {'offmap-supply-blue-1','offmap-supply-blue-2','offmap-supply-blue-3','offmap-supply-blue-4','offmap-supply-blue-5'} -local redSupply = {'offmap-supply-red-1','offmap-supply-red-2','offmap-supply-red-3','offmap-supply-red-4','offmap-supply-red-5'} -local offmapZones = { - zones.batumi, - zones.sochi, - zones.nalchik, - zones.beslan, - zones.mozdok, - zones.mineralnye, --- zones.senaki, --- zones.sukhumi, --- zones.gudauta, --- zones.kobuleti, -} - supplyPointRegistry = { blue = {}, red = {} diff --git a/resources/plugins/pretense/init_header.lua b/resources/plugins/pretense/init_header.lua index 9df8452d..d569e9bb 100644 --- a/resources/plugins/pretense/init_header.lua +++ b/resources/plugins/pretense/init_header.lua @@ -619,4052 +619,4 @@ presets = { } zones = {} -do - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Batumi.lua ]]----------------- - -zones.batumi = ZoneCommand:new('Batumi') -zones.batumi.initialState = { side=2 } -zones.batumi.keepActive = true -zones.batumi.isHeloSpawn = true -zones.batumi.isPlaneSpawn = true -zones.batumi.maxResource = 50000 -zones.batumi:defineUpgrades({ - [1] = { --red side - presets.upgrades.basic.comPost:extend({ - name = 'batumi-com-red', - products = { - presets.special.red.infantry:extend({ name='batumi-defense-red'}), - presets.defenses.red.infantry:extend({ name='batumi-garrison-red' }) - } - }), - }, - [2] = --blue side - { - presets.upgrades.basic.comPost:extend({ - name = 'batumi-com-blue', - products = { - presets.special.blue.infantry:extend({ name='batumi-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='batumi-garrison-blue' }) - } - }), - presets.upgrades.supply.fuelTank:extend({ - name = 'batumi-fueltank-blue', - products = { - presets.missions.supply.convoy_escorted:extend({ name='batumi-supply-convoy-1'}), - presets.missions.supply.helo:extend({ name='batumi-supply-blue-1' }), - presets.missions.supply.transfer:extend({name='batumi-transfer-blue'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name = 'batumi-mission-command-blue', - products = { - presets.defenses.blue.shorad:extend({ name='batumi-sam-blue' }), - presets.missions.attack.sead:extend({name='batumi-sead-blue-1', altitude=25000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.attack.cas:extend({name='batumi-cas-blue-1', altitude=15000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.bai:extend({name='batumi-cas-blue-1', altitude=10000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.strike:extend({name='batumi-strike-blue-1', altitude=20000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.patrol.aircraft:extend({name='batumi-patrol-blue-1', altitude=25000, range=25}), - presets.missions.support.awacs:extend({name='batumi-awacs-blue', altitude=30000, freq=257.5}), - presets.missions.support.tanker:extend({name='batumi-tanker-blue', altitude=25000, freq=257, tacan='37', variant="Drogue"}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Batumi.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Mike.lua ]]----------------- - -zones.mike = ZoneCommand:new("Mike") -zones.mike.initialState = { side=1 } -zones.mike.keepActive = true -zones.mike:defineUpgrades({ - [1] = - { - presets.upgrades.basic.tent:extend({ - name='mike-tent-red', - products = { - presets.special.red.infantry:extend({ name='mike-defense-red'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='mike-comcenter-red', - products = { - presets.defenses.red.sam:extend({ name='mike-sam-red'}) - } - }) - }, - [2] = - { - presets.upgrades.basic.tent:extend({ - name='mike-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='mike-defense-blue'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='mike-comcenter-blue', - products = { - presets.defenses.blue.sam:extend({ name='mike-sam-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Mike.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Tyrnyauz.lua ]]----------------- - -zones.tyrnyauz = ZoneCommand:new("Tyrnyauz") -zones.tyrnyauz.initialState = { side=1 } -zones.tyrnyauz.isHeloSpawn = true -zones.tyrnyauz:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='tyrnyauz-tent-red', - products = { - presets.special.red.infantry:extend({ name='tyrnyauz-defense-red'}), - presets.defenses.red.infantry:extend({ name='tyrnyauz-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='tyrnyauz-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='tyrnyauz-supply-red'}), - presets.missions.supply.helo:extend({name='tyrnyauz-supply-red-2'}), - presets.missions.supply.transfer:extend({name='tyrnyauz-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='tyrnyauz-ammo-red', - products = { - presets.missions.attack.surface:extend({name='tyrnyauz-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='tyrnyauz-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='tyrnyauz-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='tyrnyauz-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='tyrnyauz-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='tyrnyauz-supply-blue'}), - presets.missions.supply.helo:extend({name='tyrnyauz-supply-blue-2'}), - presets.missions.supply.transfer:extend({name='tyrnyauz-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='tyrnyauz-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='tyrnyauz-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Tyrnyauz.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/India.lua ]]----------------- - -zones.india = ZoneCommand:new("India") -zones.india.initialState = nil -zones.india:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='india-tent-red', - products = { - presets.special.red.infantry:extend({ name='india-defense-red'}), - presets.defenses.red.infantry:extend({ name='india-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='india-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='india-supply-red'}), - presets.missions.supply.transfer:extend({name='india-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='india-ammo-red', - products = { - presets.missions.attack.surface:extend({name='india-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='india-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='india-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='india-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='india-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='india-supply-blue'}), - presets.missions.supply.transfer:extend({name='india-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='india-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='india-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/India.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/IntelCenter.lua ]]----------------- - -zones.intelcenter = ZoneCommand:new("Intel Center") -zones.intelcenter.initialState = { side=1 } -zones.intelcenter:defineUpgrades({ - [1] = - { - presets.upgrades.basic.tent:extend({ - name='intelcenter-tent-red', - products = { - presets.special.red.infantry:extend({ name='intelcenter-defense-red'}), - presets.defenses.red.infantry:extend({ name='intelcenter-garrison-red'}) - } - }), - presets.upgrades.supply.hq:extend({ - name='intelcenter-hq-red', - products = { - presets.missions.supply.convoy:extend({ name='intelcenter-supply-red'}), - presets.missions.supply.convoy:extend({ name='intelcenter-supply-red-1'}), - presets.missions.supply.transfer:extend({name='intelcenter-transfer-red'}) - } - }), - presets.upgrades.supply.antenna:extend({ - name='intelcenter-antenna-red', - products = { - } - }), - presets.upgrades.supply.antenna:extend({ - name='intelcenter-antenna-red-1', - products = { - } - }), - presets.upgrades.supply.antenna:extend({ - name='intelcenter-antenna-red-2', - products = { - } - }) - }, - [2] = - { - presets.upgrades.basic.tent:extend({ - name='intelcenter-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='intelcenter-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='intelcenter-garrison-blue'}) - } - }), - presets.upgrades.supply.hq:extend({ - name='intelcenter-hq-blue', - products = { - presets.missions.supply.convoy:extend({ name='intelcenter-supply-blue'}), - presets.missions.supply.convoy:extend({ name='intelcenter-supply-blue-1'}), - presets.missions.supply.transfer:extend({name='intelcenter-transfer-blue'}) - } - }), - presets.upgrades.supply.antenna:extend({ - name='intelcenter-antenna-blue', - products = { - } - }), - presets.upgrades.supply.antenna:extend({ - name='intelcenter-antenna-blue-1', - products = { - } - }), - presets.upgrades.supply.antenna:extend({ - name='intelcenter-antenna-blue-2', - products = { - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/IntelCenter.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Mineralnye.lua ]]----------------- - -zones.mineralnye = ZoneCommand:new("Mineralnye") -zones.mineralnye.initialState = { side=1 } -zones.mineralnye.keepActive = true -zones.mineralnye.isHeloSpawn = true -zones.mineralnye.isPlaneSpawn = true -zones.mineralnye:defineUpgrades({ - [1] = - { - presets.upgrades.basic.comPost:extend({ - name='mineralnye-compost-red', - products = { - presets.special.red.infantry:extend({ name='mineralnye-defense-red'}), - presets.defenses.red.infantry:extend({ name='mineralnye-garrison-red'}) - } - }), - presets.upgrades.supply.fuelTank:extend({ - name='mineralnye-fuel-red', - products = { - presets.missions.supply.helo:extend({name='mineralnye-supply-red'}), - presets.missions.supply.helo:extend({name='mineralnye-supply-red-1'}), - presets.missions.supply.transfer:extend({name='mineralnye-transfer-red'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='mineralnye-comcenter-red', - products = { - presets.defenses.red.sa11:extend({ name='mineralnye-airdef-red'}), - presets.missions.attack.cas:extend({name='mineralnye-cas-red', altitude=15000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.bai:extend({name='mineralnye-cas-red', altitude=10000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.strike:extend({name='mineralnye-strike-red', altitude=30000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.attack.strike:extend({name='mineralnye-strike-red-1', altitude=30000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.patrol.aircraft:extend({name='mineralnye-patrol-red', altitude=25000, range=25}) - } - }) - }, - [2] = - { - presets.upgrades.basic.comPost:extend({ - name='mineralnye-compost-blue', - products = { - presets.special.blue.infantry:extend({ name='mineralnye-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='mineralnye-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelTank:extend({ - name='mineralnye-fuel-blue', - products = { - presets.missions.supply.helo:extend({name='mineralnye-supply-blue'}), - presets.missions.supply.helo:extend({name='mineralnye-supply-blue-1'}), - presets.missions.supply.transfer:extend({name='mineralnye-transfer-blue'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='mineralnye-comcenter-blue', - products = { - presets.defenses.blue.nasams:extend({ name='mineralnye-airdef-blue'}), - presets.missions.attack.cas:extend({name='mineralnye-cas-blue', altitude=15000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.bai:extend({name='mineralnye-cas-blue', altitude=10000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.strike:extend({name='mineralnye-strike-blue', altitude=30000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.attack.strike:extend({name='mineralnye-strike-blue-1', altitude=30000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.patrol.aircraft:extend({name='mineralnye-patrol-blue', altitude=25000, range=25}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Mineralnye.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/PowerPlant.lua ]]----------------- - -zones.powerplant = ZoneCommand:new("Power Plant") -zones.powerplant.initialState = { side=1 } -zones.powerplant:defineUpgrades({ - [1] = - { - presets.upgrades.basic.tent:extend({ - name='powerplant-tent-red', - products = { - presets.special.red.infantry:extend({ name='powerplant-defense-red'}), - presets.defenses.red.infantry:extend({ name='powerplant-garrison-red'}) - } - }), - presets.upgrades.supply.powerplant1:extend({ - name='powerplant-building-red-1', - products = { - presets.missions.supply.convoy:extend({ name='powerplant-supply-red'}), - presets.missions.supply.transfer:extend({name='powerplant-transfer-red'}) - } - }), - presets.upgrades.supply.powerplant2:extend({ - name='powerplant-building-red-2', - products = { - presets.missions.supply.convoy:extend({ name='powerplant-supply-red-1'}), - presets.missions.supply.transfer:extend({name='powerplant-transfer-red'}) - } - }) - }, - [2] = - { - presets.upgrades.basic.tent:extend({ - name='powerplant-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='powerplant-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='powerplant-garrison-blue'}) - } - }), - presets.upgrades.supply.powerplant1:extend({ - name='powerplant-building-blue-1', - products = { - presets.missions.supply.convoy:extend({ name='powerplant-supply-blue'}), - presets.missions.supply.transfer:extend({name='powerplant-transfer-blue'}) - } - }), - presets.upgrades.supply.powerplant2:extend({ - name='powerplant-building-blue-2', - products = { - presets.missions.supply.convoy:extend({ name='powerplant-supply-blue-1'}), - presets.missions.supply.transfer:extend({name='powerplant-transfer-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/PowerPlant.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Zugdidi.lua ]]----------------- - -zones.zugdidi = ZoneCommand:new("Zugdidi") -zones.zugdidi.initialState = { side=1 } -zones.zugdidi:defineUpgrades({ - [1] = - { - presets.upgrades.basic.comPost:extend({ - name='zugdidi-compost-red', - products = { - presets.missions.supply.transfer:extend({name='zugdidi-transfer-red'}), - presets.special.red.infantry:extend({ name='zugdidi-defense-red'}), - presets.defenses.red.infantry:extend({ name='zugdidi-garrison-red'}), - presets.missions.attack.surface:extend({name='zugdidi-attack-red'}), - presets.missions.supply.convoy:extend({name='zugdidi-supply-red'}) - } - }), - presets.upgrades.supply.hangar:extend({ - name='zugdidi-hangar-red-1', - products = { - presets.missions.supply.helo:extend({name='zugdidi-supply-red-1'}) - } - }), - presets.upgrades.supply.hangar:extend({ - name='zugdidi-hangar-red-2', - products = { - presets.missions.supply.helo:extend({name='zugdidi-supply-red-2'}) - } - }), - presets.upgrades.supply.hangar:extend({ - name='zugdidi-hangar-red-3', - products = { - presets.missions.supply.helo:extend({name='zugdidi-supply-red-3'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='zugdidi-comcenter-red', - products = { - presets.defenses.red.sa6:extend({ name='zugdidi-sam-red'}) - } - }) - }, - [2] = - { - presets.upgrades.basic.tent:extend({ - name='zugdidi-compost-blue', - products = { - presets.missions.supply.transfer:extend({name='zugdidi-transfer-blue'}), - presets.special.blue.infantry:extend({ name='zugdidi-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='zugdidi-garrison-blue'}), - presets.missions.attack.surface:extend({name='zugdidi-attack-blue'}), - presets.missions.supply.convoy:extend({name='zugdidi-supply-blue'}) - } - }), - presets.upgrades.supply.hangar:extend({ - name='zugdidi-hangar-blue-1', - products = { - presets.missions.supply.helo:extend({name='zugdidi-supply-blue-1'}) - } - }), - presets.upgrades.supply.hangar:extend({ - name='zugdidi-hangar-blue-2', - products = { - presets.missions.supply.helo:extend({name='zugdidi-supply-blue-2'}) - } - }), - presets.upgrades.supply.hangar:extend({ - name='zugdidi-hangar-blue-3', - products = { - presets.missions.supply.helo:extend({name='zugdidi-supply-blue-3'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='zugdidi-comcenter-blue', - products = { - presets.defenses.blue.shorad:extend({ name='zugdidi-sam-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Zugdidi.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Babugent.lua ]]----------------- - -zones.babugent = ZoneCommand:new("Babugent") -zones.babugent.initialState = { side=1 } -zones.babugent:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='babugent-tent-red', - products = { - presets.special.red.infantry:extend({ name='babugent-defense-red'}), - presets.defenses.red.infantry:extend({ name='babugent-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='babugent-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='babugent-supply-red'}), - presets.missions.supply.helo:extend({name='babugent-supply-red-2'}), - presets.missions.supply.transfer:extend({name='babugent-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='babugent-ammo-red', - products = { - presets.missions.attack.surface:extend({name='babugent-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='babugent-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='babugent-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='babugent-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='babugent-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='babugent-supply-blue'}), - presets.missions.supply.helo:extend({name='babugent-supply-blue-2'}), - presets.missions.supply.transfer:extend({name='babugent-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='babugent-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='babugent-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Babugent.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Kislovodsk.lua ]]----------------- - -zones.kislovodsk = ZoneCommand:new("Kislovodsk") -zones.kislovodsk.initialState = { side=1 } -zones.kislovodsk:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='kislovodsk-tent-red', - products = { - presets.special.red.infantry:extend({ name='kislovodsk-defense-red'}), - presets.defenses.red.infantry:extend({ name='kislovodsk-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='kislovodsk-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='kislovodsk-supply-red'}), - presets.missions.supply.transfer:extend({name='kislovodsk-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='kislovodsk-ammo-red', - products = { - presets.missions.attack.surface:extend({name='kislovodsk-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='kislovodsk-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='kislovodsk-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='kislovodsk-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='kislovodsk-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='kislovodsk-supply-blue'}), - presets.missions.supply.transfer:extend({name='kislovodsk-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='kislovodsk-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='kislovodsk-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Kislovodsk.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Gudauta.lua ]]----------------- - -zones.gudauta = ZoneCommand:new("Gudauta") -zones.gudauta.initialState = { side=1 } -zones.gudauta.keepActive = true -zones.gudauta.maxResource = 50000 -zones.gudauta:defineUpgrades({ - [1] = - { - presets.upgrades.basic.comPost:extend({ - name='gudauta-compost-red', - products = { - presets.special.red.infantry:extend({ name='gudauta-defense-red'}), - presets.defenses.red.infantry:extend({ name='gudauta-garrison-red'}) - } - }), - presets.upgrades.supply.fuelTank:extend({ - name='gudauta-fuel-red', - products = { - presets.missions.supply.helo:extend({name='gudauta-supply-red'}), - presets.missions.supply.helo:extend({name='gudauta-supply-red-1'}), - presets.missions.supply.transfer:extend({name='gudauta-transfer-red'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='gudauta-comcenter-red', - products = { - presets.defenses.red.sam:extend({ name='gudauta-airdef-red'}), - presets.missions.attack.sead:extend({name='gudauta-sead-red', altitude=25000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.attack.sead:extend({name='gudauta-sead-red-1', altitude=25000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.attack.cas:extend({name='gudauta-cas-red', altitude=15000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.bai:extend({name='gudauta-cas-red', altitude=10000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.patrol.aircraft:extend({name='gudauta-patrol-red', altitude=25000, range=25}) - } - }) - }, - [2] = - { - presets.upgrades.basic.comPost:extend({ - name='gudauta-compost-blue', - products = { - presets.special.blue.infantry:extend({ name='gudauta-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='gudauta-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelTank:extend({ - name='gudauta-fuel-blue', - products = { - presets.missions.supply.helo:extend({name='gudauta-supply-blue'}), - presets.missions.supply.helo:extend({name='gudauta-supply-blue-1'}), - presets.missions.supply.transfer:extend({name='gudauta-transfer-blue'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='gudauta-comcenter-blue', - products = { - presets.defenses.blue.sam:extend({ name='gudauta-airdef-blue'}), - presets.missions.attack.sead:extend({name='gudauta-sead-blue', altitude=25000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.attack.sead:extend({name='gudauta-sead-blue-1', altitude=25000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.attack.cas:extend({name='gudauta-cas-blue', altitude=15000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.bai:extend({name='gudauta-cas-blue', altitude=10000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.patrol.aircraft:extend({name='gudauta-patrol-blue', altitude=25000, range=25}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Gudauta.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Distillery.lua ]]----------------- - -zones.distillery = ZoneCommand:new("Distillery") -zones.distillery.initialState = { side=1 } -zones.distillery:defineUpgrades({ - [1] = - { - presets.upgrades.basic.tent:extend({ - name='distillery-tent-red', - products = { - presets.special.red.infantry:extend({ name='distillery-defense-red'}), - presets.defenses.red.infantry:extend({ name='distillery-garrison-red'}) - } - }), - presets.upgrades.supply.factory1:extend({ - name='distillery-prod-red-1', - products = { - presets.missions.supply.convoy:extend({ name='distillery-supply-red-1'}), - presets.missions.supply.transfer:extend({name='distillery-transfer-red'}) - } - }), - presets.upgrades.supply.factory2:extend({ - name='distillery-prod-red-2', - products = { - presets.missions.supply.convoy:extend({ name='distillery-supply-red-2', cost=2000}), - presets.missions.supply.transfer:extend({name='distillery-transfer-red2'}) - } - }), - presets.upgrades.supply.factoryTank:extend({ - name='distillery-tank-red-1', - products = { - } - }), - presets.upgrades.supply.factoryTank:extend({ - name='distillery-tank-red-2', - products = { - } - }), - presets.upgrades.supply.factoryTank:extend({ - name='distillery-tank-red-3', - products = { - } - }) - }, - [2] = - { - presets.upgrades.basic.tent:extend({ - name='distillery-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='distillery-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='distillery-garrison-blue'}) - } - }), - presets.upgrades.supply.factory1:extend({ - name='distillery-prod-blue-1', - products = { - presets.missions.supply.convoy:extend({ name='distillery-supply-blue-1'}), - presets.missions.supply.transfer:extend({name='distillery-transfer-blue'}) - } - }), - presets.upgrades.supply.factory2:extend({ - name='distillery-prod-blue-2', - products = { - presets.missions.supply.convoy:extend({ name='distillery-supply-blue-2', cost=2000}), - presets.missions.supply.transfer:extend({name='distillery-transfer-blue2'}) - } - }), - presets.upgrades.supply.factoryTank:extend({ - name='distillery-tank-blue-1', - products = { - } - }), - presets.upgrades.supply.factoryTank:extend({ - name='distillery-tank-blue-2', - products = { - } - }), - presets.upgrades.supply.factoryTank:extend({ - name='distillery-tank-blue-3', - products = { - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Distillery.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Sochi.lua ]]----------------- - -zones.sochi = ZoneCommand:new("Sochi") -zones.sochi.initialState = { side=1 } -zones.sochi.keepActive = true -zones.sochi.maxResource = 50000 -zones.sochi:defineUpgrades({ - [1] = - { - presets.upgrades.basic.comPost:extend({ - name='sochi-compost-red', - products = { - presets.special.red.infantry:extend({ name='sochi-defense-red'}), - presets.defenses.red.infantry:extend({ name='sochi-garrison-red'}) - } - }), - presets.upgrades.supply.fuelTank:extend({ - name='sochi-fuel-red', - products = { - presets.missions.supply.helo:extend({name='sochi-supply-red-1'}), - presets.missions.supply.helo:extend({name='sochi-supply-red-2'}), - presets.missions.supply.convoy_escorted:extend({name='sochi-supply-red-3'}), - presets.missions.supply.transfer:extend({name='sochi-transfer-red'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='sochi-comcenter-red', - products = { - presets.defenses.red.sa10:extend({ name='sochi-airdef-red'}), - presets.missions.attack.sead:extend({name='sochi-sead-red', altitude=25000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.attack.strike:extend({name='sochi-strike-red', altitude=30000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.patrol.aircraft:extend({name='sochi-patrol-red', altitude=25000, range=25}), - presets.missions.patrol.aircraft:extend({name='sochi-patrol-red-1', altitude=25000, range=25}), - presets.missions.attack.cas:extend({name='sochi-cas-red', altitude=15000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.bai:extend({name='sochi-cas-red', altitude=10000, expend=AI.Task.WeaponExpend.ONE}) - } - }) - }, - [2] = - { - presets.upgrades.basic.comPost:extend({ - name='sochi-compost-blue', - products = { - presets.special.blue.infantry:extend({ name='sochi-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='sochi-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelTank:extend({ - name='sochi-fuel-blue', - products = { - presets.missions.supply.helo:extend({name='sochi-supply-blue-1'}), - presets.missions.supply.helo:extend({name='sochi-supply-blue-2'}), - presets.missions.supply.convoy_escorted:extend({name='sochi-supply-blue-3'}), - presets.missions.supply.transfer:extend({name='sochi-transfer-blue'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='sochi-comcenter-blue', - products = { - presets.defenses.blue.patriot:extend({ name='sochi-airdef-blue'}), - presets.missions.attack.sead:extend({name='sochi-sead-blue', altitude=25000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.attack.strike:extend({name='sochi-strike-blue', altitude=30000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.patrol.aircraft:extend({name='sochi-patrol-blue', altitude=25000, range=25}), - presets.missions.attack.cas:extend({name='sochi-cas-blue', altitude=15000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.bai:extend({name='sochi-cas-blue', altitude=10000, expend=AI.Task.WeaponExpend.ONE}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Sochi.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Golf.lua ]]----------------- - -zones.golf = ZoneCommand:new("Golf") -zones.golf.initialState = nil -zones.golf.isHeloSpawn = true -zones.golf:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='golf-tent-red', - products = { - presets.special.red.infantry:extend({ name='golf-defense-red'}), - presets.defenses.red.infantry:extend({ name='golf-garrison-red'}) - } - }), - presets.upgrades.supply.fuelTank:extend({ - name='golf-fuel-red', - products = { - presets.missions.supply.helo:extend({name='golf-supply-red'}), - presets.missions.supply.helo:extend({name='golf-supply-red-1'}), - presets.missions.supply.transfer:extend({name='golf-transfer-red'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='golf-comcenter-red', - products = { - presets.defenses.red.shorad:extend({name='golf-sam-red'}), - presets.missions.attack.helo:extend({name='golf-cas-red', altitude=200, expend=AI.Task.WeaponExpend.HALF }) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='golf-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='golf-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='golf-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelTankFarp:extend({ - name='golf-fuel-blue', - products = { - presets.missions.supply.helo:extend({name='golf-supply-blue'}), - presets.missions.supply.helo:extend({name='golf-supply-blue-1'}), - presets.missions.supply.transfer:extend({name='golf-transfer-blue'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='golf-comcenter-blue', - products = { - presets.defenses.blue.shorad:extend({name='golf-sam-blue'}), - presets.missions.attack.helo:extend({name='golf-cas-blue', altitude=200, expend=AI.Task.WeaponExpend.HALF }) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Golf.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Charlie.lua ]]----------------- - -zones.charlie = ZoneCommand:new("Charlie") -zones.charlie.initialState = { side=2 } -zones.charlie.keepActive = true -zones.charlie:defineUpgrades({ - [1] = - { - presets.upgrades.basic.tent:extend({ - name='charlie-tent-red', - products = { - presets.special.red.infantry:extend({ name='charlie-defense-red'}), - presets.defenses.red.infantry:extend({ name='charlie-garrison-red'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='charlie-comcenter-red', - products = { - presets.defenses.red.sam:extend({ name='charlie-sam-red'}) - } - }) - }, - [2] = - { - presets.upgrades.basic.tent:extend({ - name='charlie-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='charlie-defense-red'}), - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='charlie-comcenter-blue', - products = { - presets.defenses.blue.sam:extend({ name='charlie-sam-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Charlie.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Lentehi.lua ]]----------------- - -zones.lentehi = ZoneCommand:new("Lentehi") -zones.lentehi.initialState = { side=1 } -zones.lentehi:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='lentehi-tent-red', - products = { - presets.special.red.infantry:extend({ name='lentehi-defense-red'}), - presets.defenses.red.infantry:extend({ name='lentehi-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='lentehi-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='lentehi-supply-red'}), - presets.missions.supply.helo:extend({name='lentehi-supply-red-2'}), - presets.missions.supply.transfer:extend({name='lentehi-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='lentehi-ammo-red', - products = { - presets.missions.attack.surface:extend({name='lentehi-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='lentehi-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='lentehi-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='lentehi-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='lentehi-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='lentehi-supply-blue'}), - presets.missions.supply.helo:extend({name='lentehi-supply-blue-2'}), - presets.missions.supply.transfer:extend({name='lentehi-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='lentehi-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='lentehi-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Lentehi.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Refinery.lua ]]----------------- - -zones.refinery = ZoneCommand:new("Refinery") -zones.refinery.initialState = { side=1 } -zones.refinery:defineUpgrades({ - [1] = - { - presets.upgrades.basic.tent:extend({ - name='refinery-tent-red', - products = { - presets.special.red.infantry:extend({ name='refinery-defense-red'}), - presets.defenses.red.infantry:extend({ name='refinery-garrison-red'}) - } - }), - presets.upgrades.supply.refinery1:extend({ - name='refinery-building-red', - products = { - presets.missions.supply.convoy:extend({ name='refinery-supply-red'}), - presets.missions.supply.convoy:extend({ name='refinery-supply-red-1'}), - presets.missions.supply.helo:extend({ name='refinery-supply-red-2'}), - presets.missions.supply.transfer:extend({name='refinery-transfer-red'}) - } - }) - }, - [2] = - { - presets.upgrades.basic.tent:extend({ - name='refinery-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='refinery-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='refinery-garrison-blue'}) - } - }), - presets.upgrades.supply.refinery1:extend({ - name='refinery-building-blue', - products = { - presets.missions.supply.convoy:extend({ name='refinery-supply-blue'}), - presets.missions.supply.convoy:extend({ name='refinery-supply-blue-1'}), - presets.missions.supply.helo:extend({ name='refinery-supply-blue-2'}), - presets.missions.supply.transfer:extend({name='refinery-transfer-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Refinery.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Mozdok.lua ]]----------------- - -zones.mozdok = ZoneCommand:new("Mozdok") -zones.mozdok.initialState = { side=1 } -zones.mozdok.keepActive = true -zones.mozdok.maxResource = 50000 -zones.mozdok:defineUpgrades({ - [1] = - { - presets.upgrades.basic.comPost:extend({ - name='mozdok-compost-red', - products = { - presets.special.red.infantry:extend({ name='mozdok-defense-red'}), - presets.defenses.red.infantry:extend({ name='mozdok-garrison-red'}) - } - }), - presets.upgrades.supply.fuelTank:extend({ - name='mozdok-fuel-red', - products = { - presets.missions.supply.helo:extend({name='mozdok-supply-red-1'}), - presets.missions.supply.helo:extend({name='mozdok-supply-red-2'}), - presets.missions.supply.convoy_escorted:extend({name='mozdok-supply-red-3'}), - presets.missions.supply.transfer:extend({name='mozdok-transfer-red'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='mozdok-comcenter-red', - products = { - presets.defenses.red.sa10:extend({ name='mozdok-airdef-red'}), - presets.missions.patrol.aircraft:extend({name='mozdok-patrol-red', altitude=25000, range=25}), - presets.missions.attack.cas:extend({name='mozdok-cas-red', altitude=15000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.bai:extend({name='mozdok-cas-red', altitude=10000, expend=AI.Task.WeaponExpend.ONE}) - } - }) - }, - [2] = - { - presets.upgrades.basic.comPost:extend({ - name='mozdok-compost-blue', - products = { - presets.special.blue.infantry:extend({ name='mozdok-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='mozdok-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelTank:extend({ - name='mozdok-fuel-blue', - products = { - presets.missions.supply.helo:extend({name='mozdok-supply-blue-1'}), - presets.missions.supply.helo:extend({name='mozdok-supply-blue-2'}), - presets.missions.supply.convoy_escorted:extend({name='mozdok-supply-blue-3'}), - presets.missions.supply.transfer:extend({name='mozdok-transfer-blue'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='mozdok-comcenter-blue', - products = { - presets.defenses.blue.shorad:extend({ name='mozdok-airdef-blue'}), - presets.missions.patrol.aircraft:extend({name='mozdok-patrol-blue', altitude=25000, range=25}), - presets.missions.attack.cas:extend({name='mozdok-cas-blue', altitude=15000, cost=50, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.cas:extend({name='mozdok-cas-blue-1', altitude=15000, cost=50, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.bai:extend({name='mozdok-cas-blue', altitude=15000, cost=50, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.bai:extend({name='mozdok-cas-blue-1', altitude=15000, cost=50, expend=AI.Task.WeaponExpend.ONE}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Mozdok.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Lima.lua ]]----------------- - -zones.lima = ZoneCommand:new("Lima") -zones.lima.initialState = { side=1 } -zones.lima:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='lima-tent-red', - products = { - presets.special.red.infantry:extend({ name='lima-defense-red'}), - presets.defenses.red.infantry:extend({ name='lima-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='lima-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='lima-supply-red'}), - presets.missions.supply.helo:extend({name='lima-supply-red-1'}), - presets.missions.supply.transfer:extend({name='lima-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='lima-ammo-red', - products = { - presets.missions.attack.surface:extend({name='lima-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='lima-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='lima-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='lima-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='lima-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='lima-supply-blue'}), - presets.missions.supply.helo:extend({name='lima-supply-blue-1'}), - presets.missions.supply.transfer:extend({name='lima-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='lima-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='lima-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Lima.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Oscar.lua ]]----------------- - -zones.oscar = ZoneCommand:new("Oscar") -zones.oscar.initialState = { side=1 } -zones.oscar:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='oscar-tent-red', - products = { - presets.special.red.infantry:extend({ name='oscar-defense-red'}), - presets.defenses.red.infantry:extend({ name='oscar-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='oscar-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='oscar-supply-red'}), - presets.missions.supply.transfer:extend({name='oscar-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='oscar-ammo-red', - products = { - presets.missions.attack.surface:extend({name='oscar-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='oscar-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='oscar-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='oscar-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='oscar-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='oscar-supply-blue'}), - presets.missions.supply.transfer:extend({name='oscar-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='oscar-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='oscar-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Oscar.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Nalchik.lua ]]----------------- - -zones.nalchik = ZoneCommand:new("Nalchik") -zones.nalchik.initialState = { side=1 } -zones.nalchik.keepActive = true -zones.nalchik.isHeloSpawn = true -zones.nalchik.isPlaneSpawn = true -zones.nalchik:defineUpgrades({ - [1] = - { - presets.upgrades.basic.comPost:extend({ - name='nalchik-compost-red', - products = { - presets.special.red.infantry:extend({ name='nalchik-defense-red'}), - presets.defenses.red.infantry:extend({ name='nalchik-garrison-red'}) - } - }), - presets.upgrades.supply.fuelTank:extend({ - name='nalchik-fuel-red', - products = { - presets.missions.supply.helo:extend({name='nalchik-supply-red-1'}), - presets.missions.supply.helo:extend({name='nalchik-supply-red-2'}), - presets.missions.supply.transfer:extend({name='nalchik-transfer-red'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='nalchik-comcenter-red', - products = { - presets.defenses.red.sa3:extend({ name='nalchik-airdef-red'}), - presets.missions.attack.sead:extend({name='nalchik-sead-red', altitude=25000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.attack.cas:extend({name='nalchik-cas-red', altitude=15000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.bai:extend({name='nalchik-cas-red', altitude=10000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.strike:extend({name='nalchik-strike-red', altitude=30000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.patrol.aircraft:extend({name='nalchik-patrol-red', altitude=25000, range=25}), - presets.missions.patrol.aircraft:extend({name='nalchik-patrol-red-2', altitude=25000, range=25}), - presets.missions.support.awacs:extend({name='nalchik-awacs-red', altitude=30000, freq=251.2}), - presets.missions.support.tanker:extend({name='nalchik-tanker-red', altitude=30000, freq=252.2, tacan='40', variant='Drogue'}) - } - }) - }, - [2] = - { - presets.upgrades.basic.comPost:extend({ - name='nalchik-compost-blue', - products = { - presets.special.blue.infantry:extend({ name='nalchik-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='nalchik-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelTank:extend({ - name='nalchik-fuel-blue', - products = { - presets.missions.supply.helo:extend({name='nalchik-supply-blue-1'}), - presets.missions.supply.helo:extend({name='nalchik-supply-blue-2'}), - presets.missions.supply.transfer:extend({name='nalchik-transfer-blue'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='nalchik-comcenter-blue', - products = { - presets.defenses.blue.nasams:extend({ name='nalchik-airdef-blue'}), - presets.missions.support.awacs:extend({name='nalchik-awacs-blue', altitude=30000, freq=259.5}), - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Nalchik.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Digora.lua ]]----------------- - -zones.digora = ZoneCommand:new("Digora") -zones.digora.initialState = { side=1 } -zones.digora:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='digora-tent-red', - products = { - presets.special.red.infantry:extend({ name='digora-defense-red'}), - presets.defenses.red.infantry:extend({ name='digora-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='digora-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='digora-supply-red'}), - presets.missions.supply.transfer:extend({name='digora-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='digora-ammo-red', - products = { - presets.missions.attack.surface:extend({name='digora-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='digora-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='digora-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='digora-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='digora-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='digora-supply-blue'}), - presets.missions.supply.transfer:extend({name='digora-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='digora-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='digora-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Digora.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Uniform.lua ]]----------------- - -zones.uniform = ZoneCommand:new("Uniform") -zones.uniform.initialState = { side=1 } -zones.uniform:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='uniform-tent-red', - products = { - presets.special.red.infantry:extend({ name='uniform-defense-red'}), - presets.defenses.red.infantry:extend({ name='uniform-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='uniform-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='uniform-supply-red'}), - presets.missions.supply.transfer:extend({name='uniform-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='uniform-ammo-red', - products = { - presets.missions.attack.surface:extend({name='uniform-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='uniform-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='uniform-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='uniform-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='uniform-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='uniform-supply-blue'}), - presets.missions.supply.transfer:extend({name='uniform-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='uniform-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='uniform-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Uniform.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Factory.lua ]]----------------- - -zones.factory = ZoneCommand:new("Factory") -zones.factory.initialState = { side=2 } -zones.factory:defineUpgrades({ - [1] = - { - presets.upgrades.basic.tent:extend({ - name='factory-tent-red', - products = { - presets.special.red.infantry:extend({ name='factory-defense-red'}), - presets.defenses.red.infantry:extend({ name='factory-garrison-red'}) - } - }), - presets.upgrades.supply.factory1:extend({ - name='factory-prod-red-1', - products = { - presets.missions.supply.convoy:extend({ name='factory-supply-red-1'}), - presets.missions.supply.transfer:extend({name='factory-transfer-red'}) - } - }), - presets.upgrades.supply.factory2:extend({ - name='factory-prod-red-2', - products = { - presets.missions.supply.convoy:extend({ name='factory-supply-red-2', cost=2000}), - presets.missions.supply.transfer:extend({name='factory-transfer-red2'}) - } - }), - presets.upgrades.supply.factoryTank:extend({ - name='factory-tank-red-1', - products = { - } - }), - presets.upgrades.supply.factoryTank:extend({ - name='factory-tank-red-2', - products = { - } - }), - presets.upgrades.supply.factoryTank:extend({ - name='factory-tank-red-3', - products = { - } - }) - }, - [2] = - { - presets.upgrades.basic.tent:extend({ - name='factory-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='factory-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='factory-garrison-blue'}) - } - }), - presets.upgrades.supply.factory1:extend({ - name='factory-prod-blue-1', - products = { - presets.missions.supply.convoy:extend({ name='factory-supply-blue-1'}), - presets.missions.supply.transfer:extend({name='factory-transfer-blue'}) - } - }), - presets.upgrades.supply.factory2:extend({ - name='factory-prod-blue-2', - products = { - presets.missions.supply.convoy:extend({ name='factory-supply-blue-2', cost=2000}), - presets.missions.supply.transfer:extend({name='factory-transfer-blue2'}) - } - }), - presets.upgrades.supply.factoryTank:extend({ - name='factory-tank-blue-1', - products = { - } - }), - presets.upgrades.supply.factoryTank:extend({ - name='factory-tank-blue-2', - products = { - } - }), - presets.upgrades.supply.factoryTank:extend({ - name='factory-tank-blue-3', - products = { - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Factory.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Senaki.lua ]]----------------- - -zones.senaki = ZoneCommand:new("Senaki") -zones.senaki.initialState = { side=1 } -zones.senaki.keepActive = true -zones.senaki.isHeloSpawn = true -zones.senaki.isPlaneSpawn = true -zones.senaki.maxResource = 50000 -zones.senaki:defineUpgrades({ - [1] = - { - presets.upgrades.basic.comPost:extend({ - name='senaki-compost-red', - products = { - presets.special.red.infantry:extend({ name='senaki-defense-red'}), - presets.defenses.red.infantry:extend({ name='senaki-garrison-red'}) - } - }), - presets.upgrades.supply.fuelTank:extend({ - name='senaki-fuel-red', - products = { - presets.missions.supply.helo:extend({name='senaki-supply-red-1'}), - presets.missions.supply.helo:extend({name='senaki-supply-red-2'}), - presets.missions.supply.transfer:extend({name='senaki-transfer-red'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='senaki-comcenter-red', - products = { - presets.defenses.red.sa3:extend({ name='senaki-airdef-red'}), - presets.missions.attack.sead:extend({name='senaki-sead-red', altitude=25000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.attack.cas:extend({name='senaki-cas-red', altitude=15000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.bai:extend({name='senaki-cas-red', altitude=10000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.strike:extend({name='senaki-strike-red', altitude=20000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.patrol.aircraft:extend({name='senaki-patrol-red', altitude=25000, range=25}), - presets.missions.patrol.aircraft:extend({name='senaki-patrol-red-2', altitude=20000, range=25}) - } - }) - }, - [2] = - { - presets.upgrades.basic.comPost:extend({ - name='senaki-compost-blue', - products = { - presets.special.blue.infantry:extend({ name='senaki-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='senaki-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelTank:extend({ - name='senaki-fuel-blue', - products = { - presets.missions.supply.helo:extend({name='senaki-supply-blue-1'}), - presets.missions.supply.helo:extend({name='senaki-supply-blue-2'}), - presets.missions.supply.transfer:extend({name='senaki-transfer-blue'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='senaki-comcenter-blue', - products = { - presets.defenses.blue.shorad:extend({ name='senaki-airdef-blue'}), - presets.missions.attack.sead:extend({name='senaki-sead-blue', altitude=25000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.attack.cas:extend({name='senaki-cas-blue', altitude=15000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.bai:extend({name='senaki-cas-blue', altitude=10000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.strike:extend({name='senaki-strike-blue', altitude=20000, expend=AI.Task.WeaponExpend.TWO}), - presets.missions.patrol.aircraft:extend({name='senaki-patrol-blue', altitude=25000, range=25}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Senaki.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Kutaisi.lua ]]----------------- - -zones.kutaisi = ZoneCommand:new("Kutaisi") -zones.kutaisi.initialState = { side=1 } -zones.kutaisi.keepActive = true -zones.kutaisi.maxResource = 50000 -zones.kutaisi:defineUpgrades({ - [1] = - { - presets.upgrades.basic.comPost:extend({ - name='kutaisi-compost-red', - products = { - presets.special.red.infantry:extend({ name='kutaisi-defense-red'}), - presets.defenses.red.infantry:extend({ name='kutaisi-garrison-red'}) - } - }), - presets.upgrades.supply.fuelTank:extend({ - name='kutaisi-fuel-red', - products = { - presets.missions.supply.helo:extend({name='kutaisi-supply-red-1'}), - presets.missions.supply.helo:extend({name='kutaisi-supply-red-2'}), - presets.missions.supply.transfer:extend({name='kutaisi-transfer-red'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='kutaisi-comcenter-red', - products = { - presets.defenses.red.shorad:extend({ name='kutaisi-airdef-red'}), - presets.missions.attack.sead:extend({name='kutaisi-sead-red', altitude=25000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.attack.cas:extend({name='kutaisi-cas-red', altitude=15000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.bai:extend({name='kutaisi-cas-red', altitude=10000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.strike:extend({name='kutaisi-strike-red', altitude=20000, expend=AI.Task.WeaponExpend.HALF}), - presets.missions.patrol.aircraft:extend({name='kutaisi-patrol-red', altitude=25000, range=25}), - presets.missions.patrol.aircraft:extend({name='kutaisi-patrol-red-2', altitude=25000, range=25}) - } - }) - }, - [2] = - { - presets.upgrades.basic.comPost:extend({ - name='kutaisi-compost-blue', - products = { - presets.special.blue.infantry:extend({ name='kutaisi-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='kutaisi-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelTank:extend({ - name='kutaisi-fuel-blue', - products = { - presets.missions.supply.helo:extend({name='kutaisi-supply-blue-1'}), - presets.missions.supply.helo:extend({name='kutaisi-supply-blue-2'}), - presets.missions.supply.transfer:extend({name='kutaisi-transfer-blue'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='kutaisi-comcenter-blue', - products = { - presets.defenses.blue.shorad:extend({ name='kutaisi-airdef-blue'}), - presets.missions.attack.sead:extend({name='kutaisi-sead-blue', altitude=25000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.attack.cas:extend({name='kutaisi-cas-blue', altitude=15000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.bai:extend({name='kutaisi-cas-blue', altitude=10000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.strike:extend({name='kutaisi-strike-blue', altitude=20000, expend=AI.Task.WeaponExpend.TWO}), - presets.missions.patrol.aircraft:extend({name='kutaisi-patrol-blue', altitude=25000, range=25}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Kutaisi.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Prohladniy.lua ]]----------------- - -zones.prohladniy = ZoneCommand:new("Prohladniy") -zones.prohladniy.initialState = { side=1 } -zones.prohladniy:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='prohladniy-tent-red', - products = { - presets.special.red.infantry:extend({ name='prohladniy-defense-red'}), - presets.defenses.red.infantry:extend({ name='prohladniy-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='prohladniy-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='prohladniy-supply-red'}), - presets.missions.supply.transfer:extend({name='prohladniy-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='prohladniy-ammo-red', - products = { - presets.missions.attack.surface:extend({name='prohladniy-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='prohladniy-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='prohladniy-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='prohladniy-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='prohladniy-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='prohladniy-supply-blue'}), - presets.missions.supply.transfer:extend({name='prohladniy-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='prohladniy-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='prohladniy-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Prohladniy.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Tallyk.lua ]]----------------- - -zones.tallyk = ZoneCommand:new("Tallyk") -zones.tallyk.initialState = { side=1 } -zones.tallyk.keepActive = true -zones.tallyk:defineUpgrades({ - [1] = - { - presets.upgrades.basic.tent:extend({ - name='tallyk-tent-red', - products = { - presets.special.red.infantry:extend({ name='tallyk-defense-red'}), - presets.defenses.red.infantry:extend({ name='tallyk-garrison-red'}), - presets.missions.attack.surface:extend({name='tallyk-assault-red'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='tallyk-comcenter-red', - products = { - presets.defenses.red.sam:extend({ name='tallyk-sam-red'}) - } - }) - }, - [2] = - { - presets.upgrades.basic.tent:extend({ - name='tallyk-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='tallyk-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='tallyk-garrison-blue'}), - presets.missions.attack.surface:extend({name='tallyk-assault-blue'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='tallyk-comcenter-blue', - products = { - presets.defenses.blue.sam:extend({ name='tallyk-sam-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Tallyk.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Terek.lua ]]----------------- - -zones.terek = ZoneCommand:new("Terek") -zones.terek.initialState = { side=1 } -zones.terek:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='terek-tent-red', - products = { - presets.special.red.infantry:extend({ name='terek-defense-red'}), - presets.defenses.red.infantry:extend({ name='terek-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='terek-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='terek-supply-red'}), - presets.missions.supply.transfer:extend({name='terek-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='terek-ammo-red', - products = { - presets.missions.attack.surface:extend({name='terek-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='terek-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='terek-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='terek-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='terek-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='terek-supply-blue'}), - presets.missions.supply.transfer:extend({name='terek-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='terek-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='terek-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Terek.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Humara.lua ]]----------------- - -zones.humara = ZoneCommand:new("Humara") -zones.humara.initialState = { side=1 } -zones.humara:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='humara-tent-red', - products = { - presets.special.red.infantry:extend({ name='humara-defense-red'}), - presets.defenses.red.infantry:extend({ name='humara-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='humara-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='humara-supply-red'}), - presets.missions.supply.transfer:extend({name='humara-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='humara-ammo-red', - products = { - presets.missions.attack.surface:extend({name='humara-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='humara-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='humara-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='humara-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='humara-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='humara-supply-blue'}), - presets.missions.supply.transfer:extend({name='humara-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='humara-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='humara-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Humara.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Ochamchira.lua ]]----------------- - -zones.ochamchira = ZoneCommand:new("Ochamchira") -zones.ochamchira.initialState = { side=1 } -zones.ochamchira:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='ochamchira-tent-red', - products = { - presets.special.red.infantry:extend({ name='ochamchira-defense-red'}), - presets.defenses.red.infantry:extend({ name='ochamchira-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='ochamchira-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='ochamchira-supply-red'}), - presets.missions.supply.transfer:extend({name='ochamchira-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='ochamchira-ammo-red', - products = { - presets.missions.attack.surface:extend({name='ochamchira-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='ochamchira-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='ochamchira-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='ochamchira-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='ochamchira-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='ochamchira-supply-blue'}), - presets.missions.supply.transfer:extend({name='ochamchira-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='ochamchira-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='ochamchira-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Ochamchira.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/November.lua ]]----------------- - -zones.november = ZoneCommand:new("November") -zones.november.initialState = { side=1 } -zones.november.isHeloSpawn = true -zones.november:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='november-tent-red', - products = { - presets.special.red.infantry:extend({ name='november-defense-red'}), - presets.defenses.red.infantry:extend({ name='november-garrison-red'}) - } - }), - presets.upgrades.supply.fuelTankFarp:extend({ - name='november-fuel-red', - products = { - presets.missions.supply.helo:extend({name='november-supply-red'}), - presets.missions.supply.helo:extend({name='november-supply-red-1'}), - presets.missions.supply.transfer:extend({name='november-transfer-red'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='november-comcenter-red', - products = { - presets.defenses.red.shorad:extend({name='november-sam-red'}), - presets.missions.attack.helo:extend({name='november-cas-red', altitude=200, expend=AI.Task.WeaponExpend.HALF }) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='november-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='november-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='november-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelTankFarp:extend({ - name='november-fuel-blue', - products = { - presets.missions.supply.helo:extend({name='november-supply-blue'}), - presets.missions.supply.helo:extend({name='november-supply-blue-1'}), - presets.missions.supply.transfer:extend({name='november-transfer-blue'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='november-comcenter-blue', - products = { - presets.defenses.blue.shorad:extend({name='november-sam-blue'}), - presets.missions.attack.helo:extend({name='november-cas-blue', altitude=200, expend=AI.Task.WeaponExpend.HALF }) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/November.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/XRay.lua ]]----------------- - -zones.xray = ZoneCommand:new("XRay") -zones.xray.initialState = { side=1 } -zones.xray:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='xray-tent-red', - products = { - presets.special.red.infantry:extend({ name='xray-defense-red'}), - presets.defenses.red.infantry:extend({ name='xray-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='xray-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='xray-supply-red'}), - presets.missions.supply.helo:extend({name='xray-supply-red-2'}), - presets.missions.supply.transfer:extend({name='xray-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='xray-ammo-red', - products = { - presets.missions.attack.surface:extend({name='xray-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='xray-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='xray-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='xray-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='xray-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='xray-supply-blue'}), - presets.missions.supply.helo:extend({name='xray-supply-blue-2'}), - presets.missions.supply.transfer:extend({name='xray-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='xray-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='xray-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/XRay.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Whiskey.lua ]]----------------- - -zones.whiskey = ZoneCommand:new("Whiskey") -zones.whiskey.initialState = { side=1 } -zones.whiskey:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='whiskey-tent-red', - products = { - presets.special.red.infantry:extend({ name='whiskey-defense-red'}), - presets.defenses.red.infantry:extend({ name='whiskey-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='whiskey-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='whiskey-supply-red'}), - presets.missions.supply.transfer:extend({name='whiskey-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='whiskey-ammo-red', - products = { - presets.missions.attack.surface:extend({name='whiskey-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='whiskey-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='whiskey-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='whiskey-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='whiskey-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='whiskey-supply-blue'}), - presets.missions.supply.transfer:extend({name='whiskey-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='whiskey-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='whiskey-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Whiskey.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Mine.lua ]]----------------- - -zones.mine = ZoneCommand:new("Mine") -zones.mine.initialState = { side=1 } -zones.mine:defineUpgrades({ - [1] = - { - presets.upgrades.basic.tent:extend({ - name='mine-tent-red', - products = { - presets.special.red.infantry:extend({ name='mine-defense-red'}), - presets.defenses.red.infantry:extend({ name='mine-garrison-red'}) - } - }), - presets.upgrades.supply.excavator:extend({ - name='mine-excavator-red-1', - products = { - presets.missions.supply.convoy:extend({ name='mine-supply-red'}), - presets.missions.supply.transfer:extend({name='mine-transfer-red'}) - } - }), - presets.upgrades.supply.excavator:extend({ - name='mine-excavator-red-2', - products = { - presets.missions.supply.convoy:extend({ name='mine-supply-red'}), - presets.missions.supply.transfer:extend({name='mine-transfer-red'}) - } - }), - presets.upgrades.supply.excavator:extend({ - name='mine-excavator-red-3', - products = { - presets.missions.supply.convoy:extend({ name='mine-supply-red'}), - presets.missions.supply.transfer:extend({name='mine-transfer-red'}) - } - }) - }, - [2] = - { - presets.upgrades.basic.tent:extend({ - name='mine-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='mine-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='mine-garrison-blue'}) - } - }), - presets.upgrades.supply.excavator:extend({ - name='mine-excavator-blue-1', - products = { - presets.missions.supply.convoy:extend({ name='mine-supply-blue'}), - presets.missions.supply.transfer:extend({name='mine-transfer-blue'}) - } - }), - presets.upgrades.supply.excavator:extend({ - name='mine-excavator-blue-2', - products = { - presets.missions.supply.convoy:extend({ name='mine-supply-blue'}), - presets.missions.supply.transfer:extend({name='mine-transfer-blue'}) - } - }), - presets.upgrades.supply.excavator:extend({ - name='mine-excavator-blue-3', - products = { - presets.missions.supply.convoy:extend({ name='mine-supply-blue'}), - presets.missions.supply.transfer:extend({name='mine-transfer-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Mine.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Papa.lua ]]----------------- - -zones.papa = ZoneCommand:new("Papa") -zones.papa.initialState = { side=1 } -zones.papa.keepActive = true -zones.papa:defineUpgrades({ - [1] = - { - presets.upgrades.basic.tent:extend({ - name='papa-tent-red', - products = { - presets.special.red.infantry:extend({ name='papa-defense-red'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='papa-comcenter-red', - products = { - presets.defenses.red.sam:extend({ name='papa-sam-red'}) - } - }) - }, - [2] = - { - presets.upgrades.basic.tent:extend({ - name='papa-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='papa-defense-blue'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='papa-comcenter-blue', - products = { - presets.defenses.blue.sam:extend({ name='papa-sam-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Papa.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Sukhumi.lua ]]----------------- - -zones.sukhumi = ZoneCommand:new("Sukhumi") -zones.sukhumi.initialState = { side=1 } -zones.sukhumi.keepActive = true -zones.sukhumi.maxResource = 50000 -zones.sukhumi:defineUpgrades({ - [1] = - { - presets.upgrades.basic.comPost:extend({ - name='sukhumi-compost-red', - products = { - presets.special.red.infantry:extend({ name='sukhumi-defense-red'}), - presets.defenses.red.infantry:extend({ name='sukhumi-garrison-red'}) - } - }), - presets.upgrades.supply.fuelTank:extend({ - name='sukhumi-fuel-red', - products = { - presets.missions.supply.helo:extend({name='sukhumi-supply-red-1'}), - presets.missions.supply.helo:extend({name='sukhumi-supply-red-2'}), - presets.missions.supply.transfer:extend({name='sukhumi-transfer-red'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='sukhumi-comcenter-red', - products = { - presets.defenses.red.sa11:extend({ name='sukhumi-airdef-red'}), - presets.missions.attack.sead:extend({name='sukhumi-sead-red', altitude=25000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.attack.cas:extend({name='sukhumi-cas-red', altitude=15000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.bai:extend({name='sukhumi-cas-red', altitude=10000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.strike:extend({name='sukhumi-strike-red', altitude=20000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.patrol.aircraft:extend({name='sukhumi-patrol-red', altitude=25000, range=25}), - presets.missions.patrol.aircraft:extend({name='sukhumi-patrol-red-2', altitude=25000, range=25}) - } - }) - }, - [2] = - { - presets.upgrades.basic.comPost:extend({ - name='sukhumi-compost-blue', - products = { - presets.special.blue.infantry:extend({ name='sukhumi-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='sukhumi-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelTank:extend({ - name='sukhumi-fuel-blue', - products = { - presets.missions.supply.helo:extend({name='sukhumi-supply-blue-1'}), - presets.missions.supply.helo:extend({name='sukhumi-supply-blue-2'}), - presets.missions.supply.transfer:extend({name='sukhumi-transfer-blue'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='sukhumi-comcenter-blue', - products = { - presets.defenses.blue.nasams:extend({ name='sukhumi-airdef-blue'}), - presets.missions.attack.sead:extend({name='sukhumi-sead-blue', altitude=25000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.attack.cas:extend({name='sukhumi-cas-blue', altitude=15000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.bai:extend({name='sukhumi-cas-blue', altitude=10000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.strike:extend({name='sukhumi-strike-blue', altitude=20000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.patrol.aircraft:extend({name='sukhumi-patrol-blue', altitude=25000, range=25}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Sukhumi.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Farm.lua ]]----------------- - -zones.farm = ZoneCommand:new("Farm") -zones.farm.initialState = { side=1 } -zones.farm:defineUpgrades({ - [1] = - { - presets.upgrades.basic.tent:extend({ - name='farm-tent-red', - products = { - presets.special.red.infantry:extend({ name='farm-defense-red'}), - presets.defenses.red.infantry:extend({ name='farm-garrison-red'}) - } - }), - presets.upgrades.supply.farm1:extend({ - name='farm-prod-red-1', - products = { - presets.missions.supply.convoy:extend({ name='farm-supply-red'}), - presets.missions.supply.transfer:extend({name='farm-transfer-red'}) - } - }), - presets.upgrades.supply.farm2:extend({ - name='farm-prod-red-2', - products = { - presets.missions.supply.convoy:extend({ name='farm-supply-red'}), - presets.missions.supply.transfer:extend({name='farm-transfer-red'}) - } - }) - }, - [2] = - { - presets.upgrades.basic.tent:extend({ - name='farm-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='farm-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='farm-garrison-blue'}) - } - }), - presets.upgrades.supply.farm1:extend({ - name='farm-prod-blue-1', - products = { - presets.missions.supply.convoy:extend({ name='farm-supply-blue'}), - presets.missions.supply.transfer:extend({name='farm-transfer-blue'}) - } - }), - presets.upgrades.supply.farm2:extend({ - name='farm-prod-blue-2', - products = { - presets.missions.supply.convoy:extend({ name='farm-supply-blue'}), - presets.missions.supply.transfer:extend({name='farm-transfer-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Farm.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Romeo.lua ]]----------------- - -zones.romeo = ZoneCommand:new("Romeo") -zones.romeo.initialState = { side=1 } -zones.romeo:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='romeo-tent-red', - products = { - presets.special.red.infantry:extend({ name='romeo-defense-red'}), - presets.defenses.red.infantry:extend({ name='romeo-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='romeo-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='romeo-supply-red'}), - presets.missions.supply.transfer:extend({name='romeo-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='romeo-ammo-red', - products = { - presets.missions.attack.surface:extend({name='romeo-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='romeo-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='romeo-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='romeo-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='romeo-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='romeo-supply-blue'}), - presets.missions.supply.transfer:extend({name='romeo-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='romeo-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='romeo-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Romeo.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Zulu.lua ]]----------------- - -zones.zulu = ZoneCommand:new("Zulu") -zones.zulu.initialState = { side=1 } -zones.zulu:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='zulu-tent-red', - products = { - presets.special.red.infantry:extend({ name='zulu-defense-red'}), - presets.defenses.red.infantry:extend({ name='zulu-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='zulu-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='zulu-supply-red'}), - presets.missions.supply.transfer:extend({name='zulu-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='zulu-ammo-red', - products = { - presets.missions.attack.surface:extend({name='zulu-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='zulu-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='zulu-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='zulu-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='zulu-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='zulu-supply-blue'}), - presets.missions.supply.transfer:extend({name='zulu-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='zulu-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='zulu-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Zulu.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Yankee.lua ]]----------------- - -zones.yankee = ZoneCommand:new("Yankee") -zones.yankee.initialState = { side=1 } -zones.yankee:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='yankee-tent-red', - products = { - presets.special.red.infantry:extend({ name='yankee-defense-red'}), - presets.defenses.red.infantry:extend({ name='yankee-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='yankee-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='yankee-supply-red'}), - presets.missions.supply.transfer:extend({name='yankee-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='yankee-ammo-red', - products = { - presets.missions.attack.surface:extend({name='yankee-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='yankee-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='yankee-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='yankee-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='yankee-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='yankee-supply-blue'}), - presets.missions.supply.transfer:extend({name='yankee-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='yankee-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='yankee-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Yankee.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Malgobek.lua ]]----------------- - -zones.malgobek = ZoneCommand:new("Malgobek") -zones.malgobek.initialState = { side=1 } -zones.malgobek:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='malgobek-tent-red', - products = { - presets.special.red.infantry:extend({ name='malgobek-defense-red'}), - presets.defenses.red.infantry:extend({ name='malgobek-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='malgobek-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='malgobek-supply-red'}), - presets.missions.supply.transfer:extend({name='malgobek-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='malgobek-ammo-red', - products = { - presets.missions.attack.surface:extend({name='malgobek-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='malgobek-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='malgobek-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='malgobek-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='malgobek-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='malgobek-supply-blue'}), - presets.missions.supply.transfer:extend({name='malgobek-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='malgobek-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='malgobek-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Malgobek.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Kilo.lua ]]----------------- - -zones.kilo = ZoneCommand:new("Kilo") -zones.kilo.initialState = { side=1 } -zones.kilo:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='kilo-tent-red', - products = { - presets.special.red.infantry:extend({ name='kilo-defense-red'}), - presets.defenses.red.infantry:extend({ name='kilo-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='kilo-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='kilo-supply-red'}), - presets.missions.supply.transfer:extend({name='kilo-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='kilo-ammo-red', - products = { - presets.missions.attack.surface:extend({name='kilo-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='kilo-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='kilo-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='kilo-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='kilo-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='kilo-supply-blue'}), - presets.missions.supply.transfer:extend({name='kilo-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='kilo-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='kilo-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Kilo.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Quebec.lua ]]----------------- - -zones.quebec = ZoneCommand:new("Quebec") -zones.quebec.initialState = { side=1 } -zones.quebec.keepActive = true -zones.quebec:defineUpgrades({ - [1] = - { - presets.upgrades.basic.tent:extend({ - name='quebec-tent-red', - products = { - presets.special.red.infantry:extend({ name='quebec-defense-red'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='quebec-comcenter-red', - products = { - presets.defenses.red.sam:extend({ name='quebec-sam-red'}) - } - }) - }, - [2] = - { - presets.upgrades.basic.tent:extend({ - name='quebec-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='quebec-defense-blue'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='quebec-comcenter-blue', - products = { - presets.defenses.blue.sam:extend({ name='quebec-sam-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Quebec.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/OilFields.lua ]]----------------- - -zones.oilfields = ZoneCommand:new("Oil Fields") -zones.oilfields.initialState = { side=1 } -zones.oilfields:defineUpgrades({ - [1] = { - presets.upgrades.basic.outpost:extend({ - name='oilfields-outpost-red', - products = { - presets.special.red.infantry:extend({ name='oilfields-defense-red'}), - presets.defenses.red.infantry:extend({ name='oilfields-garrison-red'}) - } - }), - presets.upgrades.supply.oilPump:extend({ - name='oilfields-pump-red-1', - products = { - presets.missions.supply.transfer:extend({name='oilfields-transfer-red1'}) - } - }), - presets.upgrades.supply.oilPump:extend({ - name='oilfields-pump-red-2', - products = { - presets.missions.supply.convoy:extend({name='oilfields-supply-red-1'}) - } - }), - presets.upgrades.supply.oilPump:extend({ - name='oilfields-pump-red-3', - products = { - presets.missions.supply.transfer:extend({name='oilfields-transfer-red2'}) - } - }), - presets.upgrades.supply.oilPump:extend({ - name='oilfields-pump-red-4', - products = { - presets.missions.supply.convoy:extend({name='oilfields-supply-red-2'}) - } - }) - }, - [2] = { - presets.upgrades.basic.outpost:extend({ - name='oilfields-outpost-blue', - products = { - presets.special.blue.infantry:extend({ name='oilfields-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='oilfields-garrison-blue'}) - } - }), - presets.upgrades.supply.oilPump:extend({ - name='oilfields-pump-blue-1', - products = { - presets.missions.supply.transfer:extend({name='oilfields-transfer-blue1'}) - } - }), - presets.upgrades.supply.oilPump:extend({ - name='oilfields-pump-blue-2', - products = { - presets.missions.supply.convoy:extend({name='oilfields-supply-blue-1'}) - } - }), - presets.upgrades.supply.oilPump:extend({ - name='oilfields-pump-blue-3', - products = { - presets.missions.supply.transfer:extend({name='oilfields-transfer-blue2'}) - } - }), - presets.upgrades.supply.oilPump:extend({ - name='oilfields-pump-blue-4', - products = { - presets.missions.supply.convoy:extend({name='oilfields-supply-blue-2'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/OilFields.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Echo.lua ]]----------------- - -zones.echo = ZoneCommand:new("Echo") -zones.echo.initialState = { side=2 } -zones.echo:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='echo-tent-red', - products = { - presets.special.red.infantry:extend({ name='echo-defense-red'}), - presets.defenses.red.infantry:extend({ name='echo-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='echo-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='echo-supply-red'}), - presets.missions.supply.transfer:extend({name='echo-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='echo-ammo-red', - products = { - presets.missions.attack.surface:extend({name='echo-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='echo-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='echo-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='echo-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='echo-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='echo-supply-blue'}), - presets.missions.supply.transfer:extend({name='echo-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='echo-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='echo-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Echo.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Kobuleti.lua ]]----------------- - -zones.kobuleti = ZoneCommand:new("Kobuleti") -zones.kobuleti.initialState = { side=2 } -zones.kobuleti.keepActive = true -zones.kobuleti.isHeloSpawn = true -zones.kobuleti.isPlaneSpawn = true -zones.kobuleti.maxResource = 50000 -zones.kobuleti:defineUpgrades({ - [1] = - { - presets.upgrades.basic.comPost:extend({ - name='kobuleti-compost-red', - products = { - presets.special.red.infantry:extend({ name='kobuleti-defense-red'}), - presets.defenses.red.infantry:extend({ name='kobuleti-garrison-red'}), - presets.missions.attack.surface:extend({ name='kobuleti-assault-red'}) - } - }), - presets.upgrades.supply.fuelTank:extend({ - name='kobuleti-fuel-red', - products = { - presets.missions.supply.helo:extend({name='kobuleti-supply-red-1'}), - presets.missions.supply.helo:extend({name='kobuleti-supply-red-2'}), - presets.missions.supply.transfer:extend({name='kobuleti-transfer-red'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='kobuleti-comcenter-red', - products = { - presets.defenses.red.shorad:extend({ name='kobuleti-airdef-red'}), - presets.missions.attack.sead:extend({name='kobuleti-sead-red', altitude=25000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.attack.cas:extend({name='kobuleti-cas-red', altitude=15000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.bai:extend({name='kobuleti-cas-red', altitude=10000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.strike:extend({name='kobuleti-strike-red', altitude=20000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.patrol.aircraft:extend({name='kobuleti-patrol-red', altitude=25000, range=25}) - } - }) - }, - [2] = - { - presets.upgrades.basic.comPost:extend({ - name='kobuleti-compost-blue', - products = { - presets.special.blue.infantry:extend({ name='kobuleti-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='kobuleti-garrison-blue'}), - presets.missions.attack.surface:extend({ name='kobuleti-assault-blue'}) - } - }), - presets.upgrades.supply.fuelTank:extend({ - name='kobuleti-fuel-blue', - products = { - presets.missions.supply.helo:extend({name='kobuleti-supply-blue-1'}), - presets.missions.supply.helo:extend({name='kobuleti-supply-blue-2'}), - presets.missions.supply.transfer:extend({name='kobuleti-transfer-blue'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='kobuleti-comcenter-blue', - products = { - presets.defenses.blue.shorad:extend({ name='kobuleti-airdef-blue'}), - presets.missions.attack.sead:extend({name='kobuleti-sead-blue', altitude=25000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.attack.cas:extend({name='kobuleti-cas-blue', altitude=15000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.bai:extend({name='kobuleti-cas-blue', altitude=10000, expend=AI.Task.WeaponExpend.ONE}), - presets.missions.attack.strike:extend({name='kobuleti-strike-blue', altitude=20000, expend=AI.Task.WeaponExpend.TWO}), - presets.missions.patrol.aircraft:extend({name='kobuleti-patrol-blue', altitude=25000, range=25}), - presets.missions.support.awacs:extend({name='kobuleti-awacs-blue', altitude=30000, freq=258.5}), - presets.missions.support.tanker:extend({name='kobuleti-tanker-blue', altitude=23000, freq=258, tacan='38', variant='Boom'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Kobuleti.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Alpha.lua ]]----------------- - -zones.alpha = ZoneCommand:new('Alpha') -zones.alpha.initialState = { side=2 } -zones.alpha:defineUpgrades({ - [1] = --red side - { - presets.upgrades.basic.tent:extend({ - name = 'alpha-tent-red', - products = { - presets.special.red.infantry:extend({ name='alpha-defense-red'}), - presets.defenses.red.infantry:extend({ name='alpha-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name = 'alpha-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({ name='alpha-supply-red'}), - presets.missions.supply.transfer:extend({name='alpha-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name = 'alpha-ammo-red', - products = { - presets.missions.attack.surface:extend({ name='alpha-assault-red'}) - } - }) - }, - [2] = --blue side - { - presets.upgrades.basic.tent:extend({ - name = 'alpha-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='alpha-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='alpha-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name = 'alpha-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({ name='alpha-supply-blue'}), - presets.missions.supply.transfer:extend({name='alpha-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name = 'alpha-ammo-blue', - products = { - presets.missions.attack.surface:extend({ name='alpha-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Alpha.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Foxtrot.lua ]]----------------- - -zones.foxtrot = ZoneCommand:new("Foxtrot") -zones.foxtrot.initialState = { side=2 } -zones.foxtrot:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='foxtrot-tent-red', - products = { - presets.special.red.infantry:extend({ name='foxtrot-defense-red'}), - presets.defenses.red.infantry:extend({ name='foxtrot-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='foxtrot-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='foxtrot-supply-red'}), - presets.missions.supply.transfer:extend({name='foxtrot-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='foxtrot-ammo-red', - products = { - presets.missions.attack.surface:extend({name='foxtrot-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='foxtrot-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='foxtrot-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='foxtrot-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='foxtrot-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='foxtrot-supply-blue'}), - presets.missions.supply.transfer:extend({name='foxtrot-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='foxtrot-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='foxtrot-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Foxtrot.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Sierra.lua ]]----------------- - -zones.sierra = ZoneCommand:new("Sierra") -zones.sierra.initialState = { side=1 } -zones.sierra.isHeloSpawn = true -zones.sierra:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='sierra-tent-red', - products = { - presets.special.red.infantry:extend({ name='sierra-defense-red'}), - presets.defenses.red.infantry:extend({ name='sierra-garrison-red'}) - } - }), - presets.upgrades.supply.fuelTankFarp:extend({ - name='sierra-fuel-red', - products = { - presets.missions.supply.helo:extend({name='sierra-supply-red'}), - presets.missions.supply.helo:extend({name='sierra-supply-red-1'}), - presets.missions.supply.transfer:extend({name='sierra-transfer-red'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='sierra-comcenter-red', - products = { - presets.defenses.red.shorad:extend({name='sierra-sam-red'}), - presets.missions.attack.helo:extend({name='sierra-cas-red', altitude=200, expend=AI.Task.WeaponExpend.HALF }) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='sierra-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='sierra-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='sierra-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelTankFarp:extend({ - name='sierra-fuel-blue', - products = { - presets.missions.supply.helo:extend({name='sierra-supply-blue'}), - presets.missions.supply.helo:extend({name='sierra-supply-blue-1'}), - presets.missions.supply.transfer:extend({name='sierra-transfer-blue'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='sierra-comcenter-blue', - products = { - presets.defenses.blue.shorad:extend({name='sierra-sam-blue'}), - presets.missions.attack.helo:extend({name='sierra-cas-blue', altitude=200, expend=AI.Task.WeaponExpend.HALF }) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Sierra.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Oni.lua ]]----------------- - -zones.oni = ZoneCommand:new("Oni") -zones.oni.initialState = { side=1 } -zones.oni:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='oni-tent-red', - products = { - presets.special.red.infantry:extend({ name='oni-defense-red'}), - presets.defenses.red.infantry:extend({ name='oni-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='oni-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='oni-supply-red'}), - presets.missions.supply.helo:extend({name='oni-supply-red-2'}), - presets.missions.supply.transfer:extend({name='oni-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='oni-ammo-red', - products = { - presets.missions.attack.surface:extend({name='oni-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='oni-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='oni-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='oni-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='oni-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='oni-supply-blue'}), - presets.missions.supply.helo:extend({name='oni-supply-blue-2'}), - presets.missions.supply.transfer:extend({name='oni-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='oni-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='oni-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Oni.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Hotel.lua ]]----------------- - -zones.hotel = ZoneCommand:new("Hotel") -zones.hotel.initialState = nil -zones.hotel:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='hotel-tent-red', - products = { - presets.special.red.infantry:extend({ name='hotel-defense-red'}), - presets.defenses.red.infantry:extend({ name='hotel-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='hotel-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='hotel-supply-red'}), - presets.missions.supply.transfer:extend({name='hotel-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='hotel-ammo-red', - products = { - presets.missions.attack.surface:extend({name='hotel-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='hotel-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='hotel-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='hotel-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='hotel-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='hotel-supply-blue'}), - presets.missions.supply.transfer:extend({name='hotel-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='hotel-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='hotel-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Hotel.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Victor.lua ]]----------------- - -zones.victor = ZoneCommand:new("Victor") -zones.victor.initialState = { side=1 } -zones.victor:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='victor-tent-red', - products = { - presets.special.red.infantry:extend({ name='victor-defense-red'}), - presets.defenses.red.infantry:extend({ name='victor-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='victor-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='victor-supply-red'}), - presets.missions.supply.helo:extend({name='victor-supply-red-2'}), - presets.missions.supply.transfer:extend({name='victor-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='victor-ammo-red', - products = { - presets.missions.attack.surface:extend({name='victor-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='victor-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='victor-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='victor-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='victor-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='victor-supply-blue'}), - presets.missions.supply.helo:extend({name='victor-supply-blue-2'}), - presets.missions.supply.transfer:extend({name='victor-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='victor-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='victor-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Victor.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Tango.lua ]]----------------- - -zones.tango = ZoneCommand:new("Tango") -zones.tango.initialState = { side=1 } -zones.tango.isHeloSpawn = true -zones.tango:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='tango-tent-red', - products = { - presets.special.red.infantry:extend({ name='tango-defense-red'}), - presets.defenses.red.infantry:extend({ name='tango-garrison-red'}) - } - }), - presets.upgrades.supply.fuelTankFarp:extend({ - name='tango-fuel-red', - products = { - presets.missions.supply.helo:extend({name='tango-supply-red'}), - presets.missions.supply.helo:extend({name='tango-supply-red-1'}), - presets.missions.supply.transfer:extend({name='tango-transfer-red'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='tango-comcenter-red', - products = { - presets.defenses.red.shorad:extend({name='tango-sam-red'}), - presets.missions.attack.helo:extend({name='tango-cas-red', altitude=200, expend=AI.Task.WeaponExpend.HALF }) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='tango-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='tango-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='tango-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelTankFarp:extend({ - name='tango-fuel-blue', - products = { - presets.missions.supply.helo:extend({name='tango-supply-blue'}), - presets.missions.supply.helo:extend({name='tango-supply-blue-1'}), - presets.missions.supply.transfer:extend({name='tango-transfer-blue'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='tango-comcenter-blue', - products = { - presets.defenses.blue.shorad:extend({name='tango-sam-blue'}), - presets.missions.attack.helo:extend({name='tango-cas-blue', altitude=200, expend=AI.Task.WeaponExpend.HALF }) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Tango.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Unal.lua ]]----------------- - -zones.unal = ZoneCommand:new("Unal") -zones.unal.initialState = { side=1 } -zones.unal.isHeloSpawn = true -zones.unal:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='unal-tent-red', - products = { - presets.special.red.infantry:extend({ name='unal-defense-red'}), - presets.defenses.red.infantry:extend({ name='unal-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='unal-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='unal-supply-red'}), - presets.missions.supply.helo:extend({name='unal-supply-red-2'}), - presets.missions.supply.transfer:extend({name='unal-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='unal-ammo-red', - products = { - presets.missions.attack.surface:extend({name='unal-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='unal-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='unal-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='unal-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='unal-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='unal-supply-blue'}), - presets.missions.supply.helo:extend({name='unal-supply-blue-2'}), - presets.missions.supply.transfer:extend({name='unal-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='unal-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='unal-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Unal.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Beslan.lua ]]----------------- - -zones.beslan = ZoneCommand:new("Beslan") -zones.beslan.initialState = { side=1 } -zones.beslan.keepActive = true -zones.beslan.maxResource = 50000 -zones.beslan:defineUpgrades({ - [1] = - { - presets.upgrades.basic.comPost:extend({ - name='beslan-compost-red', - products = { - presets.special.red.infantry:extend({ name='beslan-defense-red'}), - presets.defenses.red.infantry:extend({ name='beslan-garrison-red'}) - } - }), - presets.upgrades.supply.fuelTank:extend({ - name='beslan-fuel-red', - products = { - presets.missions.supply.helo:extend({name='beslan-supply-red-1'}), - presets.missions.supply.helo:extend({name='beslan-supply-red-2'}), - presets.missions.supply.convoy_escorted:extend({name='beslan-supply-red-3'}), - presets.missions.supply.transfer:extend({name='beslan-transfer-red'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='beslan-comcenter-red', - products = { - presets.defenses.red.sa5:extend({ name='beslan-airdef-red'}), - presets.missions.attack.sead:extend({name='beslan-sead-red', altitude=25000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.attack.strike:extend({name='beslan-strike-red', altitude=30000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.attack.strike:extend({name='beslan-strike-red-1', altitude=30000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.patrol.aircraft:extend({name='beslan-patrol-red', altitude=25000, range=25}) - } - }) - }, - [2] = - { - presets.upgrades.basic.comPost:extend({ - name='beslan-compost-blue', - products = { - presets.special.blue.infantry:extend({ name='beslan-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='beslan-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelTank:extend({ - name='beslan-fuel-blue', - products = { - presets.missions.supply.helo:extend({name='beslan-supply-blue-1'}), - presets.missions.supply.helo:extend({name='beslan-supply-blue-2'}), - presets.missions.supply.convoy_escorted:extend({name='beslan-supply-blue-3'}), - presets.missions.supply.transfer:extend({name='beslan-transfer-blue'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='beslan-comcenter-blue', - products = { - presets.defenses.blue.patriot:extend({ name='beslan-airdef-blue'}), - presets.missions.attack.sead:extend({name='beslan-sead-blue', altitude=25000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.attack.strike:extend({name='beslan-strike-blue', altitude=30000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.attack.strike:extend({name='beslan-strike-blue-1', altitude=30000, expend=AI.Task.WeaponExpend.ALL}), - presets.missions.patrol.aircraft:extend({name='beslan-patrol-blue', altitude=25000, range=25}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Beslan.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Bravo.lua ]]----------------- - -zones.bravo = ZoneCommand:new("Bravo") -zones.bravo.initialState = { side=2 } -zones.bravo:defineUpgrades({ - [1] = - { - presets.upgrades.basic.comPost:extend({ - name='bravo-compost-red', - products = { - presets.special.red.infantry:extend({ name='bravo-defense-red'}), - presets.defenses.red.infantry:extend({ name='bravo-garrison-red'}) - } - }), - presets.upgrades.supply.fuelTankFarp:extend({ - name='bravo-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({ name='bravo-supply-red'}), - presets.missions.supply.transfer:extend({name='bravo-transfer-red'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='bravo-comcenter-red', - products = { - presets.defenses.red.shorad:extend({ name='bravo-airdef-red'}), - presets.missions.attack.helo:extend({name='bravo-attack-red', altitude=200, expend=AI.Task.WeaponExpend.HALF}) - } - }) - }, - [2] = - { - presets.upgrades.basic.comPost:extend({ - name='bravo-compost-blue', - products = { - presets.special.blue.infantry:extend({ name='bravo-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='bravo-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelTankFarp:extend({ - name='bravo-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({ name='bravo-supply-blue'}), - presets.missions.supply.transfer:extend({name='bravo-transfer-blue'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='bravo-comcenter-blue', - products = { - presets.defenses.blue.shorad:extend({ name='bravo-airdef-blue'}), - presets.missions.attack.helo:extend({name='bravo-attack-blue', altitude=200, expend=AI.Task.WeaponExpend.HALF }) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Bravo.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/WeaponDepot.lua ]]----------------- - -zones.weapondepot = ZoneCommand:new("Weapon Depot") -zones.weapondepot.initialState = { side=1 } -zones.weapondepot:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='weapons-tent-red', - products = { - presets.special.red.infantry:extend({ name='weapons-defense-red'}), - presets.defenses.red.infantry:extend({ name='weapons-garrison-red'}) - } - }), - presets.upgrades.supply.ammoDepot:extend({ - name='weapons-ammo-red-1', - products = { - presets.missions.supply.convoy:extend({name='weapons-supply-red-1'}), - presets.missions.supply.transfer:extend({name='weapons-transfer-red-1'}) - } - }), - presets.upgrades.supply.ammoDepot:extend({ - name='weapons-ammo-red-2', - products = { - presets.missions.supply.convoy:extend({name='weapons-supply-red-2'}), - presets.missions.supply.transfer:extend({name='weapons-transfer-red-2'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='weapons-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='weapons-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='weapons-garrison-blue'}) - } - }), - presets.upgrades.supply.ammoDepot:extend({ - name='weapons-ammo-blue-1', - products = { - presets.missions.supply.convoy:extend({name='weapons-supply-blue-1'}), - presets.missions.supply.transfer:extend({name='weapons-transfer-blue-1'}) - } - }), - presets.upgrades.supply.ammoDepot:extend({ - name='weapons-ammo-blue-2', - products = { - presets.missions.supply.convoy:extend({name='weapons-supply-blue-2'}), - presets.missions.supply.transfer:extend({name='weapons-transfer-blue-2'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/WeaponDepot.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Delta.lua ]]----------------- - -zones.delta = ZoneCommand:new("Delta") -zones.delta.initialState = { side=2 } -zones.delta:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='delta-tent-red', - products = { - presets.special.red.infantry:extend({ name='delta-defense-red'}), - presets.defenses.red.infantry:extend({ name='delta-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='delta-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='delta-supply-red'}), - presets.missions.supply.transfer:extend({name='delta-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='delta-ammo-red', - products = { - presets.missions.attack.surface:extend({name='delta-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='delta-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='delta-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='delta-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='delta-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='delta-supply-blue'}), - presets.missions.supply.transfer:extend({name='delta-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='delta-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='delta-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Delta.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Cherkessk.lua ]]----------------- - -zones.cherkessk = ZoneCommand:new("Cherkessk") -zones.cherkessk.initialState = { side=1 } -zones.cherkessk.isHeloSpawn = true -zones.cherkessk:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='cherkessk-tent-red', - products = { - presets.special.red.infantry:extend({ name='cherkessk-defense-red'}), - presets.defenses.red.infantry:extend({ name='cherkessk-garrison-red'}) - } - }), - presets.upgrades.supply.fuelTankFarp:extend({ - name='cherkessk-fuel-red', - products = { - presets.missions.supply.helo:extend({name='cherkessk-supply-red'}), - presets.missions.supply.helo:extend({name='cherkessk-supply-red-1'}), - presets.missions.supply.transfer:extend({name='cherkessk-transfer-red'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='cherkessk-comcenter-red', - products = { - presets.defenses.red.shorad:extend({name='cherkessk-sam-red'}), - presets.missions.attack.helo:extend({name='cherkessk-cas-red', altitude=200, expend=AI.Task.WeaponExpend.HALF }), - presets.missions.attack.helo:extend({name='cherkessk-cas-red-1', altitude=200, expend=AI.Task.WeaponExpend.HALF }), - presets.missions.attack.surface:extend({name='cherkessk-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='cherkessk-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='cherkessk-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='cherkessk-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelTankFarp:extend({ - name='cherkessk-fuel-blue', - products = { - presets.missions.supply.helo:extend({name='cherkessk-supply-blue'}), - presets.missions.supply.helo:extend({name='cherkessk-supply-blue-1'}), - presets.missions.supply.transfer:extend({name='cherkessk-transfer-blue'}), - presets.missions.attack.surface:extend({name='cherkessk-assault-blue'}) - } - }), - presets.upgrades.airdef.comCenter:extend({ - name='cherkessk-comcenter-blue', - products = { - presets.defenses.blue.shorad:extend({name='cherkessk-sam-blue'}), - presets.missions.attack.helo:extend({name='cherkessk-cas-blue', altitude=200, expend=AI.Task.WeaponExpend.HALF }), - presets.missions.attack.helo:extend({name='cherkessk-cas-blue-1', altitude=200, expend=AI.Task.WeaponExpend.HALF }) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Cherkessk.lua ]]----------------- - - - ------------------[[ MissionSpecific/PretenseCaucasus/ZoneDefinitions/Juliett.lua ]]----------------- - -zones.juliett = ZoneCommand:new("Juliett") -zones.initialState = nil -zones.juliett:defineUpgrades({ - [1] = { - presets.upgrades.basic.tent:extend({ - name='juliett-tent-red', - products = { - presets.special.red.infantry:extend({ name='juliett-defense-red'}), - presets.defenses.red.infantry:extend({ name='juliett-garrison-red'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='juliett-fuel-red', - products = { - presets.missions.supply.convoy_escorted:extend({name='juliett-supply-red'}), - presets.missions.supply.transfer:extend({name='juliett-transfer-red'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='juliett-ammo-red', - products = { - presets.missions.attack.surface:extend({name='juliett-assault-red'}) - } - }) - }, - [2] = { - presets.upgrades.basic.tent:extend({ - name='juliett-tent-blue', - products = { - presets.special.blue.infantry:extend({ name='juliett-defense-blue'}), - presets.defenses.blue.infantry:extend({ name='juliett-garrison-blue'}) - } - }), - presets.upgrades.supply.fuelCache:extend({ - name='juliett-fuel-blue', - products = { - presets.missions.supply.convoy_escorted:extend({name='juliett-supply-blue'}), - presets.missions.supply.transfer:extend({name='juliett-transfer-blue'}) - } - }), - presets.upgrades.attack.ammoCache:extend({ - name='juliett-ammo-blue', - products = { - presets.missions.attack.surface:extend({name='juliett-assault-blue'}) - } - }) - } -}) - ------------------[[ END OF MissionSpecific/PretenseCaucasus/ZoneDefinitions/Juliett.lua ]]----------------- - - - - cm = ConnectionManager:new() - cm:addConnection('Batumi', 'Alpha') - cm:addConnection('Alpha', 'Bravo') - cm:addConnection('Bravo', 'Kobuleti') - cm:addConnection('Bravo', 'Factory') - cm:addConnection('Kobuleti', 'Factory') - cm:addConnection('Kobuleti', 'Charlie') - cm:addConnection('Foxtrot', 'Charlie') - cm:addConnection('Foxtrot', 'Kobuleti') - cm:addConnection('Delta','Foxtrot') - cm:addConnection('Delta','Kobuleti') - cm:addConnection('Delta','Factory') - cm:addConnection('Echo','Charlie') - cm:addConnection('Golf','Echo') - cm:addConnection('Golf','Foxtrot') - cm:addConnection('India','Delta') - cm:addConnection('Hotel','Golf') - cm:addConnection('Hotel','Foxtrot') - cm:addConnection('Hotel','Delta') - cm:addConnection('Hotel','India') - cm:addConnection('Juliett','Echo') - cm:addConnection('Juliett','Golf') - cm:addConnection('Senaki','Juliett') - cm:addConnection('Senaki','Golf') - cm:addConnection('Senaki','Hotel') - cm:addConnection('Kutaisi','Hotel') - cm:addConnection('Kutaisi','India') - cm:addConnection('Kilo','Juliett') - cm:addConnection('Mike','Kutaisi') - cm:addConnection('Mike','Senaki') - cm:addConnection('Romeo','Mike') - cm:addConnection('Romeo','Kutaisi') - cm:addConnection('Weapon Depot','Juliett') - cm:addConnection('Weapon Depot','Senaki') - cm:addConnection('Weapon Depot','Kilo') - cm:addConnection('November','Weapon Depot') - cm:addConnection('November','Senaki') - cm:addConnection('November','Mike') - cm:addConnection('Oil Fields','Romeo') - cm:addConnection('Quebec','Kilo') - cm:addConnection('Zugdidi','Weapon Depot') - cm:addConnection('Zugdidi','Quebec') - cm:addConnection('Zugdidi','November') - cm:addConnection('Zugdidi','Kilo') - cm:addConnection('Distillery','November') - cm:addConnection('Distillery','Mike') - cm:addConnection('Zugdidi','Papa') - cm:addConnection('November','Papa') - cm:addConnection('Sierra','Papa') - cm:addConnection('Sierra','Zugdidi') - cm:addConnection('Sierra','Uniform') - cm:addConnection('Mine','Uniform') - cm:addConnection('Tango','Quebec') - cm:addConnection('Tango','Zugdidi') - cm:addConnection('Sierra','Tango') - cm:addConnection('Whiskey','Tango') - cm:addConnection('Ochamchira','Tango') - cm:addConnection('Ochamchira','Whiskey') - cm:addConnection('Ochamchira','Farm') - cm:addConnection('Ochamchira','Zulu') - cm:addConnection('Farm','Zulu') - cm:addConnection('Sukhumi','Zulu') - cm:addConnection('Lentehi','Distillery', true, 3000) - cm:addConnection('Lentehi','Babugent', true, 5000) - cm:addConnection('Nalchik','Babugent') - cm:addConnection('Victor','Distillery', true, 2000) - cm:addConnection('Victor','Romeo') - cm:addConnection('Victor','Lentehi') - cm:addConnection('Victor','Oil Fields', true, 2000) - cm:addConnection('Victor','Oni') - cm:addConnection('Unal','Oni', true, 4500) - cm:addConnection('Beslan','Unal') - cm:addConnection('Digora','Beslan') - cm:addConnection('Digora','Unal') - cm:addConnection('Digora','Babugent') - cm:addConnection('Terek','Digora') - cm:addConnection('Terek','Nalchik') - cm:addConnection('Terek','Beslan') - cm:addConnection('Prohladniy','Terek') - cm:addConnection('Prohladniy','Nalchik') - cm:addConnection('Malgobek','Terek') - cm:addConnection('Malgobek','Beslan') - cm:addConnection('Lima','Mine') - cm:addConnection('Lima','Lentehi', true, 4000) - cm:addConnection('Tyrnyauz','Lima', true, 4000) - cm:addConnection('Tyrnyauz','Nalchik') - cm:addConnection('XRay','Sukhumi') - cm:addConnection('Oscar','Sukhumi') - cm:addConnection('Oscar','XRay') - cm:addConnection('Mozdok','Malgobek') - cm:addConnection('Mozdok','Prohladniy') - cm:addConnection('Gudauta','Oscar') - cm:addConnection('Yankee','Gudauta') - cm:addConnection('Sochi','Yankee') - cm:addConnection('Refinery','XRay', true, 4000) - cm:addConnection('Refinery','Humara') - cm:addConnection('Intel Center','Tyrnyauz') - cm:addConnection('Intel Center','Nalchik') - cm:addConnection('Intel Center','Prohladniy') - cm:addConnection('Intel Center','Kislovodsk') - cm:addConnection('Mineralnye','Intel Center') - cm:addConnection('Kislovodsk','Mineralnye') - cm:addConnection('Tallyk','Mineralnye') - cm:addConnection('Tallyk','Kislovodsk') - cm:addConnection('Power Plant','Mineralnye') - cm:addConnection('Power Plant','Tallyk') - cm:addConnection('Cherkessk','Tallyk') - cm:addConnection('Cherkessk','Power Plant') - cm:addConnection('Cherkessk','Humara') -end - -ZoneCommand.setNeighbours(cm) - -bm = BattlefieldManager:new() - -mc = MarkerCommands:new() - -pt = PlayerTracker:new(mc) - -mt = MissionTracker:new(pt, mc) - -st = SquadTracker:new() - -ct = CSARTracker:new() - -pl = PlayerLogistics:new(mt, pt, st, ct) - -gci = GCI:new(2) - -gm = GroupMonitor:new(cm) -ZoneCommand.groupMonitor = gm - --- PlayerLogistics:registerSquadGroup(squadType, groupname, weight,cost,jobtime,extracttime, squadSize) -pl:registerSquadGroup(PlayerLogistics.infantryTypes.capture, 'capture-squad', 700, 200, 60, 60*30, 4) -pl:registerSquadGroup(PlayerLogistics.infantryTypes.sabotage, 'sabotage-squad', 800, 500, 60*5, 60*30, 4) -pl:registerSquadGroup(PlayerLogistics.infantryTypes.ambush, 'ambush-squad', 900, 300, 60*20, 60*30, 5) -pl:registerSquadGroup(PlayerLogistics.infantryTypes.engineer, 'engineer-squad', 200, 1000,60, 60*30, 2) -pl:registerSquadGroup(PlayerLogistics.infantryTypes.manpads, 'manpads-squad', 900, 500, 60*20, 60*30, 5) -pl:registerSquadGroup(PlayerLogistics.infantryTypes.spy, 'spy-squad', 100, 300, 60*10, 60*30, 1) -pl:registerSquadGroup(PlayerLogistics.infantryTypes.rapier, 'rapier-squad', 1200,2000,60*60, 60*30, 8) - -Group.getByName('jtacDrone'):destroy() -CommandFunctions.jtac = JTAC:new({name = 'jtacDrone'}) - -pm = PersistenceManager:new(savefile, gm, st, ct, pl) -pm:load() - -if pm:canRestore() then - pm:restoreZones() - pm:restoreAIMissions() - pm:restoreBattlefield() - pm:restoreCsar() - pm:restoreSquads() -else - --initial states - Starter.start(zones) -end - -timer.scheduleFunction(function(param, time) - pm:save() - env.info("Mission state saved") - return time+60 -end, zones, timer.getTime()+60) - - ---make sure support units are present where needed -ensureSpawn = { - ['golf-farp-suport'] = zones.golf, - ['november-farp-suport'] = zones.november, - ['tango-farp-suport'] = zones.tango, - ['sierra-farp-suport'] = zones.sierra, - ['cherkessk-farp-suport'] = zones.cherkessk, - ['unal-farp-suport'] = zones.unal, - ['tyrnyauz-farp-suport'] = zones.tyrnyauz -} - -for grname, zn in pairs(ensureSpawn) do - local g = Group.getByName(grname) - if g then g:destroy() end -end - -timer.scheduleFunction(function(param, time) - - for grname, zn in pairs(ensureSpawn) do - local g = Group.getByName(grname) - if zn.side == 2 then - if not g then - local err, msg = pcall(mist.respawnGroup,grname,true) - if not err then - env.info("ERROR spawning "..grname) - env.info(msg) - end - end - else - if g then g:destroy() end - end - end - - return time+30 -end, {}, timer.getTime()+30) - - ---supply injection -local blueSupply = {'offmap-supply-blue-1','offmap-supply-blue-2','offmap-supply-blue-3','offmap-supply-blue-4','offmap-supply-blue-5'} -local redSupply = {'offmap-supply-red-1','offmap-supply-red-2','offmap-supply-red-3','offmap-supply-red-4','offmap-supply-red-5'} -local offmapZones = { - zones.batumi, - zones.sochi, - zones.nalchik, - zones.beslan, - zones.mozdok, - zones.mineralnye, --- zones.senaki, --- zones.sukhumi, --- zones.gudauta, --- zones.kobuleti, -} - -supplyPointRegistry = { - blue = {}, - red = {} -} - -for i,v in ipairs(blueSupply) do - local g = Group.getByName(v) - if g then - supplyPointRegistry.blue[v] = g:getUnit(1):getPoint() - end -end - -for i,v in ipairs(redSupply) do - local g = Group.getByName(v) - if g then - supplyPointRegistry.red[v] = g:getUnit(1):getPoint() - end -end - -offmapSupplyRegistry = {} -timer.scheduleFunction(function(param, time) - local availableBlue = {} - for i,v in ipairs(param.blue) do - if offmapSupplyRegistry[v] == nil then - table.insert(availableBlue, v) - end - end - - local availableRed = {} - for i,v in ipairs(param.red) do - if offmapSupplyRegistry[v] == nil then - table.insert(availableRed, v) - end - end - - local redtargets = {} - local bluetargets = {} - for _, zn in ipairs(param.offmapZones) do - if zn:needsSupplies(3000) then - local isOnRoute = false - for _,data in pairs(offmapSupplyRegistry) do - if data.zone.name == zn.name then - isOnRoute = true - break - end - end - if not isOnRoute then - if zn.side == 1 then - table.insert(redtargets, zn) - elseif zn.side == 2 then - table.insert(bluetargets, zn) - end - end - end - end - - if #availableRed > 0 and #redtargets > 0 then - local zn = redtargets[math.random(1,#redtargets)] - - local red = nil - local minD = 999999999 - for i,v in ipairs(availableRed) do - local d = mist.utils.get2DDist(zn.zone.point, supplyPointRegistry.red[v]) - if d < minD then - red = v - minD = d - end - end - - if not red then red = availableRed[math.random(1,#availableRed)] end - - local gr = red - red = nil - mist.respawnGroup(gr, true) - offmapSupplyRegistry[gr] = {zone = zn, assigned = timer.getAbsTime()} - env.info(gr..' was deployed') - timer.scheduleFunction(function(param,time) - local g = Group.getByName(param.group) - TaskExtensions.landAtAirfield(g, param.target.zone.point) - env.info(param.group..' going to '..param.target.name) - end, {group=gr, target=zn}, timer.getTime()+2) - end - - if #availableBlue > 0 and #bluetargets>0 then - local zn = bluetargets[math.random(1,#bluetargets)] - - local blue = nil - local minD = 999999999 - for i,v in ipairs(availableBlue) do - local d = mist.utils.get2DDist(zn.zone.point, supplyPointRegistry.blue[v]) - if d < minD then - blue = v - minD = d - end - end - - if not blue then blue = availableBlue[math.random(1,#availableBlue)] end - - local gr = blue - blue = nil - mist.respawnGroup(gr, true) - offmapSupplyRegistry[gr] = {zone = zn, assigned = timer.getAbsTime()} - env.info(gr..' was deployed') - timer.scheduleFunction(function(param,time) - local g = Group.getByName(param.group) - TaskExtensions.landAtAirfield(g, param.target.zone.point) - env.info(param.group..' going to '..param.target.name) - end, {group=gr, target=zn}, timer.getTime()+2) - end - - return time+(60*5) -end, {blue = blueSupply, red = redSupply, offmapZones = offmapZones}, timer.getTime()+60) - - - -timer.scheduleFunction(function(param, time) - - for groupname,data in pairs(offmapSupplyRegistry) do - local gr = Group.getByName(groupname) - if not gr then - offmapSupplyRegistry[groupname] = nil - env.info(groupname..' was destroyed') - end - - if gr and ((timer.getAbsTime() - data.assigned) > (60*60)) then - gr:destroy() - offmapSupplyRegistry[groupname] = nil - env.info(groupname..' despawned due to being alive for too long') - end - - if gr and Utils.allGroupIsLanded(gr) and Utils.someOfGroupInZone(gr, data.zone.name) then - data.zone:addResource(15000) - gr:destroy() - offmapSupplyRegistry[groupname] = nil - env.info(groupname..' landed at '..data.zone.name..' and delivered 15000 resources') - end - end - - return time+180 -end, {}, timer.getTime()+180) \ No newline at end of file +do \ No newline at end of file