just another balance

This commit is contained in:
1brucben
2025-05-10 00:14:48 +02:00
parent 570ee753b6
commit 6981e41348
3 changed files with 12 additions and 8 deletions
+2 -1
View File
@@ -120,7 +120,8 @@ export interface Config {
defensePostRange(): number;
SAMCooldown(): number;
SiloCooldown(): number;
defensePostDefenseBonus(): number;
defensePostSpeedMultiplier(): number;
defensePostLossMultiplier(): number;
falloutDefenseModifier(percentOfFallout: number): number;
difficultyModifier(difficulty: Difficulty): number;
warshipPatrolRange(): number;
+9 -6
View File
@@ -218,8 +218,11 @@ export class DefaultConfig implements Config {
defensePostRange(): number {
return 40;
}
defensePostDefenseBonus(): number {
return 5;
defensePostLossMultiplier(): number {
return 6;
}
defensePostSpeedMultiplier(): number {
return 3;
}
numPlayerTeams(): number {
return this._gameConfig.numPlayerTeams ?? 0;
@@ -465,8 +468,8 @@ export class DefaultConfig implements Config {
UnitType.DefensePost,
)) {
if (dp.unit.owner() == defender) {
mag *= this.defensePostDefenseBonus();
speed *= this.defensePostDefenseBonus();
mag *= this.defensePostLossMultiplier();
speed *= this.defensePostSpeedMultiplier();
break;
}
}
@@ -506,7 +509,7 @@ export class DefaultConfig implements Config {
const attackratio = defenderTroops / attackTroops;
return {
attackerTroopLoss:
mag * 20 +
mag * 16 +
defenderdensity *
mag *
(defender.isTraitor() ? this.traitorDefenseDebuff() : 1),
@@ -520,7 +523,7 @@ export class DefaultConfig implements Config {
};
} else {
return {
attackerTroopLoss: attackerType == PlayerType.Bot ? mag * 20 : mag * 20,
attackerTroopLoss: attackerType == PlayerType.Bot ? mag * 16 : mag * 16,
defenderTroopLoss: 0,
tilesPerTickUsed: 31 * speed, // * (10_000 / attackTroops) ** 0.5,
};
+1 -1
View File
@@ -649,7 +649,7 @@ export class PlayerImpl implements Player {
for (const city of this.units(UnitType.City)) {
const created = city.createdAtTick();
const age = created != null ? this.mg.ticks() - created : Infinity;
const ramp = Math.min(age / 600, 1); // 60 seconds at 10 ticks/sec
const ramp = Math.min(age / 450, 1); // 45 seconds at 10 ticks/sec
cityPop += ramp * 500_000;
}