Humans are severely skill issued ⚠️ Change HvN difficulty to Medium (#2971)

## Description:

For v29

HvN winrate is between 10 and 15%, but should be around 50%.

1. Change HvN difficulty to Medium
2. Little balance change in `NationAllianceBehavior`

## Please complete the following:

- [X] I have added screenshots for all UI updates
- [X] I process any text displayed to the user through translateText()
and I've added it to the en.json file
- [X] I have added relevant tests to the test directory
- [X] I confirm I have thoroughly tested these changes and take full
responsibility for any bugs introduced

## Please put your Discord username so you can be contacted if a bug or
regression is found:

FloPinguin
This commit is contained in:
FloPinguin
2026-01-20 19:43:48 +01:00
committed by evanpelle
parent 4d668e299c
commit e9e2f06d69
2 changed files with 5 additions and 5 deletions
@@ -240,13 +240,13 @@ export class NationAllianceBehavior {
const { difficulty } = this.game.config().gameConfig();
switch (difficulty) {
case Difficulty.Easy:
return false; // 0% chance to reject on easy
return this.random.nextInt(0, 100) < 25; // 25% chance to reject on easy
case Difficulty.Medium:
return this.random.nextInt(0, 100) < 20; // 20% chance to reject on medium
return this.random.nextInt(0, 100) < 50; // 50% chance to reject on medium
case Difficulty.Hard:
return this.random.nextInt(0, 100) < 40; // 40% chance to reject on hard
return this.random.nextInt(0, 100) < 75; // 75% chance to reject on hard
case Difficulty.Impossible:
return this.random.nextInt(0, 100) < 60; // 60% chance to reject on impossible
return true; // 100% chance to reject on impossible
default:
assertNever(difficulty);
}
+1 -1
View File
@@ -129,7 +129,7 @@ export class MapPlaylist {
publicGameModifiers: { isCompact, isRandomSpawn, startingGold },
startingGold,
difficulty:
playerTeams === HumansVsNations ? Difficulty.Hard : Difficulty.Easy,
playerTeams === HumansVsNations ? Difficulty.Medium : Difficulty.Easy,
infiniteGold: false,
infiniteTroops: false,
maxTimerValue: undefined,