Convert templates to ini file format. Thanks to Duha for file conversions.

This closes ticket:4005.
master
per 2013-05-09 23:17:05 +02:00
parent af1681061a
commit 678e281b50
16 changed files with 3240 additions and 1149 deletions

View File

@ -1,136 +0,0 @@
ASPOTTER,QuadMg1AAGun,NULL,NULL,6
ATESTVEHICLE,Bomb2-VTOL-HvHE,NULL,NULL,6
ATESTVTOL,Rocket-VTOL-BB,NULL,NULL,6
BabaBusCan,BusCannon,NULL,NULL,7
BabaFireCan,BusCannon,NULL,NULL,7
BabaFireTruck,BabaFlame,NULL,NULL,7
BabaJeep,BJeepMG,NULL,NULL,7
BaBaPeople,BaBaMG,NULL,NULL,7
BabaRKJeep,BabaRocket,NULL,NULL,7
BarbarianBuggy,BuggyMG,NULL,NULL,7
BarbarianRKBuggy,BabaRocket,NULL,NULL,7
BarbarianTrike,bTrikeMG,NULL,NULL,7
CO-H-COM-H,CommandTurret1,NULL,NULL,2
CO-H-Command-Track,CommandTurret1,NULL,NULL,2
CO-H-How105-Tracks,Howitzer105Mk1,NULL,NULL,2
CO-H-How150-Tracks,Howitzer150Mk1,NULL,NULL,2
CO-H-HPVCannon-Tracks,Cannon4AUTOMk1,NULL,NULL,2
CO-H-HvyCan-Tracks,Cannon375mmMk1,NULL,NULL,2
CO-H-QuadBofAA-T,AAGun2Mk1,NULL,NULL,2
CO-H-QuadRotAA-T,QuadRotAAGun,NULL,NULL,2
CO-H-Rkt-BB-T,Rocket-BB,NULL,NULL,2
CO-H-RotCan-Track,Cannon5VulcanMk1,NULL,NULL,2
CO-H-RotHow-Track,Howitzer03-Rot,NULL,NULL,2
CO-L-Bomb1-VTOL,Bomb1-VTOL-LtHE,NULL,NULL,2
CO-L-Rocket-LtA-T-VTOL,Rocket-VTOL-LtA-T,NULL,NULL,2
CO-L-RotMG-VTOL,MG4ROTARY-VTOL,NULL,NULL,2
CO-M-Bomb1-VTOL,Bomb1-VTOL-LtHE,NULL,NULL,2
CO-M-Bomb2-VTOL,Bomb2-VTOL-HvHE,NULL,NULL,2
CO-M-HMG-T,MG3Mk1,NULL,NULL,2
CO-M-HPVCannon-Tracks,Cannon4AUTOMk1,NULL,NULL,2
CO-M-HVAT-Hover,Rocket-HvyA-T,NULL,NULL,2
CO-M-HVAT-V,Rocket-VTOL-HvyA-T,NULL,NULL,2
CO-M-HvFlame-Track,Flame2,NULL,NULL,2
CO-M-HvMortar-T,Mortar2Mk1,NULL,NULL,2
CO-M-LTAT-Hover,Rocket-LtA-T,NULL,NULL,2
CO-M-MedCan-Tracks,Cannon2A-TMk1,NULL,NULL,2
CO-M-Rocket-HvyA-T-Track,Rocket-HvyA-T,NULL,NULL,2
CO-M-Rocket-LtA-T-T,Rocket-LtA-T,NULL,NULL,2
CO-M-ROTMG-T,MG4ROTARYMk1,NULL,NULL,2
CO-M-RotMortar-T,Mortar3ROTARYMk1,NULL,NULL,2
CO-M-RR-HT,Rocket-IDF,NULL,NULL,2
CobraComHalftrack,CommandTurret1,NULL,NULL,6
CobraFlameTracks,Flame1Mk1,NULL,NULL,6
CobraHMGHalfTrack,MG3Mk1,NULL,NULL,4
CobraHvyCnTrks,Cannon375mmMk1,NULL,NULL,6
CobraHvyMortarHalftrack,Mortar2Mk1,NULL,NULL,6
CobraLtA-Thalftrack,Rocket-LtA-T,NULL,NULL,6
CobraLtCnTrks,Cannon1Mk1,NULL,NULL,4
CobraMedCnTrks,Cannon2A-TMk1,NULL,NULL,6
CobraMortarHalfTrack,Mortar1Mk1,NULL,NULL,4
CobraMRLHalftrack,Rocket-MRL,NULL,NULL,6
Cyb-Atmiss-GROUND,Cyb-Wpn-Atmiss,NULL,NULL,0
Cyb-Cannon-GROUND,CyborgCannon,NULL,NULL,0
Cyb-Chain-GROUND,CyborgChaingun,NULL,NULL,0
Cyb-Flamer-GROUND,CyborgFlamer01,NULL,NULL,0
Cyb-Laser1-GROUND,Cyb-Wpn-Laser,NULL,NULL,0
Cyb-Rail1-GROUND,Cyb-Wpn-Rail1,NULL,NULL,0
Cyb-Rocket-GROUND,CyborgRocket,NULL,NULL,0
Cyb-RotMG-GROUND,CyborgRotMG,NULL,NULL,0
CyborgCannon01Grd,CyborgCannon,NULL,NULL,5
CyborgChain01Ground,CyborgChaingun,NULL,NULL,5
CyborgFlamer01Grd,CyborgFlamer01,NULL,NULL,5
CyborgRkt01Ground,CyborgRocket,NULL,NULL,5
NP-H-HvyCannon-Hover,Cannon375mmMk1,NULL,NULL,1
NP-H-HvyCannon-Tracks,Cannon375mmMk1,NULL,NULL,1
NP-H-MdCannon-Tracks,Cannon2A-TMk1,NULL,NULL,1
NP-L-HMG-Halftrack,MG3Mk1,NULL,NULL,1
NP-L-LtAT-Halftrack,Rocket-LtA-T,NULL,NULL,1
NP-L-LtCannon-Halftrack,Cannon1Mk1,NULL,NULL,1
NP-L-MRLS-Halftrack,Rocket-MRL,NULL,NULL,1
NP-L-RocketPod-Wheels,Rocket-Pod,NULL,NULL,1
NP-M-BB-Halftrack,Rocket-BB,NULL,NULL,1
NP-M-Command-Halftrack,CommandTurret1,NULL,NULL,1
NP-M-Command-Track,CommandTurret1,NULL,NULL,1
NP-M-HvyMortar-Halftrack,Mortar2Mk1,NULL,NULL,1
NP-M-LitCannon-Halftrack,Cannon1Mk1,NULL,NULL,1
NP-M-LtAT-Hover,Rocket-LtA-T,NULL,NULL,1
NP-M-LtMortar-Halftrack,Mortar1Mk1,NULL,NULL,1
NP-M-MdCannon-Halftrack,Cannon2A-TMk1,NULL,NULL,1
NP-M-MdCannon-Tracks,Cannon2A-TMk1,NULL,NULL,1
NP-M-MG3-Hover,MG3Mk1,NULL,NULL,1
NX-Cyb-Miss-JUMP,NX-CyborgMiss,NULL,NULL,3
NX-Cyb-PulseLas-JUMP,NX-CyborgPulseLas,NULL,NULL,3
NX-Cyb-Rail1-JUMP,NX-Cyb-Rail1,NULL,NULL,3
NX-H-HvMiss-Hover,Missile-HvySAM,NULL,NULL,3
NX-H-Rail2-VTOL,RailGun2-VTOL,NULL,NULL,3
NX-H-Rail3-Hover,RailGun3Mk1,NULL,NULL,3
NX-L-Flash-Hover,Laser3BEAMMk1,NULL,NULL,3
NX-L-Link-Hov,NEXUSlink,NULL,NULL,3
NX-L-Missile-A-T-VTOL,Missile-VTOL-AT,NULL,NULL,3
NX-L-Missile-MdArt-Hover,Missile-MdArt,NULL,NULL,3
NX-L-PulseLas-VTOL,Laser2PULSE-VTOL,NULL,NULL,3
NX-L-Rail1-VTOL,RailGun1-VTOL,NULL,NULL,3
NX-M-Bomb2-VTOL,Bomb2-VTOL-HvHE,NULL,NULL,3
NX-M-Bomb4-VTOL,Bomb4-VTOL-HvyINC,NULL,NULL,3
NX-M-Com-Hover,CommandTurret1,NULL,NULL,3
NX-M-HvSam-Hover,Missile-HvySAM,NULL,NULL,3
NX-M-Link-Hover,NEXUSlink,NULL,NULL,3
NX-M-Missile-A-T-Hover,Missile-A-T,NULL,NULL,3
NX-M-PulseLas-Hover,Laser2PULSEMk1,NULL,NULL,3
NX-M-Rail2-Hover,RailGun2Mk1,NULL,NULL,3
P0cam3PyAsltGnTrk,MG4ROTARYMk1,NULL,NULL,3
P0cam3PyFlakHT,AAGun2Mk1,NULL,NULL,3
P0cam3PyHPVcanTrk,Cannon4AUTOMk1,NULL,NULL,3
P0cam3PyHvyATTrk,Rocket-HvyA-T,NULL,NULL,3
P0CobraFlameTracks,Flame1Mk1,NULL,NULL,2
P0CobraHvyMGHtrack,MG3Mk1,NULL,NULL,2
P0CobraLtATRktHtrack,Rocket-LtA-T,NULL,NULL,2
P0CobraMedCnTrks,Cannon2A-TMk1,NULL,NULL,2
P0PythonComTracks,CommandTurret1,NULL,NULL,2
P0PythonHvyCnTrks,Cannon375mmMk1,NULL,NULL,2
P6-L-Bomb1-V,Bomb1-VTOL-LtHE,NULL,NULL,6
P6-L-LTAT-V,Rocket-VTOL-LtA-T,NULL,NULL,6
P6-M-QMG1-HT,QuadMg1AAGun,NULL,NULL,6
PythonComTracks,CommandTurret1,NULL,NULL,6
PythonHvyCnTrks,Cannon375mmMk1,NULL,NULL,6
PythonLtCnTrks,Cannon1Mk1,NULL,NULL,6
PythonMedCnTrks,Cannon2A-TMk1,NULL,NULL,6
SuperTank,Superweapon,NULL,NULL,6
SuperTank2,Superweapon2,NULL,NULL,6
Transporter,MG3-VTOL,NULL,NULL,2
ViperBBWheels,Rocket-BB,NULL,NULL,6
ViperFlameWheels,Flame1Mk1,NULL,NULL,4
ViperHMGHalftrack,MG3Mk1,NULL,NULL,6
ViperHMGTracks,MG3Mk1,NULL,NULL,6
ViperLtA-Twheels,Rocket-LtA-T,NULL,NULL,6
ViperLtCannonTracks,Cannon1Mk1,NULL,NULL,4
ViperLtCannonWheels,Cannon1Mk1,NULL,NULL,4
ViperLtMGWheels,MG1Mk1,NULL,NULL,0
ViperMedCnTrks,Cannon2A-TMk1,NULL,NULL,6
ViperMG01Wheels,MG1Mk1,NULL,NULL,6
ViperMG02Halftrack,MG2Mk1,NULL,NULL,6
ViperMG02Wheels,MG2Mk1,NULL,NULL,6
ViperMRLWheels,Rocket-MRL,NULL,NULL,6
ViperPODWheels,Rocket-Pod,NULL,NULL,6
ZNULLDESIGN,ZNULLWEAPON,NULL,NULL,0

File diff suppressed because it is too large Load Diff

View File

@ -1,166 +0,0 @@
BarbarianTrike,139,B4body-sml-trike01,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,7,BaBaProp,ZNULLREPAIR,DROID,ZNULLSENSOR,1
ConstructionDroid,140,Body1REC,ZNULLBRAIN,Spade1Mk1,ZNULLECM,0,wheeled01,ZNULLREPAIR,DROID,ZNULLSENSOR,0
BarbarianBuggy,150,B3body-sml-buggy01,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,7,BaBaProp,ZNULLREPAIR,DROID,ZNULLSENSOR,1
BaBaPeople,158,B1BaBaPerson01,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,7,BaBaLegs,ZNULLREPAIR,PERSON,ZNULLSENSOR,1
ViperLtCannonWheels,177,Body1REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,4,wheeled01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
BabaJeep,194,B2JeepBody,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,7,BaBaProp,ZNULLREPAIR,DROID,ZNULLSENSOR,1
ConstructorDroid,249,Body1REC,ZNULLBRAIN,Spade1Mk1,ZNULLECM,5,wheeled01,ZNULLREPAIR,DROID,ZNULLSENSOR,0
ViperLtMGWheels,251,Body1REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,0,wheeled01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
ViperLtCannonTracks,257,Body1REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,4,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
ViperMedCnTrks,263,Body1REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,6,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
CobraLtCnTrks,266,Body5REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,4,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
CobraMedCnTrks,267,Body5REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,6,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
CobraHvyCnTrks,268,Body5REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,6,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
PythonLtCnTrks,269,Body11ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,6,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
PythonHvyCnTrks,271,Body11ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,6,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
ViperFlameWheels,274,Body1REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,4,wheeled01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
ViperSensorWheels,275,Body1REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,4,wheeled01,ZNULLREPAIR,DROID,SensorTurret1Mk1,0
BabaRKJeep,276,B2RKJeepBody,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,7,BaBaProp,ZNULLREPAIR,DROID,ZNULLSENSOR,1
BarbarianRKBuggy,277,B3bodyRKbuggy01,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,7,BaBaProp,ZNULLREPAIR,DROID,ZNULLSENSOR,1
Transporter,278,TransporterBody,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,2,V-Tol,ZNULLREPAIR,TRANSPORTER,ZNULLSENSOR,1
BabaBusCan,289,BusBody,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,7,BaBaProp,ZNULLREPAIR,DROID,ZNULLSENSOR,1
BabaFireCan,290,FireBody,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,7,BaBaProp,ZNULLREPAIR,DROID,ZNULLSENSOR,1
NP-L-RocketPod-Wheels,311,Body4ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,1,wheeled01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
NP-L-MRLS-Halftrack,312,Body4ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,1,HalfTrack,ZNULLREPAIR,DROID,ZNULLSENSOR,1
NP-L-HMG-Halftrack,313,Body4ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,1,HalfTrack,ZNULLREPAIR,DROID,ZNULLSENSOR,1
NP-L-LtAT-Halftrack,314,Body4ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,1,HalfTrack,ZNULLREPAIR,DROID,ZNULLSENSOR,1
NP-L-Sensor-Wheels,315,Body4ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,1,wheeled01,ZNULLREPAIR,DROID,SensorTurret1Mk1,0
NP-M-Command-Halftrack,316,Body8MBT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,1,HalfTrack,ZNULLREPAIR,DROID,ZNULLSENSOR,1
NP-M-Sensor-Wheels,317,Body8MBT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,1,wheeled01,ZNULLREPAIR,DROID,SensorTurret1Mk1,0
NP-M-MdCannon-Halftrack,318,Body8MBT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,1,HalfTrack,ZNULLREPAIR,DROID,ZNULLSENSOR,1
NP-M-MdCannon-Tracks,319,Body8MBT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,1,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
NP-M-LtMortar-Halftrack,320,Body8MBT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,1,HalfTrack,ZNULLREPAIR,DROID,ZNULLSENSOR,1
NP-M-HvyMortar-Halftrack,321,Body8MBT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,1,HalfTrack,ZNULLREPAIR,DROID,ZNULLSENSOR,1
NP-M-BB-Halftrack,322,Body8MBT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,1,HalfTrack,ZNULLREPAIR,DROID,ZNULLSENSOR,1
NP-H-MdCannon-Tracks,323,Body12SUP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,1,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
NP-H-HvyCannon-Tracks,324,Body12SUP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,1,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
Cyb-Chain-GROUND,325,CyborgChain1Ground,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,0,CyborgLegs,ZNULLREPAIR,CYBORG,ZNULLSENSOR,1
CO-H-How105-Tracks,328,Body9REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,2,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
CO-H-How150-Tracks,329,Body9REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,2,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
CO-H-HvyCan-Tracks,330,Body9REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,2,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
CO-M-MedCan-Tracks,336,Body6SUPP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,2,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
CO-M-Sensor-T,337,Body6SUPP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,2,tracked01,ZNULLREPAIR,DROID,SensorTurret1Mk1,0
CyborgFlamer01Grd,341,CyborgFlamerGrd,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,5,CyborgLegs,ZNULLREPAIR,CYBORG,ZNULLSENSOR,1
CyborgRkt01Ground,342,CyborgRkt1Ground,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,5,CyborgLegs,ZNULLREPAIR,CYBORG,ZNULLSENSOR,1
CyborgCannon01Grd,343,CyborgCannonGrd,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,5,CyborgLegs,ZNULLREPAIR,CYBORG,ZNULLSENSOR,1
CyborgChain01Ground,344,CyborgChain1Ground,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,5,CyborgLegs,ZNULLREPAIR,CYBORG,ZNULLSENSOR,1
CobraMortarHalfTrack,346,Body5REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,4,HalfTrack,ZNULLREPAIR,DROID,ZNULLSENSOR,1
CobraHMGHalfTrack,347,Body5REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,4,HalfTrack,ZNULLREPAIR,DROID,ZNULLSENSOR,1
CO-M-Con-T,350,Body6SUPP,ZNULLBRAIN,Spade1Mk1,ZNULLECM,2,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,0
BabaFireTruck,354,FireBody,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,7,BaBaProp,ZNULLREPAIR,DROID,ZNULLSENSOR,1
BabaPickUp,355,B2RKJeepBody,ZNULLBRAIN,Spade1Mk1,ZNULLECM,7,ZNULLPROP,ZNULLREPAIR,DROID,ZNULLSENSOR,0
NX-M-Rail2-Hover,363,Body7ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,3,hover01,ZNULLREPAIR,DROID,NavGunSensor,1
NX-L-PulseLas-VTOL,365,Body3MBT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,3,V-Tol,ZNULLREPAIR,DROID,NavGunSensor,1
NX-L-Missile-A-T-VTOL,366,Body3MBT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,3,V-Tol,ZNULLREPAIR,DROID,NavGunSensor,1
NX-L-Sens-Hov,369,Body3MBT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,3,hover01,ZNULLREPAIR,DROID,SensorTurret1Mk1,0
NX-M-Missile-A-T-Hover,371,Body7ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,3,hover01,ZNULLREPAIR,DROID,NavGunSensor,1
NX-M-Com-Hover,376,Body7ABT,CommandBrain01,ZNULLCONSTRUCT,ZNULLECM,3,hover01,ZNULLREPAIR,DROID,NavGunSensor,1
NX-Cyb-Rail1-JUMP,377,CybNXRail1Jmp,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,3,CyborgLegs,ZNULLREPAIR,CYBORG,NavGunSensor,1
NX-Cyb-PulseLas-JUMP,378,CybNXPulseLasJmp,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,3,CyborgLegs,ZNULLREPAIR,CYBORG,NavGunSensor,1
NX-Cyb-Miss-JUMP,379,CybNXMissJmp,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,3,CyborgLegs,ZNULLREPAIR,CYBORG,NavGunSensor,1
SuperTank,380,Superbody,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,6,hover01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
NP-M-LitCannon-Halftrack,381,Body8MBT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,1,HalfTrack,ZNULLREPAIR,DROID,ZNULLSENSOR,1
NX-M-Con-Hover,382,Body7ABT,ZNULLBRAIN,Spade1Mk1,ZNULLECM,3,hover01,ZNULLREPAIR,DROID,NavGunSensor,0
SuperTank2,383,Superbody,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,6,hover01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
NX-L-Repair-Hover,384,Body3MBT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,3,hover01,LightRepair1,DROID,NavGunSensor,0
ATESTVEHICLE,387,Body5REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,6,V-Tol,ZNULLREPAIR,DROID,ZNULLSENSOR,1
ZNULLDESIGN,389,ZNULLBODY,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,0,ZNULLPROP,ZNULLREPAIR,ZNULLDROID,ZNULLSENSOR,0
NP-M-LtAT-Hover,391,Body8MBT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,1,hover01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
NP-H-HvyCannon-Hover,392,Body12SUP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,1,hover01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
NP-M-MG3-Hover,393,Body8MBT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,1,hover01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
ATESTVTOL,394,Body7ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,6,V-Tol,ZNULLREPAIR,DROID,ZNULLSENSOR,1
ASPOTTER,395,Body1REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,6,tracked03,ZNULLREPAIR,DROID,ZNULLSENSOR,1
NP-M-CON-HalfTrack,397,Body8MBT,ZNULLBRAIN,Spade1Mk1,ZNULLECM,1,HalfTrack,ZNULLREPAIR,DROID,ZNULLSENSOR,0
NP-M-CON-Track,398,Body8MBT,ZNULLBRAIN,Spade1Mk1,ZNULLECM,1,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,0
NP-M-Repair-HalfTrack,399,Body8MBT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,1,tracked01,LightRepair1,DROID,ZNULLSENSOR,0
NP-M-Command-Track,400,Body8MBT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,1,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
NP-M-CBS-Halftrack,402,Body8MBT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,1,HalfTrack,ZNULLREPAIR,DROID,Sys-CBTurret01,0
NP-L-LtCannon-Halftrack,403,Body4ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,1,HalfTrack,ZNULLREPAIR,DROID,ZNULLSENSOR,1
CO-M-Repair-T,405,Body6SUPP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,2,tracked01,LightRepair1,DROID,ZNULLSENSOR,0
CO-M-Vstrike-T,407,Body6SUPP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,2,tracked01,ZNULLREPAIR,DROID,Sys-VstrikeTurret01,0
CO-M-VTOLCBS-T,408,Body6SUPP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,2,tracked01,ZNULLREPAIR,DROID,Sys-VTOLCBTurret01,0
CO-H-Command-Track,410,Body9REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,2,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
CO-M-HMG-T,411,Body6SUPP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,2,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
CO-M-LTAT-Hover,412,Body6SUPP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,2,hover01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
CO-M-HPVCannon-Tracks,413,Body6SUPP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,2,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
CO-M-Rocket-LtA-T-T,415,Body6SUPP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,2,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
CO-M-Rocket-HvyA-T-Track,417,Body6SUPP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,2,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
CO-H-RotCan-Track,418,Body9REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,2,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
CO-H-HPVCannon-Tracks,419,Body9REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,2,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
CO-H-Rkt-BB-T,420,Body9REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,2,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
CO-M-HvMortar-T,421,Body6SUPP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,2,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
CO-M-RotMortar-T,422,Body6SUPP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,2,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
CO-H-RotHow-Track,423,Body9REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,2,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
CO-L-Rocket-LtA-T-VTOL,424,Body2SUP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,2,V-Tol,ZNULLREPAIR,DROID,ZNULLSENSOR,1
CO-H-COM-H,425,Body9REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,2,hover01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
CO-L-RotMG-VTOL,426,Body2SUP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,2,V-Tol,ZNULLREPAIR,DROID,ZNULLSENSOR,1
CO-M-Bomb1-VTOL,427,Body6SUPP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,2,V-Tol,ZNULLREPAIR,DROID,ZNULLSENSOR,1
CO-M-Bomb2-VTOL,428,Body6SUPP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,2,V-Tol,ZNULLREPAIR,DROID,ZNULLSENSOR,1
CO-H-QuadBofAA-T,429,Body6SUPP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,2,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
CO-H-QuadRotAA-T,430,Body9REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,2,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
NX-M-Link-Hover,431,Body7ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,3,hover01,ZNULLREPAIR,DROID,NavGunSensor,1
NX-H-CBS-Hover,432,Body10MBT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,3,hover01,ZNULLREPAIR,DROID,Sys-CBTurret01,0
NX-M-Strike-Hover,433,Body7ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,3,hover01,ZNULLREPAIR,DROID,Sys-VstrikeTurret01,0
NX-M-VTOLCBS-Hover,434,Body7ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,3,hover01,ZNULLREPAIR,DROID,Sys-VTOLCBTurret01,0
NX-M-PulseLas-Hover,437,Body7ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,3,hover01,ZNULLREPAIR,DROID,NavGunSensor,1
NX-H-Rail3-Hover,438,Body10MBT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,3,hover01,ZNULLREPAIR,DROID,NavGunSensor,1
NX-L-Flash-Hover,439,Body3MBT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,3,hover01,ZNULLREPAIR,DROID,NavGunSensor,1
NX-L-Missile-MdArt-Hover,440,Body3MBT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,3,hover01,ZNULLREPAIR,DROID,NavGunSensor,1
NX-H-HvMiss-Hover,441,Body10MBT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,3,hover01,ZNULLREPAIR,DROID,NavGunSensor,1
NX-L-Rail1-VTOL,443,Body3MBT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,3,V-Tol,ZNULLREPAIR,DROID,NavGunSensor,1
NX-H-Rail2-VTOL,444,Body7ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,3,V-Tol,ZNULLREPAIR,DROID,NavGunSensor,1
Cyb-Flamer-GROUND,446,CyborgFlamerGrd,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,0,CyborgLegs,ZNULLREPAIR,CYBORG,ZNULLSENSOR,1
Cyb-Cannon-GROUND,447,CyborgCannonGrd,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,0,CyborgLegs,ZNULLREPAIR,CYBORG,ZNULLSENSOR,1
Cyb-Rocket-GROUND,448,CyborgRkt1Ground,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,0,CyborgLegs,ZNULLREPAIR,CYBORG,ZNULLSENSOR,1
Cyb-RotMG-GROUND,449,CybRotMgGrd,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,0,CyborgLegs,ZNULLREPAIR,CYBORG,ZNULLSENSOR,1
BaBaCivilian,451,B1BaBaPerson01,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,7,BaBaLegs,ZNULLREPAIR,PERSON,ZNULLSENSOR,0
ViperRepairWheels,452,Body1REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,6,wheeled01,LightRepair1,DROID,ZNULLSENSOR,0
ViperRepairHalftrack,453,Body1REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,6,HalfTrack,LightRepair1,DROID,ZNULLSENSOR,0
ViperMG01Wheels,454,Body1REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,6,wheeled01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
ViperMG02Wheels,455,Body1REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,6,wheeled01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
ViperMG02Halftrack,456,Body1REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,6,HalfTrack,ZNULLREPAIR,DROID,ZNULLSENSOR,1
ViperHMGHalftrack,457,Body1REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,6,HalfTrack,ZNULLREPAIR,DROID,ZNULLSENSOR,1
ViperHMGTracks,458,Body1REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,6,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
ViperLtA-Twheels,459,Body1REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,6,wheeled01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
ViperPODWheels,460,Body1REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,6,wheeled01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
ViperMRLWheels,461,Body1REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,6,wheeled01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
ViperBBWheels,462,Body1REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,6,wheeled01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
CobraSpadeTracks,463,Body5REC,ZNULLBRAIN,Spade1Mk1,ZNULLECM,6,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,0
CobraSensorHalftrack,464,Body5REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,6,HalfTrack,ZNULLREPAIR,DROID,SensorTurret1Mk1,0
CobraFlameTracks,466,Body5REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,6,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
CobraHvyMortarHalftrack,467,Body5REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,6,HalfTrack,ZNULLREPAIR,DROID,ZNULLSENSOR,1
CobraComHalftrack,468,Body5REC,CommandBrain01,ZNULLCONSTRUCT,ZNULLECM,6,HalfTrack,ZNULLREPAIR,DROID,ZNULLSENSOR,1
CobraLtA-Thalftrack,469,Body5REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,6,HalfTrack,ZNULLREPAIR,DROID,ZNULLSENSOR,1
CobraMRLHalftrack,470,Body5REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,6,HalfTrack,ZNULLREPAIR,DROID,ZNULLSENSOR,1
PythonComTracks,471,Body11ABT,CommandBrain01,ZNULLCONSTRUCT,ZNULLECM,6,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
PythonMedCnTrks,472,Body11ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,6,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
P0PythonHvyCnTrks,481,Body11ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,2,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
P0CobraSpadeTracks,482,Body5REC,ZNULLBRAIN,Spade1Mk1,ZNULLECM,2,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,0
P0CobraFlameTracks,483,Body5REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,2,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
P0CobraMedCnTrks,484,Body5REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,2,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
CO-M-HvFlame-Track,495,Body6SUPP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,2,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
CO-M-RR-HT,496,Body6SUPP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,2,HalfTrack,ZNULLREPAIR,DROID,ZNULLSENSOR,1
CO-M-CBS-T,497,Body6SUPP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,2,tracked01,ZNULLREPAIR,DROID,Sys-CBTurret01,0
CO-M-ROTMG-T,498,Body6SUPP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,2,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
CO-M-HVAT-V,499,Body6SUPP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,2,V-Tol,ZNULLREPAIR,DROID,ZNULLSENSOR,1
P0CobraLtATRktHtrack,500,Body5REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,2,HalfTrack,ZNULLREPAIR,DROID,ZNULLSENSOR,1
P0CobraHvyMGHtrack,501,Body5REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,2,HalfTrack,ZNULLREPAIR,DROID,ZNULLSENSOR,1
P0PythonComTracks,502,Body11ABT,CommandBrain01,ZNULLCONSTRUCT,ZNULLECM,2,HalfTrack,ZNULLREPAIR,DROID,ZNULLSENSOR,1
CO-M-HVAT-Hover,503,Body6SUPP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,2,hover01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
P0CobraRepairTrks,504,Body5REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,2,tracked01,LightRepair1,DROID,ZNULLSENSOR,0
CO-L-Bomb1-VTOL,505,Body2SUP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,2,V-Tol,ZNULLREPAIR,DROID,ZNULLSENSOR,1
Cyb-Atmiss-GROUND,506,Cyb-Bod-Atmiss,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,0,CyborgLegs,ZNULLREPAIR,CYBORG,ZNULLSENSOR,1
Cyb-Laser1-GROUND,508,Cyb-Bod-Las1,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,0,CyborgLegs,ZNULLREPAIR,CYBORG,ZNULLSENSOR,1
Cyb-Rail1-GROUND,509,Cyb-Bod-Rail1,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,0,CyborgLegs,ZNULLREPAIR,CYBORG,ZNULLSENSOR,1
P6-L-LTAT-V,510,Body1REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,6,V-Tol,ZNULLREPAIR,DROID,ZNULLSENSOR,1
P6-L-Bomb1-V,511,Body1REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,6,V-Tol,ZNULLREPAIR,DROID,ZNULLSENSOR,1
P6-M-QMG1-HT,512,Body5REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,6,HalfTrack,ZNULLREPAIR,DROID,ZNULLSENSOR,1
P0cam3CobCONTrk,513,Body5REC,ZNULLBRAIN,Spade1Mk1,ZNULLECM,3,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,0
P0cam3PyHvyATTrk,514,Body11ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,3,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
P0cam3PyHPVcanTrk,515,Body11ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,3,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
P0cam3PyFlakHT,516,Body11ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,3,HalfTrack,ZNULLREPAIR,DROID,ZNULLSENSOR,1
P0cam3PyAsltGnTrk,517,Body11ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,3,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
NX-M-Bomb4-VTOL,518,Body7ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,3,V-Tol,ZNULLREPAIR,DROID,NavGunSensor,1
NX-M-HvSam-Hover,519,Body7ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,3,hover01,ZNULLREPAIR,DROID,NavGunSensor,1
NX-L-Link-Hov,520,Body3MBT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,3,hover01,ZNULLREPAIR,DROID,NavGunSensor,1
NX-M-Bomb2-VTOL,521,Body7ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,3,V-Tol,ZNULLREPAIR,DROID,NavGunSensor,1

View File

@ -20,8 +20,7 @@ file STERRTABLE "terraintable.ini"
file SBPIMD "bodypropulsionimd.ini"
file SWEAPSND "weaponsounds.ini"
file SWEAPMOD "weaponmodifier.ini"
file STEMPL "templates.txt"
file STEMPWEAP "assignweapons.txt"
file STEMPL "templates.ini"
file SSTRUCT "structure.ini"
file SSTRMOD "structuremodifier.ini"
file SFEAT "features.txt"

View File

@ -1,318 +0,0 @@
ASPOTTER,Cyb-Hvywpn-HPV,NULL,NULL,6
ATESTVEHICLE,Cannon2A-TMk1,NULL,NULL,6
ATESTVTOL,Rocket-VTOL-BB,NULL,NULL,6
BabaBusCan,BusCannon,NULL,NULL,7
BabaFireCan,BusCannon,NULL,NULL,7
BabaFireTruck,BabaFlame,NULL,NULL,7
BabaJeep,BJeepMG,NULL,NULL,7
BaBaPeople,BaBaMG,NULL,NULL,7
BabaRKJeep,BabaRocket,NULL,NULL,7
BarbarianBuggy,BuggyMG,NULL,NULL,7
BarbarianRKBuggy,BabaRocket,NULL,NULL,7
BarbarianTrike,bTrikeMG,NULL,NULL,7
CO-H-COM-H,CommandTurret1,NULL,NULL,2
CO-H-Command-Track,CommandTurret1,NULL,NULL,2
CO-H-How105-Tracks,Howitzer105Mk1,NULL,NULL,2
CO-H-How150-Tracks,Howitzer150Mk1,NULL,NULL,2
CO-H-HPVCannon-Tracks,Cannon4AUTOMk1,NULL,NULL,2
CO-H-HvyCan-Tracks,Cannon375mmMk1,NULL,NULL,2
CO-H-QuadBofAA-T,AAGun2Mk1,NULL,NULL,2
CO-H-QuadRotAA-T,QuadRotAAGun,NULL,NULL,2
CO-H-Rkt-BB-T,Rocket-BB,NULL,NULL,2
CO-H-RotCan-Track,Cannon5VulcanMk1,NULL,NULL,2
CO-H-RotHow-Track,Howitzer03-Rot,NULL,NULL,2
CO-L-Bomb1-VTOL,Bomb1-VTOL-LtHE,NULL,NULL,2
CO-L-Rocket-LtA-T-VTOL,Rocket-VTOL-LtA-T,NULL,NULL,2
CO-L-RotMG-VTOL,MG4ROTARY-VTOL,NULL,NULL,2
CO-M-Bomb1-VTOL,Bomb1-VTOL-LtHE,NULL,NULL,2
CO-M-Bomb2-VTOL,Bomb2-VTOL-HvHE,NULL,NULL,2
CO-M-HMG-T,MG3Mk1,NULL,NULL,2
CO-M-HPVCannon-Tracks,Cannon4AUTOMk1,NULL,NULL,2
CO-M-HVAT-Hover,Rocket-HvyA-T,NULL,NULL,2
CO-M-HVAT-V,Rocket-VTOL-HvyA-T,NULL,NULL,2
CO-M-HvFlame-Track,Flame2,NULL,NULL,2
CO-M-HvMortar-T,Mortar2Mk1,NULL,NULL,2
CO-M-LTAT-Hover,Rocket-LtA-T,NULL,NULL,2
CO-M-MedCan-Tracks,Cannon2A-TMk1,NULL,NULL,2
CO-M-Rocket-HvyA-T-Track,Rocket-HvyA-T,NULL,NULL,2
CO-M-Rocket-LtA-T-T,Rocket-LtA-T,NULL,NULL,2
CO-M-ROTMG-T,MG4ROTARYMk1,NULL,NULL,2
CO-M-RotMortar-T,Mortar3ROTARYMk1,NULL,NULL,2
CO-M-RR-HT,Rocket-IDF,NULL,NULL,2
CobraComHalftrack,CommandTurret1,NULL,NULL,6
CobraFlameTracks,Flame1Mk1,NULL,NULL,6
CobraHMGHalfTrack,MG3Mk1,NULL,NULL,4
CobraHvyCnTrks,Cannon375mmMk1,NULL,NULL,6
CobraHvyMortarHalftrack,Mortar2Mk1,NULL,NULL,6
CobraLtA-Thalftrack,Rocket-LtA-T,NULL,NULL,6
CobraLtCnTrks,Cannon1Mk1,NULL,NULL,4
CobraMedCnTrks,Cannon2A-TMk1,NULL,NULL,6
CobraMortarHalfTrack,Mortar1Mk1,NULL,NULL,4
CobraMRLHalftrack,Rocket-MRL,NULL,NULL,6
Cyb-Atmiss-GROUND,Cyb-Wpn-Atmiss,NULL,NULL,0
Cyb-Cannon-GROUND,CyborgCannon,NULL,NULL,0
Cyb-Chain-GROUND,CyborgChaingun,NULL,NULL,0
Cyb-Flamer-GROUND,CyborgFlamer01,NULL,NULL,0
Cyb-Gren,Cyb-Wpn-Grenade,NULL,NULL,5
Cyb-Hvy-A-T,Cyb-Hvywpn-A-T,NULL,NULL,5
Cyb-Hvy-Acannon,Cyb-Hvywpn-Acannon,NULL,NULL,5
Cyb-Hvy-HPV,Cyb-Hvywpn-HPV,NULL,NULL,5
Cyb-Hvy-Mcannon,Cyb-Hvywpn-Mcannon,NULL,NULL,5
Cyb-Hvy-PulseLsr,Cyb-Hvywpn-PulseLsr,NULL,NULL,5
Cyb-Hvy-RailGunner,Cyb-Hvywpn-RailGunner,NULL,NULL,5
Cyb-Hvy-TK,Cyb-Hvywpn-TK,NULL,NULL,5
Cyb-Laser1-GROUND,Cyb-Wpn-Laser,NULL,NULL,0
Cyb-Rail1-GROUND,Cyb-Wpn-Rail1,NULL,NULL,0
Cyb-Rocket-GROUND,CyborgRocket,NULL,NULL,0
Cyb-RotMG-GROUND,CyborgRotMG,NULL,NULL,0
Cyb-Thermite,Cyb-Wpn-Thermite,NULL,NULL,5
CyborgCannon01Grd,CyborgCannon,NULL,NULL,5
CyborgChain01Ground,CyborgChaingun,NULL,NULL,5
CyborgFlamer01Grd,CyborgFlamer01,NULL,NULL,5
CyborgRkt01Ground,CyborgRocket,NULL,NULL,5
CyborgRotMgGround,CyborgRotMG,NULL,NULL,5
MP-Cyb-ATmiss-GRD,Cyb-Wpn-Atmiss,NULL,NULL,5
MP-Cyb-Laser1-GRD,Cyb-Wpn-Laser,NULL,NULL,5
MP-Cyb-Needle-GRD,Cyb-Wpn-Rail1,NULL,NULL,5
NP-H-HvyCannon-Hover,Cannon375mmMk1,NULL,NULL,1
NP-H-HvyCannon-Tracks,Cannon375mmMk1,NULL,NULL,1
NP-H-MdCannon-Tracks,Cannon2A-TMk1,NULL,NULL,1
NP-L-HMG-Halftrack,MG3Mk1,NULL,NULL,1
NP-L-LtAT-Halftrack,Rocket-LtA-T,NULL,NULL,1
NP-L-LtCannon-Halftrack,Cannon1Mk1,NULL,NULL,1
NP-L-MRLS-Halftrack,Rocket-MRL,NULL,NULL,1
NP-L-RocketPod-Wheels,Rocket-Pod,NULL,NULL,1
NP-M-BB-Halftrack,Rocket-BB,NULL,NULL,1
NP-M-Command-Halftrack,CommandTurret1,NULL,NULL,1
NP-M-Command-Track,CommandTurret1,NULL,NULL,1
NP-M-HvyMortar-Halftrack,Mortar2Mk1,NULL,NULL,1
NP-M-LitCannon-Halftrack,Cannon1Mk1,NULL,NULL,1
NP-M-LtAT-Hover,Rocket-LtA-T,NULL,NULL,1
NP-M-LtMortar-Halftrack,Mortar1Mk1,NULL,NULL,1
NP-M-MdCannon-Halftrack,Cannon2A-TMk1,NULL,NULL,1
NP-M-MdCannon-Tracks,Cannon2A-TMk1,NULL,NULL,1
NP-M-MG3-Hover,MG3Mk1,NULL,NULL,1
NX-H-HvMiss-Hover,Missile-HvySAM,NULL,NULL,3
NX-H-Rail2-VTOL,RailGun2-VTOL,NULL,NULL,3
NX-H-Rail3-Hover,RailGun3Mk1,NULL,NULL,3
NX-L-Flash-Hover,Laser3BEAMMk1,NULL,NULL,3
NX-L-Link-Hov,NEXUSlink,NULL,NULL,3
NX-L-Missile-A-T-VTOL,Missile-VTOL-AT,NULL,NULL,3
NX-L-Missile-MdArt-Hover,Missile-MdArt,NULL,NULL,3
NX-L-PulseLas-VTOL,Laser2PULSE-VTOL,NULL,NULL,3
NX-L-Rail1-VTOL,RailGun1-VTOL,NULL,NULL,3
NX-M-Bomb2-VTOL,Bomb2-VTOL-HvHE,NULL,NULL,3
NX-M-Bomb4-VTOL,Bomb4-VTOL-HvyINC,NULL,NULL,3
NX-M-Com-Hover,CommandTurret1,NULL,NULL,3
NX-M-HvSam-Hover,Missile-HvySAM,NULL,NULL,3
NX-M-Link-Hover,NEXUSlink,NULL,NULL,3
NX-M-Missile-A-T-Hover,Missile-A-T,NULL,NULL,3
NX-M-PulseLas-Hover,Laser2PULSEMk1,NULL,NULL,3
NX-M-Rail2-Hover,RailGun2Mk1,NULL,NULL,3
P0cam3PyAsltGnTrk,MG4ROTARYMk1,NULL,NULL,3
P0cam3PyFlakHT,AAGun2Mk1,NULL,NULL,3
P0cam3PyHPVcanTrk,Cannon4AUTOMk1,NULL,NULL,3
P0cam3PyHvyATTrk,Rocket-HvyA-T,NULL,NULL,3
P0CobraFlameTracks,Flame1Mk1,NULL,NULL,2
P0CobraHvyMGHtrack,MG3Mk1,NULL,NULL,2
P0CobraLtATRktHtrack,Rocket-LtA-T,NULL,NULL,2
P0CobraMedCnTrks,Cannon2A-TMk1,NULL,NULL,2
P0PythonComTracks,CommandTurret1,NULL,NULL,2
P0PythonHvyCnTrks,Cannon375mmMk1,NULL,NULL,2
P6-L-Bomb1-V,Bomb1-VTOL-LtHE,NULL,NULL,6
P6-L-LTAT-V,Rocket-VTOL-LtA-T,NULL,NULL,6
P6-M-QMG1-HT,QuadMg1AAGun,NULL,NULL,6
PythonComTracks,CommandTurret1,NULL,NULL,6
PythonHvyCnTrks,Cannon375mmMk1,NULL,NULL,6
PythonLtCnTrks,Cannon1Mk1,NULL,NULL,6
PythonMedCnTrks,Cannon2A-TMk1,NULL,NULL,6
SK-Bug-Hover-HMG,MG3Mk1,NULL,NULL,6
SK-Bug-VTOL-BB,Rocket-VTOL-BB,NULL,NULL,6
SK-Bug-VTOL-CLBomb,Bomb1-VTOL-LtHE,NULL,NULL,6
SK-Cobra-Hover-BB,Rocket-BB,NULL,NULL,6
SK-Cobra-Hover-HMG,MG3Mk1,NULL,NULL,6
SK-Cobra-Hover-Lancer,Rocket-LtA-T,NULL,NULL,6
SK-Cobra-Track-HVC,Cannon4AUTOMk1,NULL,NULL,6
SK-Cobra-Track-TK,Rocket-HvyA-T,NULL,NULL,6
Sk-CobraBBHover,Rocket-BB,NULL,NULL,6
SK-Leopard-Hover-Needle,RailGun1Mk1,NULL,NULL,6
SK-Leopard-HTrk-ASGun,MG4ROTARYMk1,NULL,NULL,6
SK-Leopard-Htrk-Needle,RailGun1Mk1,NULL,NULL,6
SK-Leopard-Track-Lancer,Rocket-LtA-T,NULL,NULL,6
SK-Leopard-VTOL-BB,Rocket-VTOL-BB,NULL,NULL,6
SK-Leopard-VTOL-PhosBomb,Bomb3-VTOL-LtINC,NULL,NULL,6
SK-Mantis-Hover-Hcannon,Cannon375mmMk1,NULL,NULL,6
SK-Mantis-Hover-HVC,Cannon4AUTOMk1,NULL,NULL,6
SK-Mantis-VTOL-BB,Rocket-VTOL-BB,NULL,NULL,6
SK-Panther-Hover-HVC,Cannon4AUTOMk1,NULL,NULL,6
SK-Panther-Hover-TK,Rocket-HvyA-T,NULL,NULL,6
SK-Panther-Htrk-ASGun,MG4ROTARYMk1,NULL,NULL,6
SK-Panther-Htrk-BB,Rocket-BB,NULL,NULL,6
SK-Panther-Track-HVC,Cannon4AUTOMk1,NULL,NULL,6
SK-Panther-Track-RailGun,RailGun2Mk1,NULL,NULL,6
SK-Panther-Track-TK,Rocket-HvyA-T,NULL,NULL,6
SK-Panther-VTOL-BB,Rocket-VTOL-BB,NULL,NULL,6
SK-Panther-VTOL-Phosbomb,Bomb3-VTOL-LtINC,NULL,NULL,6
SK-Panther-VTOL-Thermite,Bomb4-VTOL-HvyINC,NULL,NULL,6
SK-Panther-VTOL-TK,Rocket-VTOL-HvyA-T,NULL,NULL,6
SK-Python-Hover-Hcannon,Cannon375mmMk1,NULL,NULL,6
SK-Python-Hover-Lancer,Rocket-LtA-T,NULL,NULL,6
SK-Python-Hover-Mcannon,Cannon2A-TMk1,NULL,NULL,6
SK-Python-Track-Hcannon,Cannon375mmMk1,NULL,NULL,6
Sk-PythonHvCanTrack,Cannon375mmMk1,NULL,NULL,6
SK-Retal-Track-Needle,RailGun1Mk1,NULL,NULL,6
SK-Retal-VTOL-Phosbomb,Bomb3-VTOL-LtINC,NULL,NULL,6
SK-Retre-Hover-RailGun,RailGun2Mk1,NULL,NULL,6
SK-Retre-Hover-Scourge,Missile-A-T,NULL,NULL,6
SK-Retre-Htrk-Pepper,Mortar3ROTARYMk1,NULL,NULL,6
SK-Retre-Track-FlashLight,Laser3BEAMMk1,NULL,NULL,6
SK-Retre-Track-PulseLsr,Laser2PULSEMk1,NULL,NULL,6
SK-Retre-Track-RailGun,RailGun2Mk1,NULL,NULL,6
SK-Retre-Track-Scourge,Missile-A-T,NULL,NULL,6
SK-Retre-VTOL-PulseLsr,Laser2PULSE-VTOL,NULL,NULL,6
SK-Retre-VTOL-Scourge,Missile-VTOL-AT,NULL,NULL,6
SK-Retre-VTOL-Thermite,Bomb4-VTOL-HvyINC,NULL,NULL,6
SK-Scorp-Hover-ASGUN,MG4ROTARYMk1,NULL,NULL,6
SK-Scorp-Hover-BB,Rocket-BB,NULL,NULL,6
SK-Scorp-Hover-Bombard,Mortar2Mk1,NULL,NULL,6
SK-Scorp-Hover-Lancer,Rocket-LtA-T,NULL,NULL,6
SK-Scorp-Hover-Mcannon,Cannon2A-TMk1,NULL,NULL,6
SK-Scorpion-VTOL-BB,Rocket-VTOL-BB,NULL,NULL,6
SK-Scorpion-VTOL-Hbomb,Bomb2-VTOL-HvHE,NULL,NULL,6
SK-Tiger-Hover-ASCannon,Cannon5VulcanMk1,NULL,NULL,6
SK-Tiger-Hover-Gauss,RailGun3Mk1,NULL,NULL,6
SK-Tiger-Hover-Hcannon,Cannon375mmMk1,NULL,NULL,6
SK-Tiger-Hover-HVC,Cannon4AUTOMk1,NULL,NULL,6
SK-Tiger-Hover-Scourge,Missile-A-T,NULL,NULL,6
SK-Tiger-Hover-TK,Rocket-HvyA-T,NULL,NULL,6
SK-Tiger-Track-ASCannon,Cannon5VulcanMk1,NULL,NULL,6
SK-Tiger-Track-Gauss,RailGun3Mk1,NULL,NULL,6
SK-Tiger-Track-Hcannon,Cannon375mmMk1,NULL,NULL,6
SK-Tiger-Track-HVC,Cannon4AUTOMk1,NULL,NULL,6
SK-Tiger-Track-Scourge,Missile-A-T,NULL,NULL,6
SK-Tiger-Track-TK,Rocket-HvyA-T,NULL,NULL,6
SK-Veng-Hover-Gauss,RailGun3Mk1,NULL,NULL,6
SK-Veng-Hover-PulseLsr,Laser2PULSEMk1,NULL,NULL,6
SK-Veng-Hover-Scourge,Missile-A-T,NULL,NULL,6
SK-Veng-Track-C6TwinAslt,Cannon6TwinAslt,NULL,NULL,6
SK-Veng-Track-Gauss,RailGun3Mk1,NULL,NULL,6
SK-Veng-Track-HvyLaser,HeavyLaser,NULL,NULL,6
SK-Veng-Track-PulseLsr,Laser2PULSEMk1,NULL,NULL,6
SK-Veng-Track-Scourge,Missile-A-T,NULL,NULL,6
SuperTank,Superweapon,NULL,NULL,6
SuperTank2,Superweapon2,NULL,NULL,6
ViperBBWheels,Rocket-BB,NULL,NULL,6
ViperFlameWheels,Flame1Mk1,NULL,NULL,4
ViperHMGHalftrack,MG3Mk1,NULL,NULL,6
ViperHMGTracks,MG3Mk1,NULL,NULL,6
ViperLtA-Twheels,Rocket-LtA-T,NULL,NULL,6
ViperLtCannonTracks,Cannon1Mk1,NULL,NULL,4
ViperLtCannonWheels,Cannon1Mk1,NULL,NULL,4
ViperLtCannonHTracks,Cannon1Mk1,NULL,NULL,4
ViperLtMGWheels,MG1Mk1,NULL,NULL,0
ViperMedCnTrks,Cannon2A-TMk1,NULL,NULL,6
ViperMG01Wheels,MG1Mk1,NULL,NULL,6
ViperMG02Halftrack,MG2Mk1,NULL,NULL,6
ViperMG02Wheels,MG2Mk1,NULL,NULL,6
ViperMRLWheels,Rocket-MRL,NULL,NULL,6
ViperPODWheels,Rocket-Pod,NULL,NULL,6
ViperHMGWheels,MG3Mk1,NULL,NULL,6
Scourge-Mantis-H,Missile-A-T,NULL,NULL,6
TK-Mantis-H,Rocket-HvyA-T,NULL,NULL,6
CobraHMGTracks,MG3Mk1,NULL,NULL,6
A-Viper-Wheels-MG,MG1Mk1,NULL,NULL,6
A-Viper-Wheels-TMG,MG2Mk1,NULL,NULL,6
A-Viper-Wheels-HMG,MG3Mk1,NULL,NULL,6
A-Cobra-Wheels-HMG,MG3Mk1,NULL,NULL,6
A-Cobra-Hover-HMG,MG3Mk1,NULL,NULL,6
A-Cobra-Hover-MC,Cannon2A-TMk1,NULL,NULL,6
A-Scorp-Hover-MC,Cannon2A-TMk1,NULL,NULL,6
A-Python-Hover-MC,Cannon2A-TMk1,NULL,NULL,6
A-Python-Hover-HC,Cannon375mmMk1,NULL,NULL,6
A-Python-Trk-HC,Cannon375mmMk1,NULL,NULL,6
A-Tiger-Trk-HC,Cannon375mmMk1,NULL,NULL,6
A-Tiger-Trk-Needle,RailGun1Mk1,NULL,NULL,6
A-Retrib-Trk-Needle,RailGun1Mk1,NULL,NULL,6
A-Veng-Trk-Needle,RailGun1Mk1,NULL,NULL,6
A-Veng-Trk-Rail,RailGun2Mk1,NULL,NULL,6
A-Veng-Trk-Guass,RailGun3Mk1,NULL,NULL,6
A-Veng-Trk-Scourge,Missile-A-T,NULL,NULL,6
A-Mantis-Trk-Rail,RailGun2Mk1,NULL,NULL,6
A-Mantis-Trk-Pulse,Laser2PULSEMk1,NULL,NULL,6
V-Bug-ClusterBomb,Bomb1-VTOL-LtHE,NULL,NULL,6
V-Bug-BB,Rocket-VTOL-BB,NULL,NULL,6
V-Bug-Lancer,Rocket-VTOL-LtA-T,NULL,NULL,6
V-Bug-HPV,Cannon4AUTO-VTOL,NULL,NULL,6
V-Scor-ClusterBomb,Bomb1-VTOL-LtHE,NULL,NULL,6
V-Scor-BB,Rocket-VTOL-BB,NULL,NULL,6
V-Scor-Lancer,Rocket-VTOL-LtA-T,NULL,NULL,6
V-Scor-HPV,Cannon4AUTO-VTOL,NULL,NULL,6
A-Python-Trk-Lancer,Rocket-LtA-T,NULL,NULL,6
A-Mantis-Trk-Lancer,Rocket-LtA-T,NULL,NULL,6
A-Veng-Trk-TK,Rocket-HvyA-T,NULL,NULL,6
V-Mantis-Lancer,Rocket-VTOL-LtA-T,NULL,NULL,6
V-Mantis-HPV,Cannon4AUTO-VTOL,NULL,NULL,6
A-Viper-Trk-MG,MG1Mk1,NULL,NULL,6
A-Viper-Trk-TMG,MG2Mk1,NULL,NULL,6
A-Viper-Trk-HMG,MG3Mk1,NULL,NULL,6
A-Cobra-Trk-HMG,MG3Mk1,NULL,NULL,6
A-Scorp-Trk-MC,Cannon2A-TMk1,NULL,NULL,6
Cobra-Hover-HC,Cannon375mmMk1,NULL,NULL,6
H-Scorp-Trk-Lancer,Rocket-LtA-T,NULL,NULL,6
H-Scorp-Trk-HC,Cannon375mmMk1,NULL,NULL,6
H-Scorp-VTOL-Lancer,Rocket-VTOL-LtA-T,NULL,NULL,6
H-Scorp-VTOL-BB,Rocket-VTOL-BB,NULL,NULL,6
Viper-Trk-Com,CommandTurret1,NULL,NULL,6
Cobra-Trk-Com,CommandTurret1,NULL,NULL,6
Scorp-Trk-Com,CommandTurret1,NULL,NULL,6
Mantis-Trk-Com,CommandTurret1,NULL,NULL,6
CobraTrkLancer,Rocket-LtA-T,NULL,NULL,6
MantisTrkHC,Cannon375mmMk1,NULL,NULL,6
MantisTKTracks,Rocket-HvyA-T,NULL,NULL,6
ScorpTrkHMG,MG3Mk1,NULL,NULL,6
CobraBBTracks,Rocket-BB,NULL,NULL,6
ScorpBBTracks,Rocket-BB,NULL,NULL,6
MantisBBTracks,Rocket-BB,NULL,NULL,6
MantisScourgeTracks,Missile-A-T,NULL,NULL,6
ViperTrkLancer,Rocket-LtA-T,NULL,NULL,6
CobraPODHTracks,Rocket-Pod,NULL,NULL,6
CobraPODTracks,Rocket-Pod,NULL,NULL,6
CobraMRLTracks,Rocket-MRL,NULL,NULL,6
CobraInfernoHTracks,Flame2,NULL,NULL,6
PythonHoverHVC,Cannon4AUTOMk1,NULL,NULL,6
PythonScourgeTracks,Missile-A-T,NULL,NULL,6
PythonGaussTracks,RailGun3Mk1,NULL,NULL,6
PythonPulseTracks,Laser2PULSEMk1,NULL,NULL,6
TigerPulseTracks,Laser2PULSEMk1,NULL,NULL,6
TigerHvLaserTracks,HeavyLaser,NULL,NULL,6
WyvernGaussTracks,RailGun3Mk1,NULL,NULL,6
WyvernPulseTracks,Laser2PULSEMk1,NULL,NULL,6
WyvernHvLaserTracks,HeavyLaser,NULL,NULL,6
ViperLtMGHalfTracks,MG1Mk1,NULL,NULL,6
ViperFlameHalfTracks,Flame1Mk1,NULL,NULL,6
PythonMedCanTracks,Cannon2A-TMk1,NULL,NULL,6
PythonTKTracks,Rocket-HvyA-T,NULL,NULL,6
CobraInfernoHover,Flame2,NULL,NULL,6
CobraMedCnHTrks,Cannon2A-TMk1,NULL,NULL,6
PythonHoverInferno,Flame2,NULL,NULL,6
PhytonHoverAssGun,MG4ROTARYMk1,NULL,NULL,6
PhytonHTrackAssGun,MG4ROTARYMk1,NULL,NULL,6
ScorpHTrackHMG,MG1Mk1,NULL,NULL,6
MantisHoverAC,Cannon5VulcanMk1,NULL,NULL,6
LeopardHoverPulseLas,Laser2PULSEMk1,NULL,NULL,6
PantherHoverPulseLas,Laser2PULSEMk1,NULL,NULL,6
TigerHoverPulseLas,Laser2PULSEMk1,NULL,NULL,6
TigerHoverRailGun,RailGun2Mk1,NULL,NULL,6
WyvernScourgeTracks,Missile-A-T,NULL,NULL,6
WyvernPlasmaCTracks,Laser4-PlasmaCannon,NULL,NULL,6
RetreHoverFlashLight,Laser3BEAMMk1,NULL,NULL,6
ViperPODHalfTracks,Rocket-Pod,NULL,NULL,6
ViperMRLHalfTracks,Rocket-MRL,NULL,NULL,6
SK-Mantis-VTOL-PBB,Bomb3-VTOL-LtINC,NULL,NULL,6
SK-Mantis-VTOL-HBB,Bomb2-VTOL-HvHE,NULL,NULL,6
SK-Retre-VTOL-HBB,Bomb2-VTOL-HvHE,NULL,NULL,6
SK-Retal-VTOL-Scourge,Missile-VTOL-AT,NULL,NULL,6
SK-Retre-VTOL-Plasmite,Bomb5-VTOL-Plasmite,NULL,NULL,6
SK-Veng-Hover-Seraph,Missile-MdArt,NULL,NULL,6
Dragon-Hover-SeraphGauss,Missile-MdArt,RailGun3Mk1,NULL,6
ZNULLDESIGN,ZNULLWEAPON,ZNULLWEAPON,ZNULLWEAPON,0

1983
data/mp/stats/templates.ini Normal file

File diff suppressed because it is too large Load Diff

View File

@ -1,275 +0,0 @@
ConstructionDroid,140,Body1REC,ZNULLBRAIN,Spade1Mk1,ZNULLECM,YES,wheeled01,ZNULLREPAIR,DROID,ZNULLSENSOR,0
BarbarianTrike,139,B4body-sml-trike01,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,BaBaProp,ZNULLREPAIR,DROID,ZNULLSENSOR,1
BarbarianBuggy,150,B3body-sml-buggy01,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,BaBaProp,ZNULLREPAIR,DROID,ZNULLSENSOR,1
BaBaPeople,158,B1BaBaPerson01,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,BaBaLegs,ZNULLREPAIR,PERSON,ZNULLSENSOR,1
ViperLtCannonWheels,177,Body1REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,wheeled01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
ViperLtCannonHTracks,178,Body1REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,HalfTrack,ZNULLREPAIR,DROID,ZNULLSENSOR,1
BabaJeep,194,B2JeepBody,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,BaBaProp,ZNULLREPAIR,DROID,ZNULLSENSOR,1
ConstructorDroid,249,Body1REC,ZNULLBRAIN,Spade1Mk1,ZNULLECM,NO,wheeled01,ZNULLREPAIR,DROID,ZNULLSENSOR,0
ViperLtCannonTracks,257,Body1REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
ViperMedCnTrks,263,Body1REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
CobraLtCnTrks,266,Body5REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
CobraMedCnTrks,267,Body5REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
CobraHvyCnTrks,268,Body5REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
PythonLtCnTrks,269,Body11ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
PythonHvyCnTrks,271,Body11ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
ViperFlameWheels,274,Body1REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,wheeled01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
ViperSensorWheels,275,Body1REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,wheeled01,ZNULLREPAIR,DROID,SensorTurret1Mk1,0
BabaRKJeep,276,B2RKJeepBody,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,BaBaProp,ZNULLREPAIR,DROID,ZNULLSENSOR,1
BarbarianRKBuggy,277,B3bodyRKbuggy01,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,BaBaProp,ZNULLREPAIR,DROID,ZNULLSENSOR,1
Transporter,278,TransporterBody,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,YES,V-Tol,ZNULLREPAIR,TRANSPORTER,ZNULLSENSOR,0
BabaBusCan,289,BusBody,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,BaBaProp,ZNULLREPAIR,DROID,ZNULLSENSOR,1
BabaFireCan,290,FireBody,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,BaBaProp,ZNULLREPAIR,DROID,ZNULLSENSOR,1
Cyb-Chain-GROUND,325,CyborgChain1Ground,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,YES,CyborgLegs,ZNULLREPAIR,CYBORG,ZNULLSENSOR,1
CyborgFlamer01Grd,341,CyborgFlamerGrd,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,CyborgLegs,ZNULLREPAIR,CYBORG,ZNULLSENSOR,1
CyborgRkt01Ground,342,CyborgRkt1Ground,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,CyborgLegs,ZNULLREPAIR,CYBORG,ZNULLSENSOR,1
CyborgCannon01Grd,343,CyborgCannonGrd,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,CyborgLegs,ZNULLREPAIR,CYBORG,ZNULLSENSOR,1
CyborgChain01Ground,344,CyborgChain1Ground,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,CyborgLegs,ZNULLREPAIR,CYBORG,ZNULLSENSOR,1
CobraMortarHalfTrack,346,Body5REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,HalfTrack,ZNULLREPAIR,DROID,ZNULLSENSOR,1
CobraHMGHalfTrack,347,Body5REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,HalfTrack,ZNULLREPAIR,DROID,ZNULLSENSOR,1
BabaFireTruck,354,FireBody,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,BaBaProp,ZNULLREPAIR,DROID,ZNULLSENSOR,1
BabaPickUp,355,B2RKJeepBody,ZNULLBRAIN,Spade1Mk1,ZNULLECM,NO,ZNULLPROP,ZNULLREPAIR,DROID,ZNULLSENSOR,0
ZNULLDESIGN,389,ZNULLBODY,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,YES,ZNULLPROP,ZNULLREPAIR,ZNULLDROID,ZNULLSENSOR,0
ASPOTTER,395,Cyb-Hvybod-HPV,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,CyborgLegs,ZNULLREPAIR,CYBORG_SUPER,ZNULLSENSOR,1
Cyb-Flamer-GROUND,446,CyborgFlamerGrd,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,YES,CyborgLegs,ZNULLREPAIR,CYBORG,ZNULLSENSOR,1
Cyb-Cannon-GROUND,447,CyborgCannonGrd,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,YES,CyborgLegs,ZNULLREPAIR,CYBORG,ZNULLSENSOR,1
Cyb-Rocket-GROUND,448,CyborgRkt1Ground,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,YES,CyborgLegs,ZNULLREPAIR,CYBORG,ZNULLSENSOR,1
Cyb-RotMG-GROUND,449,CybRotMgGrd,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,YES,CyborgLegs,ZNULLREPAIR,CYBORG,ZNULLSENSOR,1
BaBaCivilian,451,B1BaBaPerson01,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,BaBaLegs,ZNULLREPAIR,PERSON,ZNULLSENSOR,0
ViperRepairWheels,452,Body1REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,wheeled01,LightRepair1,DROID,ZNULLSENSOR,0
ViperRepairHalftrack,453,Body1REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,HalfTrack,LightRepair1,DROID,ZNULLSENSOR,0
ViperMG01Wheels,454,Body1REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,wheeled01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
ViperMG02Wheels,455,Body1REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,wheeled01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
ViperMG02Halftrack,456,Body1REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,HalfTrack,ZNULLREPAIR,DROID,ZNULLSENSOR,1
ViperHMGHalftrack,457,Body1REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,HalfTrack,ZNULLREPAIR,DROID,ZNULLSENSOR,1
ViperHMGTracks,458,Body1REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
ViperLtA-Twheels,459,Body1REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,wheeled01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
ViperPODWheels,460,Body1REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,wheeled01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
ViperMRLWheels,461,Body1REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,wheeled01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
ViperBBWheels,462,Body1REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,wheeled01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
CobraSpadeTracks,463,Body5REC,ZNULLBRAIN,Spade1Mk1,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,0
CobraSensorHalftrack,464,Body5REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,HalfTrack,ZNULLREPAIR,DROID,SensorTurret1Mk1,0
CobraFlameTracks,466,Body5REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
CobraHvyMortarHalftrack,467,Body5REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,HalfTrack,ZNULLREPAIR,DROID,ZNULLSENSOR,1
CobraComHalftrack,468,Body5REC,CommandBrain01,ZNULLCONSTRUCT,ZNULLECM,NO,HalfTrack,ZNULLREPAIR,DROID,ZNULLSENSOR,1
CobraLtA-Thalftrack,469,Body5REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,HalfTrack,ZNULLREPAIR,DROID,ZNULLSENSOR,1
CobraMRLHalftrack,470,Body5REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,HalfTrack,ZNULLREPAIR,DROID,ZNULLSENSOR,1
PythonComTracks,471,Body11ABT,CommandBrain01,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
PythonMedCnTrks,472,Body11ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
P0PythonHvyCnTrks,481,Body11ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
P0CobraSpadeTracks,482,Body5REC,ZNULLBRAIN,Spade1Mk1,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,0
P0CobraFlameTracks,483,Body5REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
P0CobraMedCnTrks,484,Body5REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
P0CobraLtATRktHtrack,500,Body5REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,HalfTrack,ZNULLREPAIR,DROID,ZNULLSENSOR,1
P0CobraHvyMGHtrack,501,Body5REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,HalfTrack,ZNULLREPAIR,DROID,ZNULLSENSOR,1
P0PythonComTracks,502,Body11ABT,CommandBrain01,ZNULLCONSTRUCT,ZNULLECM,NO,HalfTrack,ZNULLREPAIR,DROID,ZNULLSENSOR,1
P0CobraRepairTrks,504,Body5REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,LightRepair1,DROID,ZNULLSENSOR,0
Cyb-Atmiss-GROUND,506,Cyb-Bod-Atmiss,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,YES,CyborgLegs,ZNULLREPAIR,CYBORG,ZNULLSENSOR,1
Cyb-Laser1-GROUND,508,Cyb-Bod-Las1,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,YES,CyborgLegs,ZNULLREPAIR,CYBORG,ZNULLSENSOR,1
Cyb-Rail1-GROUND,509,Cyb-Bod-Rail1,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,YES,CyborgLegs,ZNULLREPAIR,CYBORG,ZNULLSENSOR,1
P6-L-LTAT-V,510,Body1REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,V-Tol,ZNULLREPAIR,DROID,ZNULLSENSOR,1
P6-L-Bomb1-V,511,Body1REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,V-Tol,ZNULLREPAIR,DROID,ZNULLSENSOR,1
P6-M-QMG1-HT,512,Body5REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,HalfTrack,ZNULLREPAIR,DROID,ZNULLSENSOR,1
CyborgRotMgGround,522,CybRotMgGrd,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,CyborgLegs,ZNULLREPAIR,CYBORG,ZNULLSENSOR,1
Sk-PythonHvCanTrack,523,Body11ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
Sk-CobraBBHover,524,Body5REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,hover01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
MP-Cyb-Laser1-GRD,525,Cyb-Bod-Las1,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,CyborgLegs,ZNULLREPAIR,CYBORG,ZNULLSENSOR,1
MP-Cyb-ATmiss-GRD,526,Cyb-Bod-Atmiss,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,CyborgLegs,ZNULLREPAIR,CYBORG,ZNULLSENSOR,1
SK-Cobra-Hover-HMG,527,Body5REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,hover01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Cobra-Hover-BB,528,Body5REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,hover01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Cobra-Hover-Lancer,529,Body5REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,hover01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Python-Hover-Mcannon,530,Body11ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,hover01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Python-Hover-Hcannon,531,Body11ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,hover01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Python-Hover-Lancer,532,Body11ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,hover01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Python-Track-Hcannon,533,Body11ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Cobra-Track-HVC,534,Body5REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Cobra-Track-TK,535,Body5REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Bug-Hover-HMG,536,Body4ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,hover01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Scorp-Hover-ASGUN,537,Body8MBT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,hover01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Scorp-Hover-Mcannon,538,Body8MBT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,hover01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Scorp-Hover-Bombard,539,Body8MBT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,hover01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Scorp-Hover-Lancer,540,Body8MBT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,hover01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Scorp-Hover-BB,541,Body8MBT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,hover01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Mantis-Hover-Hcannon,542,Body12SUP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,hover01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Mantis-Hover-HVC,543,Body12SUP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,hover01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Leopard-Track-Lancer,544,Body2SUP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Leopard-HTrk-ASGun,545,Body2SUP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,HalfTrack,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Panther-Track-HVC,546,Body6SUPP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Panther-Hover-HVC,547,Body6SUPP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,hover01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Panther-Track-TK,548,Body6SUPP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Panther-Hover-TK,549,Body6SUPP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,hover01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Panther-Htrk-ASGun,550,Body6SUPP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,HalfTrack,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Panther-Htrk-BB,551,Body6SUPP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,HalfTrack,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Tiger-Track-Hcannon,552,Body9REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Tiger-Hover-Hcannon,553,Body9REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,hover01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Tiger-Track-HVC,554,Body9REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Tiger-Hover-HVC,555,Body9REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,hover01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Tiger-Track-TK,556,Body9REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Tiger-Hover-TK,557,Body9REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,hover01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Tiger-Track-ASCannon,558,Body9REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Tiger-Hover-ASCannon,559,Body9REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,hover01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Leopard-Htrk-Needle,561,Body2SUP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,HalfTrack,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Leopard-Hover-Needle,562,Body2SUP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,hover01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Panther-Track-RailGun,564,Body6SUPP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Tiger-Track-Scourge,565,Body9REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Tiger-Hover-Scourge,566,Body9REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,hover01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Tiger-Track-Gauss,567,Body9REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Tiger-Hover-Gauss,568,Body9REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,hover01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Retal-Track-Needle,569,Body3MBT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Retre-Track-PulseLsr,570,Body7ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Retre-Track-FlashLight,571,Body7ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Retre-Htrk-Pepper,572,Body7ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,HalfTrack,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Retre-Track-RailGun,573,Body7ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Retre-Hover-RailGun,574,Body7ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,hover01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Retre-Track-Scourge,575,Body7ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Retre-Hover-Scourge,576,Body7ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,hover01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Veng-Track-Gauss,577,Body10MBT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Veng-Hover-Gauss,578,Body10MBT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,hover01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Veng-Track-PulseLsr,579,Body10MBT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Veng-Hover-PulseLsr,580,Body10MBT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,hover01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Veng-Track-Scourge,581,Body10MBT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Veng-Hover-Scourge,582,Body10MBT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,hover01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Bug-Hover-Sensor,583,Body4ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,hover01,ZNULLREPAIR,DROID,SensorTurret1Mk1,0
SK-Bug-Hover-Repair,584,Body4ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,hover01,LightRepair1,DROID,ZNULLSENSOR,0
SK-Leopard-Hover-Sensor,585,Body2SUP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,hover01,ZNULLREPAIR,DROID,SensorTurret1Mk1,0
SK-Leopard-Hover-Repair,586,Body2SUP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,hover01,LightRepair1,DROID,ZNULLSENSOR,0
SK-Panther-Track-Repair,587,Body6SUPP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,LightRepair1,DROID,ZNULLSENSOR,0
SK-Retal-Hover-Repair,588,Body3MBT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,hover01,LightRepair1,DROID,ZNULLSENSOR,0
SK-Retal-Hover-Sensor,589,Body3MBT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,hover01,ZNULLREPAIR,DROID,SensorTurret1Mk1,0
SK-Bug-VTOL-CLBomb,590,Body4ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,V-Tol,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Bug-VTOL-BB,591,Body4ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,V-Tol,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Scorpion-VTOL-BB,592,Body8MBT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,V-Tol,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Scorpion-VTOL-Hbomb,593,Body8MBT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,V-Tol,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Mantis-VTOL-BB,594,Body12SUP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,V-Tol,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Leopard-VTOL-BB,595,Body2SUP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,V-Tol,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Leopard-VTOL-PhosBomb,596,Body2SUP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,V-Tol,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Panther-VTOL-Thermite,597,Body6SUPP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,V-Tol,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Panther-VTOL-BB,598,Body6SUPP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,V-Tol,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Panther-VTOL-Phosbomb,599,Body6SUPP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,V-Tol,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Panther-VTOL-TK,600,Body6SUPP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,V-Tol,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Retal-VTOL-Phosbomb,601,Body3MBT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,V-Tol,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Retre-VTOL-Thermite,602,Body7ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,V-Tol,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Retre-VTOL-PulseLsr,603,Body7ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,V-Tol,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Retre-VTOL-Scourge,604,Body7ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,V-Tol,ZNULLREPAIR,DROID,ZNULLSENSOR,1
MP-Cyb-Needle-GRD,608,Cyb-Bod-Rail1,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,CyborgLegs,ZNULLREPAIR,CYBORG,ZNULLSENSOR,1
Cyb-Thermite,609,Cyb-Bod-Thermite,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,YES,CyborgLegs,ZNULLREPAIR,CYBORG,ZNULLSENSOR,1
Cyb-Gren,610,Cyb-Bod-Grenade,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,YES,CyborgLegs,ZNULLREPAIR,CYBORG,ZNULLSENSOR,1
Cyb-ComEng,611,Cyb-Bod-ComEng,ZNULLBRAIN,CyborgSpade,ZNULLECM,YES,CyborgLegs,ZNULLREPAIR,CYBORG_CONSTRUCT,ZNULLSENSOR,0
Cyb-Mechanic,612,Cyb-Bod-Mechanic,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,YES,CyborgLegs,CyborgRepair,CYBORG_REPAIR,ZNULLSENSOR,0
Cyb-Hvy-Mcannon,613,Cyb-Hvybod-Mcannon,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,YES,CyborgLegs,ZNULLREPAIR,CYBORG_SUPER,ZNULLSENSOR,1
Cyb-Hvy-Acannon,614,Cyb-Hvybod-Acannon,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,YES,CyborgLegs,ZNULLREPAIR,CYBORG_SUPER,ZNULLSENSOR,1
Cyb-Hvy-PulseLsr,619,Cyb-Hvybod-PulseLsr,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,YES,CyborgLegs,ZNULLREPAIR,CYBORG_SUPER,ZNULLSENSOR,1
Cyb-Hvy-TK,617,Cyb-Hvybod-TK,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,YES,CyborgLegs,ZNULLREPAIR,CYBORG_SUPER,ZNULLSENSOR,1
Cyb-Hvy-HPV,618,Cyb-Hvybod-HPV,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,YES,CyborgLegs,ZNULLREPAIR,CYBORG_SUPER,ZNULLSENSOR,1
Cyb-Hvy-RailGunner,620,Cyb-Hvybod-RailGunner,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,YES,CyborgLegs,ZNULLREPAIR,CYBORG_SUPER,ZNULLSENSOR,1
Cyb-Hvy-A-T,621,Cyb-Hvybod-A-T,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,YES,CyborgLegs,ZNULLREPAIR,CYBORG_SUPER,ZNULLSENSOR,1
SK-Veng-Track-C6TwinAslt,622,Body10MBT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Veng-Track-HvyLaser,623,Body10MBT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
CobraHRepairHover,625,Body5REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,hover01,HeavyRepair,DROID,ZNULLSENSOR,0
ViperHMGWheels,626,Body1REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,wheeled01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
Scourge-Mantis-H,627,Body12SUP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,hover01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
CobraHMGTracks,628,Body5REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
A-Viper-Wheels-MG,629,Body1REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,wheeled01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
A-Viper-Wheels-TMG,630,Body1REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,wheeled01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
A-Viper-Wheels-HMG,631,Body1REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,wheeled01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
A-Cobra-Wheels-HMG,632,Body5REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,wheeled01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
A-Cobra-Hover-HMG,633,Body5REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,hover01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
A-Cobra-Hover-MC,634,Body5REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,hover01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
A-Scorp-Hover-MC,635,Body8MBT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,hover01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
A-Python-Hover-MC,636,Body11ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,hover01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
A-Python-Hover-HC,637,Body11ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,hover01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
A-Python-Trk-HC,638,Body11ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
A-Tiger-Trk-HC,639,Body9REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
A-Tiger-Trk-Needle,640,Body9REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
A-Retrib-Trk-Needle,641,Body7ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
A-Veng-Trk-Needle,642,Body10MBT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
A-Veng-Trk-Rail,643,Body10MBT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
A-Veng-Trk-Guass,644,Body10MBT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
A-Veng-Trk-Scourge,645,Body10MBT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
A-Mantis-Trk-Pulse,646,Body12SUP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
A-Mantis-Trk-Rail,647,Body12SUP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
V-Bug-ClusterBomb,648,Body4ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,V-Tol,ZNULLREPAIR,DROID,ZNULLSENSOR,1
V-Bug-BB,649,Body4ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,V-Tol,ZNULLREPAIR,DROID,ZNULLSENSOR,1
V-Bug-Lancer,650,Body4ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,V-Tol,ZNULLREPAIR,DROID,ZNULLSENSOR,1
V-Bug-HPV,651,Body4ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,V-Tol,ZNULLREPAIR,DROID,ZNULLSENSOR,1
V-Scor-ClusterBomb,652,Body8MBT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,V-Tol,ZNULLREPAIR,DROID,ZNULLSENSOR,1
V-Scor-BB,653,Body8MBT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,V-Tol,ZNULLREPAIR,DROID,ZNULLSENSOR,1
V-Scor-Lancer,654,Body8MBT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,V-Tol,ZNULLREPAIR,DROID,ZNULLSENSOR,1
V-Scor-HPV,655,Body8MBT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,V-Tol,ZNULLREPAIR,DROID,ZNULLSENSOR,1
A-Python-Trk-Lancer,656,Body11ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
A-Mantis-Trk-Lancer,657,Body12SUP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
A-Veng-Trk-TK,658,Body10MBT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
V-Mantis-Lancer,659,Body12SUP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,V-Tol,ZNULLREPAIR,DROID,ZNULLSENSOR,1
V-Mantis-HPV,660,Body12SUP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,V-Tol,ZNULLREPAIR,DROID,ZNULLSENSOR,1
A-Rep-Cobra-Trk,661,Body5REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,LightRepair1,DROID,ZNULLSENSOR,0
A-Rep-Mantis-Trk,662,Body12SUP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,HeavyRepair,DROID,ZNULLSENSOR,0
A-Viper-Trk-MG,663,Body1REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
A-Viper-Trk-TMG,664,Body1REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
A-Viper-Trk-HMG,665,Body1REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
A-Cobra-Trk-HMG,666,Body5REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
A-Scorp-Trk-MC,667,Body8MBT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
TK-Mantis-H,684,Body12SUP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,hover01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
Cobra-Hover-HC,685,Body5REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,hover01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
H-Scorp-Trk-Lancer,687,Body8MBT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
H-Scorp-Trk-HC,688,Body8MBT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
H-Scorp-VTOL-Lancer,689,Body8MBT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,V-Tol,ZNULLREPAIR,DROID,ZNULLSENSOR,1
H-Scorp-VTOL-BB,689,Body8MBT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,V-Tol,ZNULLREPAIR,DROID,ZNULLSENSOR,1
Viper-Trk-Com,690,Body1REC,CommandBrain01,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
Cobra-Trk-Com,691,Body5REC,CommandBrain01,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
Scorp-Trk-Com,692,Body8MBT,CommandBrain01,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
CobraTrkLancer,693,Body5REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
MantisTrkHC,694,Body12SUP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
MantisTKTracks,695,Body12SUP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
ScorpTrkHMG,696,Body8MBT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
ScorpRepairTrk,697,Body8MBT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,LightRepair1,DROID,ZNULLSENSOR,0
ScorpHRepairHover,698,Body8MBT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,hover01,HeavyRepair,DROID,ZNULLSENSOR,0
CobraHoverTruck,699,Body5REC,ZNULLBRAIN,Spade1Mk1,ZNULLECM,NO,hover01,ZNULLREPAIR,DROID,ZNULLSENSOR,0
ScorpHoverTruck,700,Body8MBT,ZNULLBRAIN,Spade1Mk1,ZNULLECM,NO,hover01,ZNULLREPAIR,DROID,ZNULLSENSOR,0
MantisHoverTruck,701,Body12SUP,ZNULLBRAIN,Spade1Mk1,ZNULLECM,NO,hover01,ZNULLREPAIR,DROID,ZNULLSENSOR,0
CobraBBTracks,702,Body5REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
ScorpBBTracks,703,Body8MBT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
MantisBBTracks,704,Body12SUP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
Mantis-Trk-Com,705,Body12SUP,CommandBrain01,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
MantisScourgeTracks,706,Body12SUP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
ViperTrkLancer,707,Body1REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
CobraPODHTracks,708,Body5REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,HalfTrack,ZNULLREPAIR,DROID,ZNULLSENSOR,1
CobraPODTracks,709,Body5REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
CobraMRLTracks,710,Body5REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
CobraInfernoHTracks,711,Body5REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,HalfTrack,ZNULLREPAIR,DROID,ZNULLSENSOR,1
PythonHoverHVC,712,Body11ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,hover01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
PythonScourgeTracks,713,Body11ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
PythonGaussTracks,714,Body11ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
PythonPulseTracks,715,Body11ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
TigerPulseTracks,717,Body9REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
TigerHvLaserTracks,718,Body9REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
WyvernGaussTracks,719,Body13SUP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
WyvernPulseTracks,720,Body13SUP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
WyvernHvLaserTracks,721,Body13SUP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
ViperLtMGHalfTracks,722,Body1REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,HalfTrack,ZNULLREPAIR,DROID,ZNULLSENSOR,1
ViperFlameHalfTracks,723,Body1REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,HalfTrack,ZNULLREPAIR,DROID,ZNULLSENSOR,1
PythonMedCanTracks,724,Body11ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
PythonTKTracks,725,Body11ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
CobraInfernoHover,726,Body5REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,hover01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
CobraMedCnHTrks,727,Body5REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,HalfTrack,ZNULLREPAIR,DROID,ZNULLSENSOR,1
PythonHoverInferno,728,Body11ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,hover01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
PhytonHoverAssGun,729,Body11ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,hover01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
PhytonHTrackAssGun,730,Body11ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,HalfTrack,ZNULLREPAIR,DROID,ZNULLSENSOR,1
ScorpHTrackHMG,731,Body8MBT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,HalfTrack,ZNULLREPAIR,DROID,ZNULLSENSOR,1
MantisHoverAC,732,Body12SUP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,hover01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
LeopardHoverPulseLas,733,Body2SUP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,hover01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
PantherHoverPulseLas,734,Body6SUPP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,hover01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
TigerHoverPulseLas,735,Body9REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,hover01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
TigerHoverRailGun,736,Body9REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,hover01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
WyvernPlasmaCTracks,737,Body13SUP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
WyvernScourgeTracks,738,Body13SUP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
RetreHoverFlashLight,739,Body13SUP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,tracked01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
ViperPODHalfTracks,740,Body1REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,HalfTrack,ZNULLREPAIR,DROID,ZNULLSENSOR,1
ViperMRLHalfTracks,741,Body1REC,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,HalfTrack,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Mantis-VTOL-PBB,742,Body12SUP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,V-Tol,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Mantis-VTOL-HBB,743,Body12SUP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,V-Tol,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Retre-VTOL-HBB,744,Body7ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,V-Tol,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Retal-VTOL-Scourge,745,Body3MBT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,V-Tol,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SK-Retre-VTOL-Plasmite,746,Body7ABT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,V-Tol,ZNULLREPAIR,DROID,ZNULLSENSOR,1
SuperTransport,764,SuperTransportBody,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,YES,V-Tol,ZNULLREPAIR,SUPERTRANSPORTER,ZNULLSENSOR,0
SK-Veng-Hover-Seraph,747,Body10MBT,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,hover01,ZNULLREPAIR,DROID,ZNULLSENSOR,1
Dragon-Hover-SeraphGauss,748,Body14SUP,ZNULLBRAIN,ZNULLCONSTRUCT,ZNULLECM,NO,hover01,ZNULLREPAIR,DROID,ZNULLSENSOR,2

View File

@ -20,8 +20,7 @@ file STERRTABLE "terraintable.ini"
file SBPIMD "bodypropulsionimd.ini"
file SWEAPSND "weaponsounds.ini"
file SWEAPMOD "weaponmodifier.ini"
file STEMPL "templates.txt"
file STEMPWEAP "assignweapons.txt"
file STEMPL "templates.ini"
file SSTRUCT "structure.ini"
file SSTRMOD "structuremodifier.ini"
file SFEAT "features.txt"

View File

@ -333,11 +333,9 @@ static bool bufferSWEAPMODLoad(const char *fileName, void **ppData)
/* Load the Template stats */
static bool bufferSTEMPLLoad(const char *pBuffer, UDWORD size, void **ppData)
static bool bufferSTEMPLLoad(const char *fileName, void **ppData)
{
calcDataHash((uint8_t *)pBuffer, size, DATA_STEMP);
if (!loadDroidTemplates(pBuffer, size))
if (!loadDroidTemplates(fileName))
{
return false;
}
@ -354,21 +352,6 @@ static void dataSTEMPLRelease(WZ_DECL_UNUSED void *pData)
droidTemplateShutDown();
}
/* Load the Template weapons stats */
static bool bufferSTEMPWEAPLoad(const char *pBuffer, UDWORD size, void **ppData)
{
calcDataHash((uint8_t *)pBuffer, size, DATA_STEMPWEAP);
if (!loadDroidWeapons(pBuffer, size))
{
return false;
}
//not interested in this value
*ppData = NULL;
return true;
}
/* Load the Structure stats */
static bool bufferSSTRUCTLoad(const char *fileName, void **ppData)
{
@ -888,8 +871,6 @@ struct RES_TYPE_MIN_BUF
static const RES_TYPE_MIN_BUF BufferResourceTypes[] =
{
{"STEMPL", bufferSTEMPLLoad, dataSTEMPLRelease}, //template and associated files
{"STEMPWEAP", bufferSTEMPWEAPLoad, NULL},
{"SFEAT", bufferSFEATLoad, dataSFEATRelease}, //feature stats file
{"SMSG", bufferSMSGLoad, dataSMSGRelease},
{"IMD", dataIMDBufferLoad, (RES_FREE)iV_IMDRelease},
@ -904,6 +885,7 @@ struct RES_TYPE_MIN_FILE
static const RES_TYPE_MIN_FILE FileResourceTypes[] =
{
{"STEMPL", bufferSTEMPLLoad, dataSTEMPLRelease}, //template and associated files
{"WAV", dataAudioLoad, (RES_FREE)sound_ReleaseTrack},
{"SWEAPON", bufferSWEAPONLoad, dataReleaseStats},
{"SBPIMD", bufferSBPIMDLoad, dataReleaseStats},

View File

@ -40,7 +40,6 @@ enum {
DATA_STERRT,
DATA_SWEAPMOD,
DATA_STEMP,
DATA_STEMPWEAP,
DATA_SSTRUCT,
DATA_SSTRWEAP,
DATA_STRFUNC,

View File

@ -236,7 +236,7 @@ char StringBuffer[STRING_BUFFER_SIZE];
extern W_SCREEN *psWScreen;
/* default droid design template */
DROID_TEMPLATE sDefaultDesignTemplate;
static DROID_TEMPLATE sDefaultDesignTemplate;
static void desSetupDesignTemplates();
static void setDesignPauseState();
@ -399,6 +399,7 @@ static bool _intAddDesign(bool bShowCentreScreen)
haveCurrentDesign = false;
/* Initialise the current design */
sDefaultDesignTemplate.droidType = DROID_ANY;
sCurrDesign = sDefaultDesignTemplate;
sCurrDesign.pName = NULL;
sCurrDesign.stored = false;
@ -2911,6 +2912,8 @@ bool intValidTemplate(DROID_TEMPLATE *psTempl, const char *newName, bool complai
//set the droidtype
psTempl->droidType = droidTemplateType(psTempl);
psTempl->enabled = true;
/* copy name into template */
sstrcpy(psTempl->aName, newName);
@ -3007,7 +3010,8 @@ void intProcessDesign(UDWORD id)
{
desCreateDefaultTemplate();
sstrcpy(aCurrName, _("New Vehicle"));
aCurrName[0] = '\0';
sCurrDesign.aName[0] = '\0';
sstrcpy(sCurrDesign.aName, aCurrName);
/* reveal body button */
@ -3469,6 +3473,7 @@ void intProcessDesign(UDWORD id)
/* update name if not customised */
if (bTemplateNameCustomised == false)
{
debug(LOG_ERROR, "12!");
sstrcpy(sCurrDesign.aName, GetDefaultTemplateName(&sCurrDesign));
}
@ -3517,6 +3522,7 @@ void intProcessDesign(UDWORD id)
case IDDES_NAMEBOX:
sstrcpy(sCurrDesign.aName, widgGetString(psWScreen, IDDES_NAMEBOX));
sstrcpy(aCurrName, sCurrDesign.aName);
debug(LOG_ERROR, "name SET to %s", sCurrDesign.aName);
break;
case IDDES_BIN:
{

View File

@ -93,9 +93,6 @@ UWORD aDroidExperience[MAX_PLAYERS][MAX_RECYCLED_DROIDS];
UDWORD selectedGroup = UBYTE_MAX;
UDWORD selectedCommander = UBYTE_MAX;
/* default droid design template */
extern DROID_TEMPLATE sDefaultDesignTemplate;
/** Height the transporter hovers at above the terrain. */
#define TRANSPORTER_HOVER_HEIGHT 10
@ -1482,70 +1479,6 @@ DROID_TYPE droidTemplateType(DROID_TEMPLATE *psTemplate)
return type;
}
//Load the weapons assigned to Droids in the Access database
bool loadDroidWeapons(const char *pWeaponData, UDWORD bufferSize)
{
TableView table(pWeaponData, bufferSize);
for (unsigned i = 0; i < table.size(); ++i)
{
LineView line(table, i);
std::string templateName = line.s(0);
for (int player = 0; player < MAX_PLAYERS ; ++player)
{
DROID_TEMPLATE *pTemplate = getTemplateFromUniqueName(templateName.c_str(), player);
int storeCount = 0;
/* if Template not found - try default design */
if (!pTemplate)
{
if (templateName == sDefaultDesignTemplate.pName)
{
pTemplate = &sDefaultDesignTemplate;
}
else
{
continue; // ok, this player did not have this template. that's fine.
}
}
ASSERT_OR_RETURN(false, pTemplate->numWeaps <= DROID_MAXWEAPS, "stack corruption unavoidable");
for (unsigned j = 0; j < pTemplate->numWeaps; j++)
{
int incWpn = getCompFromName(COMP_WEAPON, line.s(1 + j).c_str());
ASSERT_OR_RETURN(false, incWpn != -1, "Unable to find Weapon %s for template %s", line.s(1 + j).c_str(), templateName.c_str());
//Weapon found, alloc this to the current Template
pTemplate->asWeaps[storeCount] = incWpn;
//check valid weapon/propulsion
ASSERT_OR_RETURN(false, storeCount <= pTemplate->numWeaps, "Allocating more weapons than allowed for Template %s", templateName.c_str());
ASSERT_OR_RETURN(false, checkValidWeaponForProp(pTemplate), "Weapon is invalid for air propulsion for template %s", templateName.c_str());
if (player == selectedPlayer) // FIXME: can you say hack? Why don't we make a list on demmand ? This *will* break on player change!
{
DROID_TEMPLATE *pUITemplate = NULL;
for (std::list<DROID_TEMPLATE>::iterator j = localTemplates.begin(); j != localTemplates.end(); ++j)
{
if (j->pName == templateName)
{
pUITemplate = &*j;
// update UI template as well (it already passed the checks above)
pUITemplate->asWeaps[storeCount] = incWpn;
break;
}
}
}
storeCount++;
}
}
}
return true;
}
/* Calculate the weight of a droid from it's template */
UDWORD calcDroidWeight(DROID_TEMPLATE *psTemplate)
{

View File

@ -66,8 +66,6 @@ extern bool droidInit(void);
bool removeDroidBase(DROID *psDel);
extern bool loadDroidWeapons(const char *pWeaponData, UDWORD bufferSize);
struct INITIAL_DROID_ORDERS
{
uint32_t secondaryOrder;

View File

@ -59,7 +59,6 @@ typedef std::vector<DROID_ORDER_DATA> OrderList;
struct DROID_TEMPLATE : public BASE_STATS
{
DROID_TEMPLATE();
DROID_TEMPLATE(LineView line);
/// this contains the full editable UTF-8 encoded name of the template
char aName[MAX_STR_LENGTH];

View File

@ -40,27 +40,11 @@
#include "projectile.h"
#include "main.h"
/* default droid design template */
extern DROID_TEMPLATE sDefaultDesignTemplate;
extern bool bInTutorial;
// Template storage
DROID_TEMPLATE *apsDroidTemplates[MAX_PLAYERS];
bool allowDesign = true;
static const StringToEnum<DROID_TYPE> map_DROID_TYPE[] =
{
{"PERSON", DROID_PERSON },
{"CYBORG", DROID_CYBORG },
{"CYBORG_SUPER", DROID_CYBORG_SUPER },
{"CYBORG_CONSTRUCT", DROID_CYBORG_CONSTRUCT },
{"CYBORG_REPAIR", DROID_CYBORG_REPAIR },
{"TRANSPORTER", DROID_TRANSPORTER },
{"SUPERTRANSPORTER", DROID_SUPERTRANSPORTER },
{"ZNULLDROID", DROID_ANY },
{"DROID", DROID_DEFAULT },
};
static bool researchedItem(DROID_TEMPLATE *psCurr, int player, COMPONENT_TYPE partIndex, int part, bool allowZero, bool allowRedundant)
{
if (allowZero && part <= 0)
@ -264,7 +248,7 @@ bool shutdownTemplates()
}
DROID_TEMPLATE::DROID_TEMPLATE() // This constructor replaces a memset in scrAssembleWeaponTemplate(), not needed elsewhere.
: BASE_STATS()
: BASE_STATS(REF_TEMPLATE_START)
//, aName
//, asParts
, numWeaps(0)
@ -281,131 +265,87 @@ DROID_TEMPLATE::DROID_TEMPLATE() // This constructor replaces a memset in scrAs
std::fill_n(asWeaps, DROID_MAXWEAPS, 0);
}
DROID_TEMPLATE::DROID_TEMPLATE(LineView line)
: BASE_STATS(REF_TEMPLATE_START + line.line())
//, aName
//, asParts
, numWeaps(line.i(11, 0, DROID_MAXWEAPS))
//, asWeaps
, droidType(line.e(9, map_DROID_TYPE))
, multiPlayerID(line.u32(1))
, psNext(NULL)
, prefab(false)
, stored(false)
, enabled(true)
// Ignored columns: 6 - but used later to decide whether the template is for human players.
{
std::string name = line.s(0);
sstrcpy(aName, name.c_str());
asParts[COMP_BODY] = line.stats( 2, asBodyStats, numBodyStats) - asBodyStats;
asParts[COMP_BRAIN] = line.stats( 3, asBrainStats, numBrainStats) - asBrainStats;
asParts[COMP_CONSTRUCT] = line.stats( 4, asConstructStats, numConstructStats) - asConstructStats;
asParts[COMP_ECM] = line.stats( 5, asECMStats, numECMStats) - asECMStats;
asParts[COMP_PROPULSION] = line.stats( 7, asPropulsionStats, numPropulsionStats) - asPropulsionStats;
asParts[COMP_REPAIRUNIT] = line.stats( 8, asRepairStats, numRepairStats) - asRepairStats;
asParts[COMP_SENSOR] = line.stats(10, asSensorStats, numSensorStats) - asSensorStats;
std::fill_n(asWeaps, DROID_MAXWEAPS, 0);
}
/* load the Droid stats for the components from the Access database */
bool loadDroidTemplates(const char *pDroidData, UDWORD bufferSize)
bool loadDroidTemplates(const char *filename)
{
bool bDefaultTemplateFound = false;
TableView table(pDroidData, bufferSize);
for (unsigned i = 0; i < table.size(); ++i)
WzConfig ini(filename, WzConfig::ReadOnlyAndRequired);
QStringList list = ini.childGroups();
for (int i = 0; i < list.size(); ++i)
{
LineView line(table, i);
DROID_TEMPLATE design(line);
if (table.isError())
ini.beginGroup(list[i]);
DROID_TEMPLATE design;
QString droidType = ini.value("type").toString();
design.pName = strdup(list[i].toUtf8().constData());
if (droidType == "PERSON") design.droidType = DROID_PERSON;
else if (droidType == "CYBORG") design.droidType = DROID_CYBORG;
else if (droidType == "CYBORG_SUPER") design.droidType = DROID_CYBORG_SUPER;
else if (droidType == "CYBORG_CONSTRUCT") design.droidType = DROID_CYBORG_CONSTRUCT;
else if (droidType == "CYBORG_REPAIR") design.droidType = DROID_CYBORG_REPAIR;
else if (droidType == "TRANSPORTER") design.droidType = DROID_TRANSPORTER;
else if (droidType == "SUPERTRANSPORTER") design.droidType = DROID_SUPERTRANSPORTER;
else if (droidType == "DROID") design.droidType = DROID_DEFAULT;
else ASSERT(false, "No such droid type \"%s\" for %s", droidType.toUtf8().constData(), design.pName);
design.multiPlayerID = generateNewObjectId();
design.asParts[COMP_BODY] = getCompFromName(COMP_BODY, ini.value("compBody", "ZNULLBODY").toString().toUtf8().constData());
design.asParts[COMP_BRAIN] = getCompFromName(COMP_BRAIN, ini.value("compBrain", "ZNULLBRAIN").toString().toUtf8().constData());
design.asParts[COMP_REPAIRUNIT] = getCompFromName(COMP_REPAIRUNIT, ini.value("compRepair", "ZNULLREPAIR").toString().toUtf8().constData());
design.asParts[COMP_CONSTRUCT] = getCompFromName(COMP_CONSTRUCT, ini.value("compConstruct", "ZNULLCONSTRUCT").toString().toUtf8().constData());
design.asParts[COMP_ECM] = getCompFromName(COMP_ECM, ini.value("compECM", "ZNULLECM").toString().toUtf8().constData());
design.asParts[COMP_SENSOR] = getCompFromName(COMP_SENSOR, ini.value("compSensor", "ZNULLSENSOR").toString().toUtf8().constData());
design.asParts[COMP_PROPULSION] = getCompFromName(COMP_PROPULSION, ini.value("compPropulsion", "ZNULLPROP").toString().toUtf8().constData());
QStringList weapons = ini.value("weapons").toStringList();
for (int j = 0; j < weapons.size(); j++)
{
debug(LOG_ERROR, "%s", table.getError().toUtf8().constData());
return false;
design.asWeaps[j] = getCompFromName(COMP_WEAPON, weapons[j].toUtf8().constData());
}
std::string const pNameCache = design.aName;
design.pName = const_cast<char *>(pNameCache.c_str());
if (getTemplateFromUniqueName(design.pName, 0))
{
debug(LOG_ERROR, "Duplicate template %s", design.pName);
continue;
}
// Store translated name in aName
char const *droidResourceName = getDroidResourceName(design.aName);
design.numWeaps = weapons.size();
design.prefab = true;
design.stored = false;
design.enabled = true;
bool available = ini.value("available", false).toBool();
char const *droidResourceName = getDroidResourceName(list[i].toUtf8().constData());
sstrcpy(design.aName, droidResourceName != NULL? droidResourceName : GetDefaultTemplateName(&design));
ini.endGroup();
// Store global default design if found else store in the appropriate array
if (design.droidType == DROID_ANY)
for (int i = 0; i < MAX_PLAYERS; ++i)
{
design.droidType = DROID_DEFAULT;
// NOTE: sDefaultDesignTemplate.pName takes ownership
// of the memory allocated to pDroidDesign->pName
// here. Which is good because pDroidDesign leaves
// scope here anyway.
sDefaultDesignTemplate = design;
sDefaultDesignTemplate.pName = strdup(design.pName);
bDefaultTemplateFound = true;
}
else
{
std::string playerType = line.s(6);
for (int i = 0; i < MAX_PLAYERS; ++i)
// Give those meant for humans to all human players.
if (NetPlay.players[i].allocated && available)
{
// Give those meant for humans to all human players.
// Also support the old template format, in which those meant
// for humans were player 0 (in campaign) or 5 (in multiplayer), ("YES" is used in MP stats)
if (NetPlay.players[i].allocated &&
((!bMultiPlayer && playerType == "0") || (bMultiPlayer && playerType == "5") || playerType == "YES"))
{
debug(LOG_NEVER, "HUMAN (%d): %s id:%d enabled:%d", i, design.aName, design.multiPlayerID, design.enabled);
design.prefab = false;
addTemplateToList(&design, &apsDroidTemplates[i]);
design.prefab = false;
addTemplateToList(&design, &apsDroidTemplates[i]);
// This sets up the UI templates for display purposes ONLY--we still only use apsDroidTemplates for making them.
// FIXME: Why are we doing this here, and not on demmand ?
// Only add unique designs to the UI list (Note, perhaps better to use std::map instead?)
std::list<DROID_TEMPLATE>::iterator it;
for (it = localTemplates.begin(); it != localTemplates.end(); ++it)
// This sets up the UI templates for display purposes ONLY--we still only use apsDroidTemplates for making them.
// FIXME: Why are we doing this here, and not on demand ?
// Only add unique designs to the UI list (Note, perhaps better to use std::map instead?)
std::list<DROID_TEMPLATE>::iterator it;
for (it = localTemplates.begin(); it != localTemplates.end(); ++it)
{
DROID_TEMPLATE *psCurr = &*it;
if (psCurr->multiPlayerID == design.multiPlayerID)
{
DROID_TEMPLATE *psCurr = &*it;
if (psCurr->multiPlayerID == design.multiPlayerID)
{
debug(LOG_NEVER, "Design id:%d (%s) *NOT* added to UI list (duplicate), player= %d", design.multiPlayerID, design.aName, i);
break;
}
}
if (it == localTemplates.end())
{
debug(LOG_NEVER, "Design id:%d (%s) added to UI list, player =%d", design.multiPlayerID, design.aName, i);
localTemplates.push_front(design);
localTemplates.front().pName = strdup(localTemplates.front().pName);
debug(LOG_ERROR, "Design id:%d (%s) *NOT* added to UI list (duplicate), player= %d", design.multiPlayerID, design.aName, i);
break;
}
}
else if (NetPlay.players[i].allocated) //skip the ones not meant for puny humans
if (it == localTemplates.end())
{
continue;
}
else // assume everything else is for AI
{
debug(LOG_NEVER, "AI (%d): %s id:%d enabled:%d", i, design.aName, design.multiPlayerID, design.enabled);
design.prefab = true; // prefabricated templates referenced from VLOs
addTemplateToList(&design, &apsDroidTemplates[i]);
debug(LOG_NEVER, "Design id:%d (%s) added to UI list, player =%d", design.multiPlayerID, design.aName, i);
localTemplates.push_front(design);
localTemplates.front().pName = strdup(localTemplates.front().pName);
}
}
else if (!NetPlay.players[i].allocated) // AI template
{
debug(LOG_NEVER, "AI (%d): %s id:%d enabled:%d", i, design.aName, design.multiPlayerID, design.enabled);
design.prefab = true; // prefabricated templates referenced from VLOs
addTemplateToList(&design, &apsDroidTemplates[i]);
}
}
debug(LOG_NEVER, "(default) Droid template found, aName: %s, MP ID: %d, ref: %u, pname: %s, prefab: %s, type:%d (loading)",
design.aName, design.multiPlayerID, design.ref, design.pName, design.prefab ? "yes":"no", design.droidType);
debug(LOG_NEVER, "Droid template found, aName: %s, MP ID: %d, ref: %u, pname: %s, prefab: %s, type:%d (loading)",
design.aName, design.multiPlayerID, design.ref, design.pName, design.prefab ? "yes":"no", design.droidType);
}
ASSERT_OR_RETURN(false, bDefaultTemplateFound, "Default template not found");
return true;
}
@ -420,18 +360,12 @@ bool droidTemplateShutDown(void)
for (pTemplate = apsDroidTemplates[player]; pTemplate != NULL; pTemplate = pNext)
{
pNext = pTemplate->psNext;
if (pTemplate->pName != sDefaultDesignTemplate.pName) // sanity check probably no longer necessary
{
free(pTemplate->pName);
}
free(pTemplate->pName);
delete pTemplate;
}
apsDroidTemplates[player] = NULL;
}
free(sDefaultDesignTemplate.pName);
sDefaultDesignTemplate.pName = NULL;
for (std::list<DROID_TEMPLATE>::iterator i = localTemplates.begin(); i != localTemplates.end(); ++i)
{
free(i->pName);
@ -441,29 +375,6 @@ bool droidTemplateShutDown(void)
return true;
}
/*!
* Gets a template from its name
* relies on the name being unique (or it will return the first one it finds!)
* \param pName Template name
* \param player Player number
* \pre pName has to be the unique, untranslated name!
* \pre player \< MAX_PLAYERS
*/
DROID_TEMPLATE * getTemplateFromUniqueName(const char *pName, unsigned int player)
{
DROID_TEMPLATE *list = apsDroidTemplates[player];
for (DROID_TEMPLATE *psCurr = list; psCurr != NULL; psCurr = psCurr->psNext)
{
if (strcmp(psCurr->pName, pName) == 0)
{
return psCurr;
}
}
return NULL;
}
/*!
* Get a static template from its name. This is used from scripts. These templates must
* never be changed or deleted.

View File

@ -12,7 +12,7 @@ bool initTemplates();
bool shutdownTemplates();
bool storeTemplates();
bool loadDroidTemplates(const char *pDroidData, UDWORD bufferSize);
bool loadDroidTemplates(const char *filename);
/// return whether a template is for an IDF droid
bool templateIsIDF(DROID_TEMPLATE *psTemplate);
@ -20,8 +20,6 @@ bool templateIsIDF(DROID_TEMPLATE *psTemplate);
/// Fills the list with Templates that can be manufactured in the Factory - based on size
void fillTemplateList(std::vector<DROID_TEMPLATE *> &pList, STRUCTURE *psFactory);
/* gets a template from its name - relies on the name being unique */
DROID_TEMPLATE *getTemplateFromUniqueName(const char *pName, unsigned int player);
/* gets a template from its name - relies on the name being unique */
DROID_TEMPLATE *getTemplateFromTranslatedNameNoPlayer(char const *pName);
/*getTemplateFromMultiPlayerID gets template for unique ID searching all lists */