Attack: "Bolter" type "Weapon/Ranged"
Bonuses: +3 against "Armour/None"; +1 against "Armour/Light"; +0 against "Armour/Medium"; -1 against "Armour/Heavy"; -3 against "Armour/Assault"
In these cases, Armour/XXX are all categories of Armour - but what is armour to be 'classed' as? A defense bonus? The same system also needs to be handle the fact that although we might have an object based on "Armour/Light" but it's also granting the unit invulnerability to all movement impairment effects and grants a +strength bonus (to increase melee attack power). Likewise, "Bolter" although "Weapon/Ranged", we might want to make it explode on impact (perhaps triggering a +fire damage bonus), or maybe designed to entirely circumvent a certain named armour bonus or effect, or cause a crapload of damage to a specific unit class (eg: Robot killer!)
I'm really having difficulty actually explaining what I mean/want - perhaps that's half the problem. It's all potentially 'standard' RPG and/or wargame stuff (yeah I've looked at the C# Workshop stuff too).
Does anyone get what I'm babbling at? If so, any ideas of a basic design or terminology I should look for?