235 lines
9.0 KiB
Plaintext
235 lines
9.0 KiB
Plaintext
/////////////////////////////////////////////////////////////////////
|
|
// ai for skirmish game
|
|
// Generic vlo for each computer player
|
|
/////////////////////////////////////////////////////////////////////
|
|
|
|
script "skirmishAI.slo"
|
|
run
|
|
{
|
|
player INT 3
|
|
|
|
numScouts INT 3 // min number of droids in group to aim for.
|
|
numDefenders INT 3
|
|
numAttackers INT 6
|
|
numCyborgs INT 8 // build cyborgs until scouts contains x droids
|
|
|
|
tileExpand INT 20 // approx minutes to expand over the map.
|
|
|
|
/////////////////////////////////////////////////////////////////////
|
|
/////////////////////////////////////////////////////////////////////
|
|
// structures
|
|
|
|
// generic names, often used.
|
|
oilRes FEATURESTAT "OilResource"
|
|
resLab STRUCTURESTAT "A0ResearchFacility"
|
|
powGen STRUCTURESTAT "A0PowerGenerator"
|
|
factory STRUCTURESTAT "A0LightFactory"
|
|
derrick STRUCTURESTAT "A0ResourceExtractor"
|
|
cybFactory STRUCTURESTAT "A0CyborgFactory"
|
|
playerHQ STRUCTURESTAT "A0CommandCentre"
|
|
vtolDefStruct STRUCTURESTAT "AASite-QuadMg1"
|
|
vtolPad STRUCTURESTAT "A0VtolPad"
|
|
vtolFactory STRUCTURESTAT "A0VTolFactory1"
|
|
|
|
// upgrade structures
|
|
powModule STRUCTURESTAT "A0PowMod1"
|
|
facModule STRUCTURESTAT "A0FacMod1"
|
|
resModule STRUCTURESTAT "A0ResearchModule1"
|
|
|
|
// Essential structs.
|
|
numStructs INT 5
|
|
structs[0] STRUCTURESTAT "A0PowerGenerator"
|
|
structs[1] STRUCTURESTAT "A0LightFactory"
|
|
structs[2] STRUCTURESTAT "A0CommandCentre"
|
|
structs[3] STRUCTURESTAT "A0ResearchFacility"
|
|
structs[4] STRUCTURESTAT "A0CyborgFactory"
|
|
|
|
// defensive structs.
|
|
numDefStructs INT 9
|
|
defStructs[0] STRUCTURESTAT "PillBox1"
|
|
defStructs[1] STRUCTURESTAT "PillBox2"
|
|
defStructs[2] STRUCTURESTAT "PillBox5"
|
|
defStructs[3] STRUCTURESTAT "WallTower02"
|
|
defStructs[4] STRUCTURESTAT "GuardTower4"
|
|
defStructs[5] STRUCTURESTAT "Sys-SensoTower02"
|
|
defStructs[6] STRUCTURESTAT "WallTower03"
|
|
defStructs[7] STRUCTURESTAT "Emplacement-MortarPit01"
|
|
defStructs[8] STRUCTURESTAT "Emplacement-MRL-pit"
|
|
|
|
// extra structs
|
|
numExtraStructs INT 5
|
|
extraStructs[0] STRUCTURESTAT "A0LightFactory"
|
|
extraStructs[1] STRUCTURESTAT "Sys-SensoTower02"
|
|
extraStructs[2] STRUCTURESTAT "PillBox5"
|
|
extraStructs[3] STRUCTURESTAT "A0LightFactory"
|
|
extraStructs[4] STRUCTURESTAT "A0ResearchFacility"
|
|
|
|
/////////////////////////////////////////////////////////////////////
|
|
/////////////////////////////////////////////////////////////////////
|
|
// droids
|
|
|
|
constructor TEMPLATE "ConstructorDroid"
|
|
vtolTemplate TEMPLATE "P6-L-LTAT-V"
|
|
|
|
// cyborg templates
|
|
cybTempl[0] TEMPLATE "CyborgChain01Ground"
|
|
cybTempl[1] TEMPLATE "CyborgFlamer01Grd"
|
|
cybTempl[2] TEMPLATE "CyborgCannon01Grd"
|
|
cybTempl[3] TEMPLATE "CyborgRkt01Ground"
|
|
|
|
// droid build array, long range weapons should not be in 2 consecutive slots.
|
|
// must be a multiple of 3 templates.
|
|
numTemplates INT 36
|
|
tmpl[0] TEMPLATE "ViperMG01Wheels"
|
|
tmpl[1] TEMPLATE "ViperMG01Wheels"
|
|
tmpl[2] TEMPLATE "ViperFlameWheels"
|
|
tmpl[3] TEMPLATE "ViperMG02Wheels"
|
|
tmpl[4] TEMPLATE "ViperMG02Halftrack"
|
|
tmpl[5] TEMPLATE "ViperRepairWheels"
|
|
tmpl[6] TEMPLATE "ViperHMGTracks"
|
|
tmpl[7] TEMPLATE "ViperLtCannonWheels"
|
|
tmpl[8] TEMPLATE "ViperFlameWheels"
|
|
tmpl[9] TEMPLATE "ViperLtCannonTracks"
|
|
tmpl[10] TEMPLATE "ViperMedCnTrks"
|
|
tmpl[11] TEMPLATE "ViperHMGTracks"
|
|
tmpl[12] TEMPLATE "ViperLtA-Twheels"
|
|
tmpl[13] TEMPLATE "ViperPODWheels"
|
|
tmpl[14] TEMPLATE "ViperMRLWheels"
|
|
tmpl[15] TEMPLATE "ViperBBWheels"
|
|
tmpl[16] TEMPLATE "CobraHMGHalfTrack"
|
|
tmpl[17] TEMPLATE "CobraFlameTracks"
|
|
tmpl[18] TEMPLATE "CobraLtCnTrks"
|
|
tmpl[19] TEMPLATE "ViperMRLWheels"
|
|
tmpl[20] TEMPLATE "CobraMedCnTrks"
|
|
tmpl[21] TEMPLATE "CobraHvyCnTrks"
|
|
tmpl[22] TEMPLATE "ViperRepairHalftrack"
|
|
tmpl[23] TEMPLATE "CobraFlameTracks"
|
|
tmpl[24] TEMPLATE "CobraMortarHalfTrack"
|
|
tmpl[25] TEMPLATE "ViperSensorWheels"
|
|
tmpl[26] TEMPLATE "CobraHvyMortarHalftrack"
|
|
tmpl[27] TEMPLATE "CobraLtA-Thalftrack"
|
|
tmpl[28] TEMPLATE "ViperRepairHalftrack"
|
|
tmpl[29] TEMPLATE "CobraMRLHalftrack"
|
|
tmpl[30] TEMPLATE "PythonLtCnTrks"
|
|
tmpl[31] TEMPLATE "PythonMedCnTrks"
|
|
tmpl[32] TEMPLATE "CobraHMGHalfTrack"
|
|
tmpl[33] TEMPLATE "CobraFlameTracks"
|
|
tmpl[34] TEMPLATE "PythonHvyCnTrks"
|
|
tmpl[35] TEMPLATE "CobraHvyMortarHalftrack"
|
|
|
|
|
|
|
|
// start points. MUST BE MULTIPLE OF 3 <numTemplates && >=3
|
|
// clean base starts from 0.
|
|
tmplTwo INT 0 // simple base
|
|
tmplThree INT 6 // defensive base
|
|
|
|
/////////////////////////////////////////////////////////////////////
|
|
/////////////////////////////////////////////////////////////////////
|
|
// research
|
|
|
|
numResearch INT 92
|
|
res[0] RESEARCHSTAT "R-Vehicle-Prop-Wheels"
|
|
res[1] RESEARCHSTAT "R-Sys-Spade1Mk1"
|
|
res[2] RESEARCHSTAT "R-Vehicle-Body01"
|
|
res[3] RESEARCHSTAT "R-Comp-SynapticLink"
|
|
|
|
res[4] RESEARCHSTAT "R-Wpn-MG1Mk1"
|
|
res[5] RESEARCHSTAT "R-Defense-HardcreteWall"
|
|
res[6] RESEARCHSTAT "R-Vehicle-Prop-Wheels"
|
|
res[7] RESEARCHSTAT "R-Sys-Spade1Mk1"
|
|
res[8] RESEARCHSTAT "R-Struc-Factory-Cyborg"
|
|
res[9] RESEARCHSTAT "R-Cyborg-Wpn-MG"
|
|
res[10] RESEARCHSTAT "R-Defense-Pillbox01"
|
|
res[11] RESEARCHSTAT "R-Defense-Tower01"
|
|
res[12] RESEARCHSTAT "R-Vehicle-Body01"
|
|
res[13] RESEARCHSTAT "R-Sys-Engineering01"
|
|
res[14] RESEARCHSTAT "R-Struc-CommandRelay"
|
|
res[15] RESEARCHSTAT "R-Vehicle-Prop-Halftracks"
|
|
res[16] RESEARCHSTAT "R-Comp-CommandTurret01"
|
|
res[17] RESEARCHSTAT "R-Sys-Sensor-Turret01"
|
|
res[18] RESEARCHSTAT "R-Wpn-Flamer01Mk1"
|
|
|
|
res[19] RESEARCHSTAT "R-Vehicle-Body05"
|
|
res[20] RESEARCHSTAT "R-Struc-Research-Module"
|
|
res[21] RESEARCHSTAT "R-Struc-PowerModuleMk1"
|
|
res[22] RESEARCHSTAT "R-Struc-Factory-Module"
|
|
res[23] RESEARCHSTAT "R-Struc-RepairFacility"
|
|
res[24] RESEARCHSTAT "R-Sys-MobileRepairTurret01"
|
|
res[25] RESEARCHSTAT "R-Vehicle-Engine01"
|
|
res[26] RESEARCHSTAT "R-Vehicle-Prop-Tracks"
|
|
res[27] RESEARCHSTAT "R-Cyborg-Wpn-Cannon"
|
|
res[28] RESEARCHSTAT "R-Cyborg-Wpn-Flamer"
|
|
res[29] RESEARCHSTAT "R-Wpn-MG3Mk1"
|
|
res[30] RESEARCHSTAT "R-Wpn-Cannon1Mk1"
|
|
res[31] RESEARCHSTAT "R-Wpn-Mortar01Lt"
|
|
res[32] RESEARCHSTAT "R-Defense-Pillbox05"
|
|
res[33] RESEARCHSTAT "R-Defense-TankTrap01"
|
|
res[34] RESEARCHSTAT "R-Defense-WallTower02"
|
|
res[35] RESEARCHSTAT "R-Sys-Sensor-Tower01"
|
|
res[36] RESEARCHSTAT "R-Defense-Pillbox04"
|
|
res[37] RESEARCHSTAT "R-Wpn-MG2Mk1"
|
|
res[38] RESEARCHSTAT "R-Wpn-Rocket05-MiniPod"
|
|
res[39] RESEARCHSTAT "R-Wpn-MG-Damage01"
|
|
res[40] RESEARCHSTAT "R-Wpn-Rocket-Damage01"
|
|
res[41] RESEARCHSTAT "R-Defense-WallTower01"
|
|
// skirmish from here!
|
|
res[42] RESEARCHSTAT "R-Sys-Sensor-Upgrade01"
|
|
res[43] RESEARCHSTAT "R-Cyborg-Metals01"
|
|
res[44] RESEARCHSTAT "R-Vehicle-Metals01"
|
|
res[45] RESEARCHSTAT "R-Wpn-RocketSlow-ROF01"
|
|
res[46] RESEARCHSTAT "R-Struc-Factory-Upgrade01"
|
|
res[47] RESEARCHSTAT "R-Struc-Factory-Cyborg-Upgrade01"
|
|
res[48] RESEARCHSTAT "R-Struc-Research-Upgrade01"
|
|
res[49] RESEARCHSTAT "R-Wpn-AAGun-Accuracy01"
|
|
res[50] RESEARCHSTAT "R-Wpn-AAGun-Damage01"
|
|
res[51] RESEARCHSTAT "R-Wpn-Flamer-ROF01"
|
|
res[52] RESEARCHSTAT "R-Wpn-Rocket-Damage02"
|
|
res[53] RESEARCHSTAT "R-Wpn-MG-ROF01"
|
|
res[54] RESEARCHSTAT "R-Wpn-MG-Damage02"
|
|
res[55] RESEARCHSTAT "R-Wpn-Cannon-Accuracy01"
|
|
res[56] RESEARCHSTAT "R-Wpn-Cannon-Damage01"
|
|
res[57] RESEARCHSTAT "R-Wpn-RocketSlow-Accuracy02"
|
|
res[58] RESEARCHSTAT "R-Cyborg-Metals02"
|
|
res[59] RESEARCHSTAT "R-Vehicle-Metals02"
|
|
res[60] RESEARCHSTAT "R-Vehicle-Engine02"
|
|
res[61] RESEARCHSTAT "R-Defense-WallUpgrade02"
|
|
res[62] RESEARCHSTAT "R-Struc-Factory-Upgrade02"
|
|
res[63] RESEARCHSTAT "R-Wpn-RocketSlow-Accuracy03"
|
|
res[64] RESEARCHSTAT "R-Struc-Factory-Cyborg-Upgrade02"
|
|
res[65] RESEARCHSTAT "R-Wpn-MG-Damage03"
|
|
res[66] RESEARCHSTAT "R-Wpn-AAGun-Damage02"
|
|
res[67] RESEARCHSTAT "R-Wpn-Rocket-Damage03"
|
|
res[68] RESEARCHSTAT "R-Wpn-AAGun-ROF01"
|
|
res[69] RESEARCHSTAT "R-Wpn-Cannon-Damage02"
|
|
res[70] RESEARCHSTAT "R-Wpn-Flamer-Damage02"
|
|
res[71] RESEARCHSTAT "R-Wpn-Cannon-Damage03"
|
|
res[72] RESEARCHSTAT "R-Wpn-Rocket-ROF02"
|
|
res[73] RESEARCHSTAT "R-Wpn-Mortar-Acc02"
|
|
res[74] RESEARCHSTAT "R-Wpn-Mortar-Damage02"
|
|
res[75] RESEARCHSTAT "R-Wpn-Rocket-ROF03"
|
|
res[76] RESEARCHSTAT "R-Wpn-RocketSlow-Damage03"
|
|
res[77] RESEARCHSTAT "R-Vehicle-Metals03"
|
|
res[78] RESEARCHSTAT "R-Wpn-RocketSlow-ROF03"
|
|
res[79] RESEARCHSTAT "R-Wpn-RocketSlow-Damage05"
|
|
res[80] RESEARCHSTAT "R-Wpn-Flamer-Damage03"
|
|
res[81] RESEARCHSTAT "R-Vehicle-Engine03"
|
|
res[82] RESEARCHSTAT "R-Wpn-Cannon-Damage04"
|
|
res[83] RESEARCHSTAT "R-Cyborg-Metals03"
|
|
res[84] RESEARCHSTAT "R-Struc-Factory-Cyborg-Upgrade03"
|
|
res[85] RESEARCHSTAT "R-Struc-Factory-Upgrade03"
|
|
res[86] RESEARCHSTAT "R-Wpn-Flamer-Damage04"
|
|
res[87] RESEARCHSTAT "R-Wpn-Cannon-Damage05"
|
|
res[88] RESEARCHSTAT "R-Wpn-Rocket-Damage04"
|
|
res[89] RESEARCHSTAT "R-Struc-VTOLPad-Upgrade01"
|
|
res[90] RESEARCHSTAT "R-Struc-VTOLFactory-Upgrade01"
|
|
res[91] RESEARCHSTAT "R-Struc-VTOLFactory-Upgrade02"
|
|
|
|
// start points. NOTE THIS IS NOT THE NUMBER OF TOPICS
|
|
resClean INT 4 // no base
|
|
resBase INT 19 // simple base
|
|
resDefensive INT 40 // defensive base
|
|
|
|
|
|
}
|