diff --git a/src/Mods/SpecialForce/SpecialForce.js b/src/Mods/SpecialForce/SpecialForce.js index 8d6ac223485053b3c72a7424b7966dc44e45a58c..98c495ea23ea1514d4ff826b688cca98e9f9eed6 100644 --- a/src/Mods/SpecialForce/SpecialForce.js +++ b/src/Mods/SpecialForce/SpecialForce.js @@ -2177,21 +2177,21 @@ App.SF.AAR = function(endWeekCall = 1) { FNG += S.Firebase; Trade += 0.5 * S.Firebase; Multiplier.unit += 7.5 * S.Firebase + 2 * Math.pow(S.Firebase, 2) * cost.a; - incomeAdd += (5000 * S.Firebase)/ S.Firebase - 1; + incomeAdd += (5000 * S.Firebase)/ Math.max(S.Firebase - 1, 1); upkeep += (95 * 10 + S.Firebase) * cost.b; } if (S.Armoury > 0) { FNG += 2 * S.Armoury; Trade += 0.25 * S.Armoury; Multiplier.unit += 7.5 * S.Armoury + 2 * Math.pow(S.Armoury, 2) * cost.a; - incomeAdd += (3000 * S.Armoury)/S.Armoury - 1; + incomeAdd += (3000 * S.Armoury)/Math.max(S.Armoury - 1, 1); upkeep += (55 * S.Armoury) * cost.b; } if (S.Drugs > 0) { FNG += S.Drugs; Trade += 0.25 * S.Drugs; Multiplier.unit += 7.5 * S.Drugs + 2 * Math.pow(S.Drugs, 2) * cost.a; - incomeAdd += (3000 * S.Drugs)/S.Drugs - 1; + incomeAdd += (3000 * S.Drugs)/Math.max(S.Drugs - 1, 1); upkeep += (35 * S.Drugs) * cost.b; } if (S.Firebase >= 1) { @@ -2361,14 +2361,14 @@ App.SF.AAR = function(endWeekCall = 1) { } } - income += incomeAdd + (1 + Multiplier.troop / N0) * (1 + Multiplier.unit / N0) * (1 + Multiplier.action / N0) * (1 + Multiplier.depravity / N0); + income += (1 + Multiplier.troop / N0) * (1 + Multiplier.unit / N0) * (1 + Multiplier.action / N0) * (1 + Multiplier.depravity / N0); upkeep += 30000 + (25000 * 1 / N1); if (V.SF.Target === "raiding") { income *= 1.25; } else if (V.SF.Target === "secure") { income *= 1.05; } else { // When recruiting, upkeep is lowered, effect dependent on amount of soldiers. At max capacity, multiplier back to 1. - upkeep *= 0.75 + (V.SF.ArmySize/100); + upkeep *= 0.75 + (V.SF.ArmySize/10000); } if (between(V.economy, 33, 100)) { @@ -2380,11 +2380,11 @@ App.SF.AAR = function(endWeekCall = 1) { } if (endWeekCall > 0) { V.SF.ArmySize += FNG; } - income = Math.ceil(income); + income = Math.ceil(income + incomeAdd); upkeep = Math.ceil(upkeep); profit = income - upkeep; if (V.debugMode > 0 && endWeekCall > 0) { - r += `<br>income:${num(income)}, upkeep:${num(upkeep)}, profit:${num(profit)}, troop:${num((0.09+Multiplier.troop/N0).toFixed(2))}, unit:${num((0.09+Multiplier.unit/N0).toFixed(2))}, action:${num((0.09+Multiplier.action/N0).toFixed(2))}, depravity:${num((0.09+Multiplier.depravity/N0).toFixed(2))}`; + r += `<br>income:${num(income)}, upkeep:${num(upkeep)}, profit:${num(profit)}, troop:${num((0.09+Multiplier.troop/N0).toFixed(2))}, unit:${num((0.09+Multiplier.unit/N0).toFixed(2))}, action:${num((0.09+Multiplier.action/N0).toFixed(2))}, depravity:${num((0.09+Multiplier.depravity/N0).toFixed(2))}, N0: ${N0} N1: ${N1}`; } if (endWeekCall > 0) {