diff --git a/TODO.txt b/TODO.txt index 054abd6a9..34dac9f4b 100644 --- a/TODO.txt +++ b/TODO.txt @@ -249,16 +249,16 @@ * make shells larger DONE 12/20/2024 * make shells more frequent & less attack DONE 12/20/2024 * have game start every 10 mins DONE 12/20/2024 -* bug: NPCs don't have money -* create more prominant discord link +* make fallout harder to capture, h-bombs little smaller DONE 12/20/2024 +* create more prominant discord link DONE 12/20/2024 +* make defense post stronger & larger radius DONE 12/20/2024 +* make event box wider DONE 12/20/2024 * make attack bonus based on current attack size -* make fallout harder to capture, h-bombs little smaller -* make atom bombs a bit cheaper & smaller -* make defense post stronger & larger radius +* highlight player spawn +* troop density affects attack bonus +* bug: NPCs don't have money * right click brings up player info menu * seperate server config from client config -* make event box wider -* highlight player spawn * bug: player names not updating sometimes * make player editeable configs * couldn't scroll left on build menu to deploy bombs (mobile) diff --git a/src/client/graphics/layers/EventsDisplay.ts b/src/client/graphics/layers/EventsDisplay.ts index 14a5afe5a..0cd4e452e 100644 --- a/src/client/graphics/layers/EventsDisplay.ts +++ b/src/client/graphics/layers/EventsDisplay.ts @@ -64,7 +64,7 @@ export class EventsDisplay extends LitElement implements Layer { bottom: 10px; right: 10px; z-index: 1000; - max-width: 400px; + max-width: 800px; } .events-table { diff --git a/src/client/index.html b/src/client/index.html index 9deb9763d..dcb43d02b 100644 --- a/src/client/index.html +++ b/src/client/index.html @@ -20,13 +20,6 @@
- - -

OpenFront.io

(v0.12.6)

@@ -40,6 +33,13 @@ How to Play
+
+ + Join the Discord! + +
+
diff --git a/src/core/configuration/Config.ts b/src/core/configuration/Config.ts index a1d55659e..272ae4ce6 100644 --- a/src/core/configuration/Config.ts +++ b/src/core/configuration/Config.ts @@ -46,7 +46,7 @@ export interface Config { populationIncreaseRate(player: Player): number goldAdditionRate(player: Player): number troopAdjustmentRate(player: Player): number - attackTilesPerTick(attacker: Player, defender: Player | TerraNullius, numAdjacentTilesWithEnemy: number): number + attackTilesPerTick(attckTroops: number, attacker: Player, defender: Player | TerraNullius, numAdjacentTilesWithEnemy: number): number attackLogic(attackTroops: number, attacker: Player, defender: Player | TerraNullius, tileToConquer: Tile): { attackerTroopLoss: number, defenderTroopLoss: number, diff --git a/src/core/configuration/DefaultConfig.ts b/src/core/configuration/DefaultConfig.ts index 7acbbd5c2..6dff9de70 100644 --- a/src/core/configuration/DefaultConfig.ts +++ b/src/core/configuration/DefaultConfig.ts @@ -32,10 +32,10 @@ export abstract class DefaultConfig implements Config { } defensePostRange(): number { - return 30 + return 40 } defensePostDefenseBonus(): number { - return 3 + return 5 } spawnNPCs(): boolean { return true @@ -208,9 +208,9 @@ export abstract class DefaultConfig implements Config { if (defender.isPlayer()) { return { - attackerTroopLoss: within(defender.troops() / attacker.troops(), .5, 2) * mag, + attackerTroopLoss: within(defender.troops() / (5 * attackTroops), .5, 2) * mag, defenderTroopLoss: defender.troops() / defender.numTilesOwned(), - tilesPerTickUsed: within(defender.troops() / (attackTroops * 5), .2, 1.5) * speed + tilesPerTickUsed: within(defender.troops() / (5 * attackTroops), .2, 1.5) * speed } } else { return { @@ -221,9 +221,9 @@ export abstract class DefaultConfig implements Config { } } - attackTilesPerTick(attacker: Player, defender: Player | TerraNullius, numAdjacentTilesWithEnemy: number): number { + attackTilesPerTick(attackTroops: number, attacker: Player, defender: Player | TerraNullius, numAdjacentTilesWithEnemy: number): number { if (defender.isPlayer()) { - return within(attacker.troops() / defender.troops() * 2, .01, .5) * numAdjacentTilesWithEnemy * 3 + return within((5 * attackTroops) / defender.troops() * 2, .01, .5) * numAdjacentTilesWithEnemy * 3 } else { return numAdjacentTilesWithEnemy * 2 } diff --git a/src/core/configuration/DevConfig.ts b/src/core/configuration/DevConfig.ts index 00861975e..ce66583bd 100644 --- a/src/core/configuration/DevConfig.ts +++ b/src/core/configuration/DevConfig.ts @@ -33,7 +33,7 @@ export const devConfig = new class extends DefaultConfig { } // numBots(): number { - // return 0 + // return 1 // } // spawnNPCs(): boolean { // return false diff --git a/src/core/execution/AttackExecution.ts b/src/core/execution/AttackExecution.ts index cc0a4ff5f..c7cbd35d1 100644 --- a/src/core/execution/AttackExecution.ts +++ b/src/core/execution/AttackExecution.ts @@ -129,7 +129,7 @@ export class AttackExecution implements Execution { return } - let numTilesPerTick = this.mg.config().attackTilesPerTick(this._owner, this.target, this.border.size + this.random.nextInt(0, 5)) + let numTilesPerTick = this.mg.config().attackTilesPerTick(this.troops, this._owner, this.target, this.border.size + this.random.nextInt(0, 5)) // consolex.log(`num tiles per tick: ${numTilesPerTick}`) // consolex.log(`num execs: ${this.mg.executions().length}`)