@Grey Roger saw a Navy Soldier equipped with a spade.
It appears this check in LAi_equip is not functioning:
All such inappropriate "weapons" are marked in init_items as PIRATE, to block them, but it appears they are allowed anyway.
As far as I can tell, this doesn't assign soldier weapons, it just blocks them from other nations defined soldier weapons, which seems a very good thing.
None of this has changed recently, so I suspect the check was not working previously, but the effects of its failure were hidden by soldier high levels blocking them out from such weapons anyway. Now, there is a (rare, but not zero) chance they will roll misses all the way down to these weapons, so it becomes a rare and inappropriate possibility.
The other negative effect is that if the check is not working, the blades of the other nationalities become open to distribution (ie, dutch soldiers with english officer swords). That one would have come up before, but maybe it was hidden when soldiers were operating under the soldier weapon system.
Can anyone see where the problem arises? I've looked at it and am quite unsure. The full code is in LAi_equip
It appears this check in LAi_equip is not functioning:
Code:
isNotPirate = isSoldier(chr);
//if(ModelIsType(chr.model, "Land_Officers")) trace("soldier model");
if(CheckAttribute(bladeItm, "nation") && isNotPirate > 0)
{
if(bladeItm.nation!="") // if weapon has a nation limit and the chr is a soldier
{
if(sti(bladeItm.nation)==isNotPirate) isValidWeapon = true; // weapon's nation must match chars nation
}
else
{
isValidWeapon = true;
}
}
else
{
isValidWeapon = true;
}
All such inappropriate "weapons" are marked in init_items as PIRATE, to block them, but it appears they are allowed anyway.
As far as I can tell, this doesn't assign soldier weapons, it just blocks them from other nations defined soldier weapons, which seems a very good thing.
None of this has changed recently, so I suspect the check was not working previously, but the effects of its failure were hidden by soldier high levels blocking them out from such weapons anyway. Now, there is a (rare, but not zero) chance they will roll misses all the way down to these weapons, so it becomes a rare and inappropriate possibility.
The other negative effect is that if the check is not working, the blades of the other nationalities become open to distribution (ie, dutch soldiers with english officer swords). That one would have come up before, but maybe it was hidden when soldiers were operating under the soldier weapon system.
Can anyone see where the problem arises? I've looked at it and am quite unsure. The full code is in LAi_equip