From dda140c82d8bc8feb49b1d8faafb9e743f76a887 Mon Sep 17 00:00:00 2001 From: Aquanim Date: Sun, 26 Nov 2017 13:33:32 +1100 Subject: [PATCH 1/2] Prototype of Planefac mission. --- campaign/sample/planets/planet34.lua | 1288 +++++++++++++++----------- 1 file changed, 763 insertions(+), 525 deletions(-) diff --git a/campaign/sample/planets/planet34.lua b/campaign/sample/planets/planet34.lua index e72e9869d..da1ffb31e 100644 --- a/campaign/sample/planets/planet34.lua +++ b/campaign/sample/planets/planet34.lua @@ -4,7 +4,7 @@ local function GetPlanet(planetUtilities, planetID) - local image = LUA_DIRNAME .. "images/planets/terran03_damaged.png" + local image = LUA_DIRNAME .. "images/planets/terran01.png" local planetData = { name = "Fel Diacia", @@ -24,7 +24,7 @@ local function GetPlanet(planetUtilities, planetID) primary = "Easnor", primaryType = "A4IV", milRating = 1, - text = [[Assist your ally from the air with Phoenix and Thunderbird bombers. Your opponents have airplane support as well; use Swifts to intercept their bombing runs and control the skies.]] + text = [[The enemy has dug into a reasonable defensive position, assisted by aircraft. Supplement your ground forces with Thunderbirds to disarm enemy defences and Swifts to shoot down their planes.]] }, tips = { { @@ -33,26 +33,21 @@ local function GetPlanet(planetUtilities, planetID) }, { image = "unitpics/bomberdisarm.png", - text = [[The Thunderbird can disarm a large army in a single bombing pass, if it approaches from the right direction. Use the manual fire (default hotkey D) to begin bombing immediately. Be careful not to disarm your own team's units.]] + text = [[The Thunderbird can disarm a large army along its bombing path. Use the manual fire (default hotkey D) to fire immediately.]] }, { image = "unitpics/planefighter.png", - text = [[Use Swifts to protect your own bombers from enemy fighters, or to intercept enemy bombers. Swifts have a manual fire speed boost (default hotkey D) to catch enemies or to retreat from a bad situation.]] - }, - { - image = "unitpics/bomberriot.png", - text = [[The Phoenix drops napalm bombs which are very effective against lighter-weight units. It is comparatively flimsy so keep it away from enemy anti-air and fighters. Hold Ctrl when giving an area-attack command to have a group of Phoenixes attack different targets.]] + text = [[Swifts are good for intercepting enemy bombers or protecting your own. Use the manual fire (default hotkey D) to activate a speed boost.]] }, }, gameConfig = { - mapName = "Obsidian_1.5", + mapName = "Vittra v2.1", playerConfig = { - startX = 1630, - startZ = 1288, + startX = 2500, + startZ = 4500, allyTeam = 0, - facplop = false, commanderParameters = { - facplop = false, + facplop = true, defeatIfDestroyedObjectiveID = 2, }, extraUnlocks = { @@ -65,762 +60,1007 @@ local function GetPlanet(planetUtilities, planetID) }, startUnits = { { - name = "staticrearm", - x = 1096, - z = 1384, - facing = 1, + name = "factoryplane", + x = 2656, + z = 4680, + facing = 2, }, { - name = "factoryplane", - x = 976, - z = 1528, - facing = 0, + name = "staticcon", + x = 2536, + z = 4808, + facing = 2, + selfPatrol = true, }, { name = "staticmex", - x = 1256, - z = 1352, + x = 3096, + z = 4728, facing = 0, }, { name = "staticmex", - x = 1480, - z = 1096, + x = 3240, + z = 5016, facing = 0, }, { - name = "energywind", - x = 1320, - z = 1288, + name = "staticmex", + x = 3432, + z = 4696, facing = 0, }, { - name = "energywind", - x = 1384, - z = 1224, + name = "staticmex", + x = 1672, + z = 4648, facing = 0, }, { - name = "energywind", - x = 1448, - z = 1160, + name = "staticmex", + x = 1864, + z = 4872, facing = 0, }, { name = "staticmex", - x = 264, - z = 744, + x = 2040, + z = 4664, facing = 0, }, { - name = "energywind", - x = 296, - z = 824, - facing = 0, + name = "planecon", + x = 2709, + z = 4418, + facing = 2, }, { - name = "energywind", - x = 184, - z = 776, - facing = 0, + name = "energysolar", + x = 3144, + z = 4824, + facing = 2, }, { - name = "energywind", - x = 328, - z = 696, - facing = 0, + name = "energysolar", + x = 3272, + z = 4888, + facing = 2, }, { - name = "planecon", - x = 1440, - z = 1675, + name = "energysolar", + x = 3304, + z = 4744, facing = 2, }, { - name = "staticheavyradar", - x = 1728, - z = 1744, - facing = 0, - terraformHeight = 1022, + name = "energysolar", + x = 1928, + z = 4744, + facing = 2, }, { - name = "bomberdisarm", - x = 1300, - z = 1675, + name = "energysolar", + x = 1768, + z = 4728, facing = 2, }, { name = "turretlaser", - x = 448, - z = 1584, - facing = 0, + x = 1616, + z = 4768, + facing = 3, }, { name = "turretlaser", - x = 1024, - z = 1856, - facing = 0, + x = 1472, + z = 4384, + facing = 2, }, { name = "turretlaser", - x = 1568, - z = 1824, - facing = 0, + x = 3552, + z = 4752, + facing = 1, }, { name = "turretlaser", - x = 2016, - z = 1456, - facing = 1, + x = 3712, + z = 4416, + facing = 2, }, { name = "turretlaser", - x = 2016, - z = 848, - facing = 1, + x = 2176, + z = 4320, + facing = 2, }, { name = "turretlaser", - x = 1456, - z = 448, + x = 3072, + z = 4432, + facing = 2, + }, + { + name = "staticradar", + x = 3552, + z = 4416, + facing = 2, + }, + { + name = "staticradar", + x = 1584, + z = 4416, facing = 2, }, + { + name = "cloakraid", + x = 2175, + z = 4450, + facing = 0, + }, + { + name = "cloakraid", + x = 2225, + z = 4450, + facing = 0, + }, + { + name = "cloakraid", + x = 2275, + z = 4450, + facing = 0, + }, + { + name = "cloakraid", + x = 2325, + z = 4450, + facing = 0, + }, + { + name = "cloakraid", + x = 2375, + z = 4450, + facing = 0, + }, + { + name = "cloakraid", + x = 2177, + z = 4520, + facing = 0, + }, + { + name = "cloakraid", + x = 2224, + z = 4520, + facing = 0, + }, + { + name = "cloakraid", + x = 2275, + z = 4520, + facing = 0, + }, + { + name = "cloakraid", + x = 2329, + z = 4520, + facing = 0, + }, + { + name = "cloakraid", + x = 2384, + z = 4520, + facing = 0, + }, + { + name = "bomberdisarm", + x = 2604, + z = 4672, + facing = 3, + }, } }, aiConfig = { { + humanName = "Iwainiul", aiLib = "Circuit_difficulty_autofill", - humanName = "Mollies", bitDependant = true, + --aiLib = "Null AI", + --bitDependant = false, commanderParameters = { facplop = false, }, - allyTeam = 0, + allyTeam = 1, unlocks = { "staticcon", - --"turretlaser", - --"turretmissile", + "turretriot", "staticradar", "staticmex", "energysolar", "energywind", - "factorycloak", - "cloakcon", - "cloakraid", - "cloakriot", - "cloakassualt", - "cloakskirm", - "cloakarty", - "cloakbomb", "factoryspider", "spidercon", "spiderscout", + "spiderassault", "spideremp", "spiderriot", - "spiderassault", "spiderskirm", + "spiderantiheavy", + "factoryshield", + "shieldcon", + "shieldraid", + "shieldriot", + "shieldskirm", + "shieldassault", + "shieldfelon", }, - commander = false, - startUnits = { + difficultyDependantUnlocks = { + [3] = {"spidercrabe"}, + [4] = {"spidercrabe","shieldarty"}, + --[4] = {"planeheavyfighter","bomberdisarm"}, + }, + startX = 2500, + startZ = 500, + commanderLevel = 6, + commander = { + name = "Yangdi", + chassis = "recon", + decorations = { + "skin_recon_leopard", + }, + modules = { + "commweapon_heavymachinegun", + "commweapon_concussion", + "module_autorepair", + "module_autorepair", + "module_ablative_armor", + "module_ablative_armor", + "module_adv_targeting", + "module_high_power_servos", + "module_high_power_servos", + "module_adv_nano", + } + }, + midgameUnits = { { - name = "factorycloak", - x = 3240, - z = 2016, + name = "planeheavyfighter", + x = 2820, + z = 200, facing = 0, + spawnRadius = 50, + delay = 200, + orbitalDrop = false, }, - { - name = "staticmex", - x = 3352, - z = 696, + -- Raptors at 2:30 + { + name = "shieldaa", + x = 2820, + z = 200, facing = 0, + spawnRadius = 50, + delay = 2.5*30*60, + orbitalDrop = true, }, - { - name = "staticmex", - x = 2856, - z = 2104, + { + name = "shieldaa", + x = 2820, + z = 200, facing = 0, + spawnRadius = 50, + delay = 2.5*30*60, + orbitalDrop = true, }, - { - name = "staticmex", - x = 3096, - z = 1400, + { + name = "planeheavyfighter", + x = 2820, + z = 200, facing = 0, + spawnRadius = 50, + delay = 2.5*30*60, + orbitalDrop = false, }, - { - name = "cloakcon", - x = 2994, - z = 2024, + { + name = "planeheavyfighter", + x = 2820, + z = 200, facing = 0, + spawnRadius = 50, + delay = 2.5*30*60, + orbitalDrop = false, + difficultyAtLeast = 3, }, - { - name = "energysolar", - x = 2920, - z = 2120, - facing = 3, + { + name = "planeheavyfighter", + x = 2820, + z = 200, + facing = 0, + spawnRadius = 50, + delay = 2.5*30*60, + orbitalDrop = false, + difficultyAtLeast = 4, }, - { - name = "energysolar", - x = 2840, - z = 2168, - facing = 2, + -- Bombers at 4:30 + { + name = "bomberprec", + x = 2820, + z = 200, + facing = 0, + spawnRadius = 50, + delay = 4.5*30*60, + orbitalDrop = false, }, - { - name = "energysolar", - x = 2792, - z = 2088, - facing = 1, + { + name = "bomberprec", + x = 2820, + z = 200, + facing = 0, + spawnRadius = 50, + delay = 4.5*30*60, + orbitalDrop = false, + difficultyAtMost = 3, }, - { - name = "energysolar", - x = 2872, - z = 2040, + { + name = "bomberprec", + x = 2820, + z = 200, facing = 0, + spawnRadius = 50, + delay = 4.5*30*60, + orbitalDrop = false, + difficultyAtLeast = 3, + difficultyAtMost = 3, }, - { - name = "energysolar", - x = 3160, - z = 1416, - facing = 3, + { + name = "bomberheavy", + x = 2820, + z = 200, + facing = 0, + spawnRadius = 50, + delay = 4.5*30*60, + orbitalDrop = false, + difficultyAtLeast = 4, }, - { - name = "energysolar", - x = 3080, - z = 1464, - facing = 2, + -- Both at at 7:30 + { + name = "shieldaa", + x = 2820, + z = 200, + facing = 0, + spawnRadius = 50, + delay = 7.5*30*60, + orbitalDrop = true, }, - { - name = "energysolar", - x = 3032, - z = 1384, - facing = 1, + { + name = "shieldaa", + x = 2820, + z = 200, + facing = 0, + spawnRadius = 50, + delay = 7.5*30*60, + orbitalDrop = true, }, - { - name = "energysolar", - x = 3112, - z = 1336, + { + name = "planeheavyfighter", + x = 2820, + z = 200, facing = 0, + spawnRadius = 50, + delay = 7.5*30*60, + orbitalDrop = false, }, - { - name = "energysolar", - x = 3416, - z = 712, + { + name = "planeheavyfighter", + x = 2820, + z = 200, + facing = 0, + spawnRadius = 50, + delay = 7.5*30*60, + orbitalDrop = false, + }, + { + name = "bomberprec", + x = 2820, + z = 200, + facing = 0, + spawnRadius = 50, + delay = 2.5*30*60, + orbitalDrop = false, + difficultyAtLeast = 3, + difficultyAtMost = 3, + }, + { + name = "bomberheavy", + x = 2820, + z = 200, + facing = 0, + spawnRadius = 50, + delay = 2.5*30*60, + orbitalDrop = false, + difficultyAtLeast = 3, + }, + }, + startUnits = { + { + name = "turretheavylaser", + x = 1880, + z = 2264, + facing = 0, + }, + { + name = "turretheavylaser", + x = 4632, + z = 1752, + facing = 0, + }, + { + name = "turretheavylaser", + x = 520, + z = 1672, + facing = 0, + }, + { + name = "turretheavylaser", + x = 3320, + z = 2280, + facing = 0, + }, + { + name = "staticmex", + x = 680, + z = 424, facing = 3, + difficultyAtLeast = 2, }, { - name = "energysolar", - x = 3336, - z = 760, - facing = 2, + name = "staticmex", + x = 3976, + z = 1304, + facing = 3, + difficultyAtLeast = 2, }, { - name = "energysolar", - x = 3288, - z = 680, - facing = 1, + name = "staticmex", + x = 1064, + z = 1256, + facing = 3, + difficultyAtLeast = 2, }, - { - name = "energysolar", - x = 3368, - z = 632, - facing = 0, + { + name = "staticmex", + x = 4600, + z = 472, + facing = 3, + difficultyAtLeast = 2, }, { - name = "staticcon", - x = 3144, - z = 1960, + name = "energysolar", + x = 1096, + z = 1320, facing = 3, + difficultyAtLeast = 2, }, { - name = "turretlaser", - x = 3312, - z = 624, - facing = 0, + name = "energysolar", + x = 1016, + z = 1320, + facing = 3, + difficultyAtLeast = 2, }, { - name = "turretlaser", - x = 3056, - z = 1328, - facing = 0, + name = "energysolar", + x = 3944, + z = 1368, + facing = 3, + difficultyAtLeast = 2, }, { - name = "turretlaser", - x = 2816, - z = 2032, - facing = 0, + name = "energysolar", + x = 4024, + z = 1368, + facing = 3, + difficultyAtLeast = 2, }, { - name = "cloakcon", - x = 3074, - z = 2053, - facing = 1, + name = "energysolar", + x = 712, + z = 488, + facing = 3, + difficultyAtLeast = 2, }, { - name = "cloakraid", - x = 3137, - z = 2191, + name = "energysolar", + x = 632, + z = 488, facing = 3, + difficultyAtLeast = 2, }, { - name = "cloakraid", - x = 3193, - z = 2183, - facing = 1, + name = "energysolar", + x = 4648, + z = 536, + facing = 3, + difficultyAtLeast = 2, }, { - name = "cloakraid", - x = 3266, - z = 2181, - facing = 1, - }, - } - }, - { - startX = 5600, - startZ = 6000, - aiLib = "Circuit_difficulty_autofill", - humanName = "Blue Angels", - bitDependant = true, - commanderParameters = { - facplop = false, - }, - allyTeam = 1, - unlocks = { - "staticcon", - --"turretlaser", - --"turretmissile", - "staticradar", - "staticmex", - "energysolar", - "energywind", - "factoryplane", - "planecon", - "planefighter", - "bomberprec", - "bomberriot", - }, - difficultyDependantUnlocks = { - [3] = {"bomberdisarm"}, - [4] = {"bomberdisarm"}, - --[4] = {"planeheavyfighter","bomberdisarm"}, - }, - commanderLevel = 5, - commander = { - name = "Rammia", - chassis = "recon", - decorations = { - "skin_recon_leopard", + name = "energysolar", + x = 4568, + z = 536, + facing = 3, + difficultyAtLeast = 2, }, - modules = { - "commweapon_heavymachinegun", - "commweapon_concussion", - "module_autorepair", - "module_autorepair", - "module_ablative_armor", - "module_ablative_armor", - "module_adv_targeting", - "module_high_power_servos", - "module_high_power_servos", - "module_adv_nano", - } - }, - startUnits = { { - name = "staticmex", - x = 7000, - z = 4968, + name = "staticcon", + x = 2288, + z = 376, facing = 0, + selfPatrol = true, difficultyAtLeast = 2, }, { - name = "energysolar", - x = 6968, - z = 4872, + name = "energypylon", + x = 2792, + z = 392, facing = 3, - difficultyAtLeast = 2, + difficultyAtLeast = 3, }, { - name = "staticmex", - x = 5912, - z = 4360, + name = "energypylon", + x = 2184, + z = 408, + facing = 3, + difficultyAtLeast = 3, + }, + { + name = "energyfusion", + x = 2584, + z = 32, facing = 0, difficultyAtLeast = 3, }, { - name = "energysolar", - x = 5864, - z = 4280, - facing = 3, + name = "staticmex", + x = 2568, + z = 1240, + facing = 0, difficultyAtLeast = 3, }, { - name = "turretmissile", - x = 6144, - z = 4096, - facing = 2, + name = "turretaalaser", + x = 2568, + z = 1112, + facing = 0, + difficultyAtLeast = 3, + }, + { + name = "staticshield", + x = 4632, + z = 1552, + facing = 0, + difficultyAtLeast = 3, + }, + { + name = "staticshield", + x = 520, + z = 1472, + facing = 0, difficultyAtLeast = 3, }, { name = "staticmex", - x = 6584, - z = 3896, - facing = 2, + x = 1624, + z = 2072, + facing = 0, difficultyAtLeast = 4, }, { - name = "energysolar", - x = 6504, - z = 3848, - facing = 2, + name = "staticmex", + x = 488, + z = 2200, + facing = 0, difficultyAtLeast = 4, }, { - name = "turretmissile", - x = 6272, - z = 4016, - facing = 2, + name = "staticmex", + x = 3672, + z = 2088, + facing = 0, difficultyAtLeast = 4, }, - { - name = "factoryplane", - x = 5496, - z = 6176, - facing = 3, - }, { - name = "staticrearm", - x = 5624, - z = 6216, - facing = 3, + name = "staticmex", + x = 4808, + z = 2216, + facing = 0, + difficultyAtLeast = 4, }, { - name = "staticmex", - x = 5688, - z = 6072, - facing = 3, + name = "turretriot", + x = 4728, + z = 2312, + facing = 0, + difficultyAtLeast = 4, }, { - name = "staticmex", - x = 5912, - z = 5816, - facing = 3, + name = "turretmissile", + x = 4624, + z = 2256, + facing = 0, + difficultyAtLeast = 4, }, { - name = "energywind", - x = 5752, - z = 6008, - facing = 3, + name = "turretriot", + x = 552, + z = 2312, + facing = 0, + difficultyAtLeast = 4, }, { - name = "energywind", - x = 5800, - z = 5944, - facing = 3, + name = "turretmissile", + x = 656, + z = 2240, + facing = 0, + difficultyAtLeast = 4, + }, + { + name = "staticcon", + x = 2688, + z = 376, + facing = 0, + selfPatrol = true, + difficultyAtLeast = 4, + }, + { + name = "spideremp", + x = 2000, + z = 1200, + facing = 0, + difficultyAtLeast = 4, + }, + { + name = "spideremp", + x = 2100, + z = 1200, + facing = 0, + difficultyAtLeast = 4, + }, + -- + { + name = "spiderriot", + x = 2000, + z = 1000, + facing = 0, + }, + { + name = "spiderriot", + x = 2100, + z = 1000, + facing = 0, + }, + { + name = "spiderskirm", + x = 2000, + z = 1100, + facing = 0, + }, + { + name = "spiderskirm", + x = 2100, + z = 1100, + facing = 0, + }, + { + name = "staticrearm", + x = 2220, + z = 220, + facing = 0, + }, + { + name = "staticmex", + x = 3032, + z = 584, + facing = 0, }, { - name = "energywind", - x = 5848, - z = 5880, - facing = 3, + name = "staticmex", + x = 1928, + z = 632, + facing = 0, }, { name = "staticmex", - x = 6904, - z = 6424, - facing = 3, + x = 1752, + z = 376, + facing = 0, }, { - name = "energywind", - x = 6840, - z = 6392, - facing = 3, + name = "staticmex", + x = 3384, + z = 568, + facing = 0, }, { - name = "energywind", - x = 6968, - z = 6376, - facing = 3, + name = "staticmex", + x = 1624, + z = 712, + facing = 0, }, { - name = "energywind", - x = 6936, - z = 6504, - facing = 3, + name = "staticmex", + x = 3208, + z = 264, + facing = 0, }, { - name = "planecon", - x = 5997, - z = 4301, - facing = 3, + name = "turretriot", + x = 280, + z = 1624, + facing = 0, }, { name = "turretlaser", - x = 6784, - z = 5632, - facing = 2, + x = 400, + z = 1664, + facing = 0, }, { name = "turretlaser", - x = 5792, - z = 5328, - facing = 2, + x = 640, + z = 1712, + facing = 0, }, { - name = "turretlaser", - x = 6304, - z = 5360, - facing = 2, + name = "turretriot", + x = 760, + z = 1720, + facing = 0, }, { - name = "staticheavyradar", - x = 5488, - z = 5392, - facing = 2, - terraformHeight = 1025, + name = "turretriot", + x = 4880, + z = 1720, + facing = 0, }, { - name = "turretlaser", - x = 5152, - z = 5712, - facing = 3, + name = "turretriot", + x = 4400, + z = 1768, + facing = 0, }, { name = "turretlaser", - x = 5120, - z = 6256, - facing = 3, + x = 4760, + z = 1760, + facing = 0, }, { name = "turretlaser", - x = 5632, - z = 6704, + x = 4520, + z = 1776, facing = 0, }, { - name = "turretaaclose", - x = 5544, - z = 5944, + name = "energysolar", + x = 1624, + z = 584, facing = 0, }, - } - }, - { - aiLib = "Circuit_difficulty_autofill", - humanName = "Zulcrew", - bitDependant = true, - commanderParameters = { - facplop = false, - }, - allyTeam = 1, - unlocks = { - "staticcon", - --"turretlaser", - --"turretmissile", - "staticradar", - "staticmex", - "energysolar", - "energywind", - "factoryshield", - "shieldcon", - "shieldraid", - "shieldriot", - "shieldassualt", - "shieldskirm", - "shieldfelon", - "shieldbomb", - "factoryspider", - "spidercon", - "spiderscout", - "spideremp", - "spiderriot", - "spiderassault", - "spiderskirm", - }, - commander = false, - startUnits = { - { - name = "factoryshield", - x = 4544, - z = 5224, - facing = 2, - }, { - name = "shieldcon", - x = 4499, - z = 5065, - facing = 2, + name = "energysolar", + x = 1752, + z = 488, + facing = 0, }, { - name = "staticmex", - x = 4312, - z = 5064, - facing = 2, + name = "energysolar", + x = 1816, + z = 616, + facing = 0, }, { name = "energysolar", - x = 4376, - z = 5080, - facing = 1, + x = 3336, + z = 488, + facing = 0, }, { name = "energysolar", - x = 4296, - z = 5128, + x = 3240, + z = 376, facing = 0, }, { name = "energysolar", - x = 4248, - z = 5048, - facing = 3, + x = 3112, + z = 488, + facing = 0, }, { - name = "energysolar", - x = 4328, - z = 5000, - facing = 2, + name = "staticcon", + x = 2488, + z = 376, + facing = 0, + selfPatrol = true, }, { - name = "staticmex", - x = 4072, - z = 5768, - facing = 2, + name = "factoryshield", + x = 2352, + z = 520, + facing = 0, }, { - name = "staticmex", - x = 3816, - z = 6472, - facing = 2, + name = "factoryspider", + x = 2632, + z = 504, + facing = 0, }, { - name = "energysolar", - x = 3880, - z = 6488, - facing = 1, + name = "turretriot", + x = 1760, + z = 2312, + facing = 0, }, { - name = "energysolar", - x = 3800, - z = 6536, + name = "turretriot", + x = 2000, + z = 2232, facing = 0, }, { - name = "energysolar", - x = 3752, - z = 6456, - facing = 3, + name = "turretlaser", + x = 2120, + z = 2208, + facing = 0, }, { - name = "energysolar", - x = 3832, - z = 6408, - facing = 2, + name = "turretlaser", + x = 1640, + z = 2352, + facing = 0, }, { - name = "energysolar", - x = 4136, - z = 5784, - facing = 1, + name = "turretaalaser", + x = 664, + z = 728, + facing = 0, }, { - name = "energysolar", - x = 4056, - z = 5832, + name = "turretaalaser", + x = 4472, + z = 824, facing = 0, }, { - name = "energysolar", - x = 4008, - z = 5752, - facing = 3, + name = "turretriot", + x = 3200, + z = 2248, + facing = 0, }, { - name = "energysolar", - x = 4088, - z = 5704, - facing = 2, + name = "turretriot", + x = 3440, + z = 2312, + facing = 0, }, { name = "turretlaser", - x = 4352, - z = 5136, - facing = 2, + x = 3080, + z = 2208, + facing = 0, }, { name = "turretlaser", - x = 4112, - z = 5840, - facing = 2, + x = 3560, + z = 2336, + facing = 0, }, { - name = "turretlaser", - x = 3856, - z = 6544, - facing = 2, + name = "turretriot", + x = 3112, + z = 1384, + facing = 0, }, { - name = "staticcon", - x = 4568, - z = 5352, + name = "turretriot", + x = 3272, + z = 1384, facing = 0, - commands = { - {cmdID = planetUtilities.COMMAND.PATROL, pos = {4568, 5352}}, - {cmdID = planetUtilities.COMMAND.PATROL, pos = {4543, 5327}, options = {"shift"}}, - }, }, { - name = "shieldraid", - x = 5888, - z = 3148, - facing = 2, + name = "turretriot", + x = 1992, + z = 1352, + facing = 0, }, { - name = "shieldraid", - x = 6034, - z = 3107, - facing = 2, + name = "staticradar", + x = 1488, + z = 848, + facing = 0, }, { - name = "shieldraid", - x = 5964, - z = 3051, - facing = 2, + name = "turretriot", + x = 1816, + z = 1352, + facing = 0, }, { - name = "shieldraid", - x = 5977, - z = 3225, - facing = 2, + name = "staticradar", + x = 3664, + z = 816, + facing = 0, }, { - name = "shieldassault", - x = 4639, - z = 5009, - facing = 2, + name = "turretmissile", + x = 1792, + z = 864, + facing = 0, }, { - name = "shieldassault", - x = 4596, - z = 4996, - facing = 3, + name = "turretmissile", + x = 3408, + z = 864, + facing = 0, }, { - name = "shieldriot", - x = 4527, - z = 5005, - facing = 2, + name = "turretmissile", + x = 3168, + z = 768, + facing = 0, }, { - name = "shieldfelon", - x = 4579, - z = 5046, - facing = 3, + name = "turretmissile", + x = 2112, + z = 752, + facing = 0, }, { - name = "turretaalaser", - x = 4376, - z = 5384, + name = "turretmissile", + x = 2928, + z = 768, + facing = 0, + }, + { + name = "turretaaflak", + x = 2488, + z = 472, + facing = 0, + }, + { + name = "turretmissile", + x = 2448, + z = 816, + facing = 0, + }, + { + name = "turretmissile", + x = 2704, + z = 720, facing = 0, }, + { + name = "turretlaser", + x = 1472, + z = 432, + facing = 3, + }, + { + name = "turretmissile", + x = 1344, + z = 640, + facing = 3, + }, + { + name = "turretlaser", + x = 3680, + z = 384, + facing = 1, + }, + { + name = "turretmissile", + x = 3760, + z = 624, + facing = 1, + }, } }, }, @@ -832,8 +1072,7 @@ local function GetPlanet(planetUtilities, planetID) vitalCommanders = true, vitalUnitTypes = { "factoryshield", - "factoryplane", - "factoryspider" + "factoryspider", }, loseAfterSeconds = false, allyTeamLossObjectiveID = 1, @@ -849,17 +1088,17 @@ local function GetPlanet(planetUtilities, planetID) }, }, bonusObjectiveConfig = { - [1] = { -- Build 10 Phoenixes + [1] = { satisfyOnce = true, countRemovedUnits = true, -- count units that previously died. comparisionType = planetUtilities.COMPARE.AT_LEAST, - targetNumber = 10, + targetNumber = 2, unitTypes = { - "bomberriot", + "staticrearm", }, - image = planetUtilities.ICON_DIR .. "bomberriot.png", + image = planetUtilities.ICON_DIR .. "staticrearm.png", imageOverlay = planetUtilities.ICON_OVERLAY.REPAIR, - description = "Build at least 10 Phoenixes", + description = "Build 2 Airpads", experience = planetUtilities.BONUS_EXP, }, [2] = { @@ -868,19 +1107,19 @@ local function GetPlanet(planetUtilities, planetID) description = "Win by 15:00", experience = planetUtilities.BONUS_EXP, }, - -- [3] = { -- Don't lose any Thunderbirds - -- satisfyForever = true, - -- failOnUnitLoss = true, -- Fails the objective if any units being used to satisfy the objective are lost. - -- comparisionType = planetUtilities.COMPARE.AT_LEAST, - -- targetNumber = 0, - -- unitTypes = { - -- "bomberdisarm", - -- }, - -- image = planetUtilities.ICON_DIR .. "bomberdisarm.png", - -- imageOverlay = planetUtilities.ICON_OVERLAY.GUARD, - -- description = "Don't lose any Thunderbirds", - -- experience = planetUtilities.BONUS_EXP, - -- }, + [3] = { + onlyCountRemovedUnits = true, + satisfyByTime = 6*60, + comparisionType = planetUtilities.COMPARE.AT_LEAST, + targetNumber = 4, + enemyUnitTypes = { + "turretheavylaser", + }, + image = planetUtilities.ICON_DIR .. "turretheavylaser.png", + imageOverlay = planetUtilities.ICON_OVERLAY.ATTACK, + description = "Destroy 4 enemy Stingers before 6:00", + experience = planetUtilities.BONUS_EXP, + }, } }, completionReward = { @@ -889,7 +1128,6 @@ local function GetPlanet(planetUtilities, planetID) "factoryplane", "planecon", "planefighter", - "bomberriot", "bomberdisarm", "staticrearm", }, From 2232ea4e92e259c4a9e10ed2c00a5e37922880d9 Mon Sep 17 00:00:00 2001 From: Aquanim Date: Sun, 26 Nov 2017 13:33:53 +1100 Subject: [PATCH 2/2] Tweaks to later Tank missions. --- campaign/sample/planets/planet35.lua | 6 ++ campaign/sample/planets/planet41.lua | 129 ++++++++++++++++++++++++++- campaign/sample/planets/planet42.lua | 27 +++++- 3 files changed, 159 insertions(+), 3 deletions(-) diff --git a/campaign/sample/planets/planet35.lua b/campaign/sample/planets/planet35.lua index fa816293c..47b789e26 100644 --- a/campaign/sample/planets/planet35.lua +++ b/campaign/sample/planets/planet35.lua @@ -26,6 +26,12 @@ local function GetPlanet(planetUtilities, planetID) milRating = 1, text = [[...]] }, + tips = { + { + image = "unitpics/bomberheavy.png", + text = [[The Likho...]] + }, + }, gameConfig = { mapName = "LowTideV3", playerConfig = { diff --git a/campaign/sample/planets/planet41.lua b/campaign/sample/planets/planet41.lua index c56e97bbb..973143806 100644 --- a/campaign/sample/planets/planet41.lua +++ b/campaign/sample/planets/planet41.lua @@ -168,7 +168,11 @@ local function GetPlanet(planetUtilities, planetID) "vehriot", "vehassault", }, - commanderLevel = 4, + difficultyDependantUnlocks = { + [3] = {"cloakheavyraid"}, + [4] = {"cloakheavyraid"}, + }, + commanderLevel = 5, commander = { name = "Hawker", chassis = "strike", @@ -185,6 +189,7 @@ local function GetPlanet(planetUtilities, planetID) "module_jammer", "module_adv_targeting", "module_autorepair", + "module_autorepair", } }, startUnits = { @@ -196,9 +201,129 @@ local function GetPlanet(planetUtilities, planetID) terraformHeight = 121, mapMarker = { text = "Warp Gate", - color = "red" + color = "red_small" }, }, + { + name = "staticmex", + x = 1606, + z = 3250, + facing = 0, + difficultyAtLeast = 2, + }, + { + name = "turretriot", + x = 1606, + z = 3100, + facing = 2, + difficultyAtLeast = 2, + }, + { + name = "energygeo", + x = 195, + z = 4940, + facing = 0, + difficultyAtLeast = 3, + difficultyAtMost = 3, + }, + { + name = "energypylon", + x = 550, + z = 4600, + facing = 0, + difficultyAtLeast = 3, + }, + { + name = "energypylon", + x = 1421, + z = 4421, + facing = 0, + difficultyAtLeast = 3, + }, + { + name = "turretriot", + x = 195, + z = 4740, + facing = 2, + difficultyAtLeast = 3, + }, + { + name = "turretriot", + x = 416, + z = 4942, + facing = 2, + difficultyAtLeast = 3, + }, + { + name = "energyheavygeo", + x = 195, + z = 4940, + facing = 0, + difficultyAtLeast = 4, + }, + { + name = "staticmex", + x = 2820, + z = 3700, + facing = 2, + difficultyAtLeast = 4, + }, + { + name = "turretriot", + x = 770, + z = 3900, + facing = 0, + difficultyAtLeast = 4, + }, + { + name = "staticmex", + x = 770, + z = 2720, + facing = 0, + difficultyAtLeast = 4, + }, + { + name = "turretriot", + x = 890, + z = 2720, + facing = 1, + difficultyAtLeast = 4, + }, + { + name = "staticmex", + x = 770, + z = 2720, + facing = 0, + difficultyAtLeast = 4, + }, + { + name = "cloakassault", + x = 2170, + z = 3800, + facing = 0, + difficultyAtLeast = 4, + }, + { + name = "cloakassault", + x = 2270, + z = 3800, + facing = 0, + difficultyAtLeast = 4, + }, + { + name = "cloakassault", + x = 2370, + z = 3800, + facing = 0, + difficultyAtLeast = 4, + }, + { + name = "cloakcon", + x = 2470, + z = 3800, + facing = 0, + difficultyAtLeast = 4, + }, { name = "staticmex", x = 808, diff --git a/campaign/sample/planets/planet42.lua b/campaign/sample/planets/planet42.lua index f68a98213..de1a6d5aa 100644 --- a/campaign/sample/planets/planet42.lua +++ b/campaign/sample/planets/planet42.lua @@ -208,6 +208,7 @@ local function GetPlanet(planetUtilities, planetID) allyTeam = 1, unlocks = { "staticradar", + "staticstorage", "staticmex", "energysolar", "energywind", @@ -233,7 +234,7 @@ local function GetPlanet(planetUtilities, planetID) [3] = {"spiderantiheavy"}, [4] = {"spiderantiheavy"}, }, - commanderLevel = 4, + commanderLevel = 5, commander = { name = "Dory", chassis = "recon", @@ -241,6 +242,7 @@ local function GetPlanet(planetUtilities, planetID) }, modules = { "commweapon_shotgun", + "commweapon_concussion", "module_heavy_armor", "module_heavy_armor", "module_autorepair", @@ -249,6 +251,8 @@ local function GetPlanet(planetUtilities, planetID) "module_dmg_booster", "module_dmg_booster", "module_high_power_servos", + "module_high_power_servos", + "module_high_power_servos", } }, startUnits = { @@ -279,6 +283,27 @@ local function GetPlanet(planetUtilities, planetID) facing = 3, difficultyAtLeast = 4, }, + { + name = "staticmex", + x = 1030, + z = 4888, + facing = 3, + difficultyAtLeast = 4, + }, + { + name = "staticmex", + x = 220, + z = 4840, + facing = 3, + difficultyAtLeast = 4, + }, + { + name = "turretheavylaser", + x = 875, + z = 4270, + facing = 2, + difficultyAtLeast = 4, + }, { name = "turretriot", x = 4472,