diff --git a/src/core/configuration/Config.ts b/src/core/configuration/Config.ts index ad70b48ec..7e508e596 100644 --- a/src/core/configuration/Config.ts +++ b/src/core/configuration/Config.ts @@ -131,6 +131,8 @@ export interface Config { defensePostDefenseBonus(): number; falloutDefenseModifier(): number; difficultyModifier(difficulty: Difficulty): number; + // 0-1 + traitorDefenseDebuff(): number; } export interface Theme { diff --git a/src/core/configuration/DefaultConfig.ts b/src/core/configuration/DefaultConfig.ts index 4d60b2984..fb4127e0c 100644 --- a/src/core/configuration/DefaultConfig.ts +++ b/src/core/configuration/DefaultConfig.ts @@ -60,6 +60,10 @@ export class DefaultConfig implements Config { private _gameConfig: GameConfig, private _userSettings: UserSettings, ) {} + + traitorDefenseDebuff(): number { + return 0.8; + } spawnImmunityDuration(): Tick { return 5 * 10; } @@ -352,7 +356,8 @@ export class DefaultConfig implements Config { within(defender.troops() / attackTroops, 0.5, 2) * mag * 0.8 * - largeModifier, + largeModifier * + (defender.isTraitor() ? this.traitorDefenseDebuff() : 1), defenderTroopLoss: defender.troops() / defender.numTilesOwned(), tilesPerTickUsed: within(defender.troops() / (5 * attackTroops), 0.2, 1.5) *