diff --git a/common_libs/movements/phantom_meteor.nim b/common_libs/movements/phantom_meteor.nim index be6a298..9898b37 100644 --- a/common_libs/movements/phantom_meteor.nim +++ b/common_libs/movements/phantom_meteor.nim @@ -199,11 +199,12 @@ proc computeMove*(m: var PhantomMeteorModule, ws: WorldState): MoveCommand = let enemyPos = vec2(ws.enemyX, ws.enemyY) # ── Ram override ───────────────────────────────────────────────────────────── - let ramDist = dist(botPos, enemyPos) - let ramFinisher = ramDist < 200.0 and ws.enemyEnergy < 10.0 and ws.selfEnergy > ws.enemyEnergy - let ramOpportunity = ramDist < 60.0 and ws.selfEnergy > ws.enemyEnergy + 20.0 - if ramFinisher or ramOpportunity: - let tag = if ramFinisher: "finisher" else: "opportunity" + let ramDist = dist(botPos, enemyPos) + let ramFinisher = ramDist < 300.0 and ws.enemyEnergy < 20.0 and ws.selfEnergy > ws.enemyEnergy + let ramOpportunity = ramDist < 80.0 and ws.selfEnergy > ws.enemyEnergy + 10.0 + let ramDesperation = ws.selfEnergy < 5.0 and ws.enemyEnergy < 5.0 and ramDist < 150.0 + if ramFinisher or ramOpportunity or ramDesperation: + let tag = if ramDesperation: "desperation" elif ramFinisher: "finisher" else: "opportunity" echo CLR_CYAN & "[ram:" & tag & "] dist=" & $int(ramDist) & " selfE=" & $int(ws.selfEnergy) & " enemyE=" & $int(ws.enemyEnergy) & CLR_RST let headingRad = arctan2(enemyPos.y - botPos.y, enemyPos.x - botPos.x)