import std/os import std/strutils import test_framework/test_framework if not existsEnv("TR_SERVER_JAR") or not existsEnv("TR_BATTLE_RUNNER"): echo "Skipping: TR_SERVER_JAR / TR_BATTLE_RUNNER not set" quit(0) let modularBotDir = "/home/davide/Projects/SirRoboGarage/ModularBot_garage" let sampleBotsDir = "/home/davide/Downloads/robocode-tankroyale/sample-bots-nim-linux-1.0.7" echo "\n" & "=".repeat(60) echo "BATTLE 1: ModularBot vs SpinBot (Circular Movement)" echo "=".repeat(60) let r1 = runBattle(@[modularBotDir, sampleBotsDir / "SpinBot"], rounds = 10) echo "\nFinal Scores:" for bot in r1.results: echo " " & bot.name & ": score=" & $bot.totalScore & " rank=" & $bot.rank & " firstPlaces=" & $bot.firstPlaces & " survived=" & $bot.survivalCount echo "Winner: " & r1.winners[0] echo "\n" & "=".repeat(60) echo "BATTLE 2: ModularBot vs Crazy (Unpredictable Movement)" echo "=".repeat(60) let r2 = runBattle(@[modularBotDir, sampleBotsDir / "Crazy"], rounds = 10) echo "\nFinal Scores:" for bot in r2.results: echo " " & bot.name & ": score=" & $bot.totalScore & " rank=" & $bot.rank & " firstPlaces=" & $bot.firstPlaces & " survived=" & $bot.survivalCount echo "Winner: " & r2.winners[0] echo "\n" & "=".repeat(60) echo "SUMMARY" echo "=".repeat(60) echo "Battle 1 (vs SpinBot): " & (if "ModularBot" in r1.winners: "WON" else: "LOST") echo "Battle 2 (vs Crazy): " & (if "ModularBot" in r2.winners: "WON" else: "LOST")