...
Property | Notes |
---|---|
born | Will use first sighting time. |
droidType | Super-cyborgs need to appear as DROID_CYBORG, not DROID_WEAPON. Might be able to work out some info from health/armour/thermal properties. Also name, particularly with cyborgs. What to do with scav units? When NB wants to build droids, will need to try and work this out based on components - primarily turret1 and propulsion, but sometimes body (eg. for either cyborgs or transports). |
group | Even if droid not in a group, the group property should exist (with value null) – easy to do. |
armed | Deprecated in 3.2, but can use this field in 3.1 to determine if droid is VTOL, and also give rough estimate of armed state in .weapons[] |
isVTOL | If .armed != null, then its a VTOL, can also use isVTOL() if the droid is not dead. |
cost | Burr. *run for the trees* |
isRadarDetector | Possibly, based on droid name. |
isCB | Possibly, based on droid name. |
isSensor | Possibly, based on droid name or DORDER_OBSERVE. |
rangeBurr. *run for the trees* Maybe use a default range? | Start with min range, then improve accuracy during attacks (dist between attacker and victim). |
canHitAir | Possibly, if it attacks one of our VTOLs, or by droid name. |
canHitGround | Possibly, if it attacks one of our ground/hover units or structures, or by droid name. |
hasIndirect | Ditto. Also by spotting DORDER_FIRESUPPORT. |
body | Might be able to work out some info from health/armour/thermal properties and also droid name. |
propulsion | VTOL should be trivial to determine (.armed property, isVTOL() or transporter). Hover much more difficult – will need to identify a water tile then do droidCanReach() to see if droid is a hovercraft. Alternatively, by droid name. Land propulsions very difficult to determine – maybe by name, other than that it's guesswork. |
cargoSize | Suggest this property is skipped - transports painful to work with pre-3.2 |
cargoCapacity | Suggest this property is skipped - transports painful to work with pre-3.2 |
cargoSpace | Suggest this property is skipped - transports painful to work with pre-3.2 |
cargoCount | Suggest this property is skipped - transports painful to work with pre-3.2 |
bodySize | Might be able to work this out if we know .body. Alternatively .health, .thermal and .armour might give clues. |
weapons | Only way I can think of is to look at droid name and try and determine weapon id (only one turret can be identified this way). The .lastFired property will be a static value, but maybe update if the droid attacks us. The .armed will be fed through from the main .armed property. |