diff --git a/Changelog.txt b/Changelog.txt index 4fa92e0..6e714ea 100644 --- a/Changelog.txt +++ b/Changelog.txt @@ -1,5 +1,30 @@ Changelog: +refactored v1.3 + +General Changes: +- Added the Heavy Repair Turret. +- The Heavy Repair Turret can be researched after picking up the Dedicated Synaptic Link Data Analysis artifact in Beta 7 (NASDA Central). +- The Collective will occasionally build Heavy Repair units starting from Beta 6 (Nuclear Plant). + +Level Specific Changes: +Alpha 8 (LZ 2 Mission): +- Halved the rate at which NP heavy tanks are produced. +Alpha Final: +- Reduced the production speed of the three vehicle factories, halving the north-east one that produces only heavies. +Beta 4 (Commander Interception): +- Slightly reduced the rate at which lancer hovers are produced in the north-west base. +- Lancer VTOLs now attack more frequently, but only in groups of four. +- VTOL strikes can now be stopped by destroying the HQ in the north-east base, as instead of the north-west. +Beta 5 (Air Base Assault): +- Doubled the production time for all VTOL and vehicle factories. +Beta 7 (NASDA Central): +- Significantly increased the production time for the four vehicle factories. +- Diversified the outputs of the vehicle factories a bit. +- Tanks built from these factories now attack more frequently in smaller groups. +- Collective VTOL attacks now alternate between groups of Lancers, Thermite Bomb Bays, and HEAP Bomb Bays. +- Lancer VTOLs attack in groups of four, while bombers attack in groups of two. + refactored v1.2 General Changes: @@ -76,7 +101,7 @@ Level Specific Changes: - The Collective builds Thermite Cyborgs starting in Beta 5 (Air Base Assault). - Collective Super Auto-Cannon and Super Tank-Killer Cyborgs appear starting at Beta 8 (Satellite Uplink). - Collective Assault Cannon VTOLs appear starting at Beta 9 (SAM Sites). -- Due to Seraph (previously "Angel") Missile Arrays now having short range, Archangel Missile Batteries begin appearing starting from Gamma 2 (Nuclear Missile Launch). +- Due to Seraph (formerly "Angel") Missile Arrays now having short range, Archangel Missile Batteries begin appearing starting from Gamma 2 (Nuclear Missile Launch). - NEXUS starts using Plasmite Flamer units at Gamma 3 (Gamma Team Base). - Gamma Base is now populated by more Gamma Team Units, and contains some Hellstorm Emplacements. - Gamma 5 (NEXUS Intrusion) can now only requires NEXUS Resistance Circuits Mk 2 to be researched to complete. diff --git a/messages/resmessagesall.json b/messages/resmessagesall.json index 648f330..3cb59ed 100644 --- a/messages/resmessagesall.json +++ b/messages/resmessagesall.json @@ -360,5 +360,16 @@ "Automatically targets enemies within sensor range", "Defensive Strength: Medium" ] + }, + "RES_REPTUHVY": { + "id": "RES_REPTUHVY", + "imdName": "MICAPSUL.pie", + "sequenceName": "res_systech.ogg", + "text": [ + "New Systems Turret Available", + "Heavy repair unit", + "Automatically Repairs Damaged Units", + "Or damaged units may be selected as target" + ] } } diff --git a/script/campaign/cam1-4a.js b/script/campaign/cam1-4a.js index c261972..c0a9afc 100644 --- a/script/campaign/cam1-4a.js +++ b/script/campaign/cam1-4a.js @@ -186,7 +186,7 @@ function eventStartLevel() order: CAM_ORDER_ATTACK, groupSize: 4, maxSize: 6, // this one was exclusively producing trucks - throttle: camChangeOnDiff(camSecondsToMilliseconds(40)), // but we simplify this out + throttle: camChangeOnDiff(camSecondsToMilliseconds(80)), // but we simplify this out templates: [ cTempl.npmmct, cTempl.npsmct, cTempl.npsmc ] }, "MediumNPFactory": { diff --git a/script/campaign/cam1-d.js b/script/campaign/cam1-d.js index a39f95e..3e2307f 100644 --- a/script/campaign/cam1-d.js +++ b/script/campaign/cam1-d.js @@ -223,7 +223,7 @@ function eventStartLevel() assembly: "NPFactoryNEAssembly", order: CAM_ORDER_ATTACK, groupSize: 4, - throttle: camChangeOnDiff(camSecondsToMilliseconds(90)), + throttle: camChangeOnDiff(camSecondsToMilliseconds(120)), data: { regroup: false, repair: 33, diff --git a/script/campaign/cam2-2.js b/script/campaign/cam2-2.js index f9ab2c1..38c057f 100644 --- a/script/campaign/cam2-2.js +++ b/script/campaign/cam2-2.js @@ -103,8 +103,13 @@ camAreaEvent("failZone", function(droid) function vtolAttack() { - var list = [cTempl.colatv, cTempl.colatv]; - camSetVtolData(THE_COLLECTIVE, "vtolAppearPoint", "vtolRemovePoint", list, camChangeOnDiff(camMinutesToMilliseconds(5)), "COCommandCenter"); + var list = [cTempl.colatv]; + var ext = { + limit: 4, + alternate: false, + altIdx: 0 + }; + camSetVtolData(THE_COLLECTIVE, "vtolAppearPoint", "vtolRemovePoint", list, camChangeOnDiff(camMinutesToMilliseconds(3)), "COCommandCenter", ext); } //Order the truck to build some defenses. @@ -199,7 +204,7 @@ function eventStartLevel() assembly: camMakePos("eastAssembly"), order: CAM_ORDER_ATTACK, groupSize: 6, - throttle: camChangeOnDiff(camSecondsToMilliseconds(70)), + throttle: camChangeOnDiff(camSecondsToMilliseconds(80)), data: { regroup: false, repair: 40, @@ -211,7 +216,7 @@ function eventStartLevel() assembly: camMakePos("westAssembly"), order: CAM_ORDER_DEFEND, groupSize: 5, - throttle: camChangeOnDiff(camSecondsToMilliseconds(80)), + throttle: camChangeOnDiff(camSecondsToMilliseconds(120)), data: { pos: camMakePos("westAssembly"), regroup: false, diff --git a/script/campaign/cam2-c.js b/script/campaign/cam2-c.js index 53820f1..22e825f 100644 --- a/script/campaign/cam2-c.js +++ b/script/campaign/cam2-c.js @@ -331,7 +331,7 @@ function eventStartLevel() assembly: "COHeavyFac-UpgradeAssembly", order: CAM_ORDER_ATTACK, groupSize: 4, - throttle: camChangeOnDiff(camSecondsToMilliseconds(60)), + throttle: camChangeOnDiff(camSecondsToMilliseconds(120)), data: { regroup: false, repair: 20, @@ -343,7 +343,7 @@ function eventStartLevel() assembly: "COHeavyFac-LeopardAssembly", order: CAM_ORDER_ATTACK, groupSize: 4, - throttle: camChangeOnDiff(camSecondsToMilliseconds(60)), + throttle: camChangeOnDiff(camSecondsToMilliseconds(120)), data: { regroup: false, repair: 20, @@ -355,7 +355,7 @@ function eventStartLevel() assembly: "COCyborgFactoryLAssembly", order: CAM_ORDER_ATTACK, groupSize: 4, - throttle: camChangeOnDiff(camSecondsToMilliseconds(40)), + throttle: camChangeOnDiff(camSecondsToMilliseconds(50)), data: { regroup: false, repair: 40, @@ -367,7 +367,7 @@ function eventStartLevel() assembly: "COCyborgFactoryRAssembly", order: CAM_ORDER_ATTACK, groupSize: 4, - throttle: camChangeOnDiff(camSecondsToMilliseconds(40)), + throttle: camChangeOnDiff(camSecondsToMilliseconds(50)), data: { regroup: false, repair: 40, @@ -378,7 +378,7 @@ function eventStartLevel() "COVtolFacLeft-Prop": { order: CAM_ORDER_ATTACK, groupSize: 4, - throttle: camChangeOnDiff(camSecondsToMilliseconds(50)), + throttle: camChangeOnDiff(camSecondsToMilliseconds(120)), data: { regroup: false, count: -1, @@ -388,7 +388,7 @@ function eventStartLevel() "COVtolFacRight": { order: CAM_ORDER_ATTACK, groupSize: 4, - throttle: camChangeOnDiff(camSecondsToMilliseconds(50)), + throttle: camChangeOnDiff(camSecondsToMilliseconds(120)), data: { regroup: false, count: -1, diff --git a/script/campaign/cam2-d.js b/script/campaign/cam2-d.js index 45af195..2fb8762 100644 --- a/script/campaign/cam2-d.js +++ b/script/campaign/cam2-d.js @@ -44,8 +44,13 @@ function truckDefense() //Attacks every 2 minutes until HQ is destroyed. function vtolAttack() { - var list = [cTempl.colatv, cTempl.commorvt]; - camSetVtolData(THE_COLLECTIVE, "vtolAppearPos", "vtolRemovePos", list, camChangeOnDiff(camMinutesToMilliseconds(2)), "COCommandCenter"); + var list = [cTempl.colatv, cTempl.commorvt, cTempl.colatv, cTempl.commorv]; + var ext = { + limit: [4, 2, 4, 2], + alternate: true, + altIdx: 0 + }; + camSetVtolData(THE_COLLECTIVE, "vtolAppearPos", "vtolRemovePos", list, camChangeOnDiff(camMinutesToMilliseconds(2)), "COCommandCenter", ext); } //The project captured the uplink. @@ -121,50 +126,50 @@ function eventStartLevel() "COHeavyFactoryA": { assembly: "COHeavyFactoryAssembly", order: CAM_ORDER_ATTACK, - groupSize: 5, - throttle: camChangeOnDiff(camSecondsToMilliseconds(80)), + groupSize: 3, + throttle: camChangeOnDiff(camSecondsToMilliseconds(140)), data: { regroup: false, repair: 20, count: -1, }, - templates: [cTempl.cohhpv, cTempl.comhltat, cTempl.cohct, cTempl.comrlt, cTempl.copodt] + templates: [cTempl.cohhpv, cTempl.comhltat, cTempl.cohct] }, "COHeavyFactoryB": { assembly: "COHeavyFactoryAssembly", order: CAM_ORDER_ATTACK, - groupSize: 5, - throttle: camChangeOnDiff(camSecondsToMilliseconds(80)), + groupSize: 2, + throttle: camChangeOnDiff(camSecondsToMilliseconds(140)), data: { regroup: false, repair: 20, count: -1, }, - templates: [cTempl.cohhpv, cTempl.comhltat, cTempl.cohct, cTempl.comrlt, cTempl.copodt] + templates: [cTempl.cohhpv, cTempl.comhltat, cTempl.cohct] }, "COHeavyFactoryC": { assembly: "COHeavyFactoryAssembly", order: CAM_ORDER_ATTACK, - groupSize: 5, - throttle: camChangeOnDiff(camSecondsToMilliseconds(80)), + groupSize: 3, + throttle: camChangeOnDiff(camSecondsToMilliseconds(110)), data: { regroup: false, repair: 20, count: -1, }, - templates: [cTempl.cohhpv, cTempl.comhltat, cTempl.cohct, cTempl.comrlt, cTempl.copodt] + templates: [cTempl.comhpv, cTempl.comrlt, cTempl.copodt] }, "COHeavyFactoryD": { assembly: "COHeavyFactoryAssembly", order: CAM_ORDER_ATTACK, - groupSize: 5, - throttle: camChangeOnDiff(camSecondsToMilliseconds(80)), + groupSize: 2, + throttle: camChangeOnDiff(camSecondsToMilliseconds(110)), data: { regroup: false, repair: 20, count: -1, }, - templates: [cTempl.cohhpv, cTempl.comhltat, cTempl.cohct, cTempl.comrlt, cTempl.copodt] + templates: [cTempl.comhpv, cTempl.comrlt, cTempl.copodt] }, "COSouthCyborgFactory": { assembly: "COSouthCyborgFactoryAssembly", @@ -190,5 +195,5 @@ function eventStartLevel() camEnableFactory("COHeavyFactoryD"); camEnableFactory("COSouthCyborgFactory"); - queue("vtolAttack", camMinutesToMilliseconds(2)); + queue("vtolAttack", camMinutesToMilliseconds(3)); } diff --git a/script/campaign/templates.js b/script/campaign/templates.js index ddea6fd..5dd8c24 100644 --- a/script/campaign/templates.js +++ b/script/campaign/templates.js @@ -63,13 +63,13 @@ coscymc: { body: "CyborgHeavyBody", prop: "CyborgLegs", weap: "Cyb-Hvywpn-Mcanno prtruck: { body: "Body5REC", prop: "tracked01", weap: "Spade1Mk1" }, prhhpvt: { body: "Body11ABT", prop: "tracked01", weap: "Cannon4AUTOMk1" }, // HPV cannon tank (Swapped with Heavy Cannon) prltat: { body: "Body5REC", prop: "tracked01", weap: "Rocket-LtA-T" }, -prrept: { body: "Body5REC", prop: "tracked01", weap: "LightRepair1" }, +prrept: { body: "Body5REC", prop: "tracked01", weap: "LightRepair1" }, // CAM_2_B cotruck: { body: "Body6SUPP", prop: "tracked01", weap: "Spade1Mk1" }, comatt: { body: "Body6SUPP", prop: "tracked01", weap: "Rocket-LtA-T" }, comit: { body: "Body6SUPP", prop: "tracked01", weap: "Flame2" }, -comrept: { body: "Body6SUPP", prop: "tracked01", weap: "LightRepair1" }, +comrept: { body: "Body6SUPP", prop: "tracked01", weap: "HeavyRepair" }, // Heavy Repair Turret Panther Tracks comorbt: { body: "Body6SUPP", prop: "tracked01", weap: "Mortar2Mk1" }, cocybtf: { body: "CyborgLightBody", prop: "CyborgLegs", weap: "Cyb-Wpn-Thermite" }, // Thermite Flamer Cyborg comrlt: { body: "Body6SUPP", prop: "tracked01", weap: "Rocket-MRL" }, // Medium Mini-Rocket Array Tank diff --git a/stats/repair.json b/stats/repair.json index d15718b..ce3d019 100644 --- a/stats/repair.json +++ b/stats/repair.json @@ -26,6 +26,20 @@ "time": 7, "weight": 150 }, + "HeavyRepair": { + "buildPoints": 300, + "buildPower": 70, + "designable": 1, + "droidType": "DROID_REPAIR", + "id": "HeavyRepair", + "location": "TURRET", + "model": "GNMREPR2.PIE", + "mountModel": "TRMECM1.PIE", + "name": "Heavy Repair Turret", + "repairPoints": 30, + "time": 7, + "weight": 3000 + }, "NEXUSrepair": { "id": "NEXUSrepair", "location": "DEFAULT", diff --git a/stats/research.json b/stats/research.json index cbc1c81..2ed34e9 100644 --- a/stats/research.json +++ b/stats/research.json @@ -9057,5 +9057,20 @@ "RailGun3Mk1" ], "statID": "RailGun3Mk1" + }, + "R-Sys-MobileRepairTurretHvy": { + "iconID": "IMAGE_RES_SYSTEMTECH", + "id": "R-Sys-MobileRepairTurretHvy", + "msgName": "RES_REPTUHVY", + "name": "Heavy Repair Turret", + "requiredResearch": [ + "R-Struc-Research-Upgrade06" + ], + "researchPoints": 600, + "researchPower": 18, + "resultComponents": [ + "HeavyRepair" + ], + "statID": "HeavyRepair" } } diff --git a/wrf/cam2/sub2-2/labels.json b/wrf/cam2/sub2-2/labels.json index 93a1c6c..013e810 100644 --- a/wrf/cam2/sub2-2/labels.json +++ b/wrf/cam2/sub2-2/labels.json @@ -125,7 +125,7 @@ }, "object_3": { "label": "COCommandCenter", - "id": 345, + "id": 298, "player": 2, "type": 1 },