From 7b567e5ec88ee5ee390eb0d8458bdbf425174ca5 Mon Sep 17 00:00:00 2001 From: Adrian Kunz Date: Tue, 13 Aug 2024 11:01:07 +0200 Subject: [PATCH] fix: Weight ships by speed^2 - larger ships are much less likely --- src/fleet/fleet.service.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/fleet/fleet.service.ts b/src/fleet/fleet.service.ts index 5b162bd..a48df98 100644 --- a/src/fleet/fleet.service.ts +++ b/src/fleet/fleet.service.ts @@ -57,8 +57,8 @@ export class FleetService extends MongooseRepository { const shipCount = 5 + Math.randInt(11); const size: Fleet['size'] = {}; for (let i = 0; i < shipCount; i++) { - // weighted selection of ship types by speed - smaller ships are more likely - const shipType = shipTypes.randomWeighted(type => SHIP_TYPES[type].speed); + // weighted selection of ship types by speed^2 - smaller ships are much more likely + const shipType = shipTypes.randomWeighted(type => SHIP_TYPES[type].speed ** 2); size[shipType] = (size[shipType] || 0) + 1; } return ({