In Nexerelin, I have "agents" and "saboteurs", which have the
marines demand class, the
military tag and an utility of 3. They are made only from military bases, which in Nexerelin use a modified class:
public class ExerelinMilitaryBase extends MilitaryBase {
public static final float EXTRA_MARINES_MULT = 1.25f; // hax
public void apply(String id) {
super.apply(id);
if (this.market.getFactionId().equals("templars"))
{
market.removeSubmarket(Submarkets.GENERIC_MILITARY);
}
market.getCommodityData(Commodities.MARINES).getSupply().modifyFlat(id, ConditionData.MILITARY_BASE_MARINES_SUPPLY * EXTRA_MARINES_MULT);
market.getCommodityData("agent").getSupply().modifyFlat(id, 1);
market.getCommodityData("saboteur").getSupply().modifyFlat(id, 1);
}
public void unapply(String id) {
super.unapply(id);
market.getCommodityData("agent").getSupply().unmodify(id);
market.getCommodityData("saboteur").getSupply().unmodify(id);
}
}
ConditionData.MILITARY_BASE_MARINES_SUPPLY * EXTRA_MARINES_MULT equals 125, so I'd expect there to be tons of marines and few agents or saboteurs.
Instead I routinely see things like this:
(agents are the blue suits, saboteurs are orange)
Are the agents and saboteurs being overproduced, and/or not being consumed? Can I fix this?