feat(ModularBot): 6 guns, pattern matcher, melee modules, adversarial bots
- New guns: guess-factor (GF histogram), pattern-matcher (movement tape replay) - New modules: minimum-risk melee movement, spinning melee radar - New test bots: PatternMover, RandomMover, WaveSurfer - Fixed: FeedbackEvent now carries actualX/actualY for proper GF learning - Fixed: TM gun warmup gating + directional residuals - Fixed: circular gun integrated formula + multi-bin omega cache - Fixed: oscillator wall-bounce lockout - Fixed: phantom meteor perpendicular body orientation - 6/6 battle wins across all enemy types
This commit is contained in:
@@ -0,0 +1,30 @@
|
||||
## Test ModularBot gun switching against OscillatorBot (moving enemy)
|
||||
import common_libs/test_framework/test_framework
|
||||
|
||||
let result = runBattle(
|
||||
@[
|
||||
"/home/davide/Projects/SirRoboGarage/ModularBot_garage",
|
||||
"/home/davide/Projects/SirRoboGarage/common_libs/test_framework/adversaries/OscillatorBot"
|
||||
],
|
||||
rounds = 5,
|
||||
timeout = 120000,
|
||||
maxSpeed = true
|
||||
)
|
||||
|
||||
echo ""
|
||||
echo "=== Gun Switching Test: ModularBot vs OscillatorBot ==="
|
||||
echo "Total Rounds: " & $result.rounds.len
|
||||
echo ""
|
||||
|
||||
for round in result.rounds:
|
||||
echo "Round " & $round.round & ":"
|
||||
for botRes in round.results:
|
||||
echo " " & botRes.name & ": score=" & $botRes.score & " rank=" & $botRes.rank & " survived=" & $botRes.survived
|
||||
echo ""
|
||||
|
||||
echo "Final Results:"
|
||||
for botRes in result.results:
|
||||
echo " " & botRes.name & ": totalScore=" & $botRes.totalScore & " rank=" & $botRes.rank & " firstPlaces=" & $botRes.firstPlaces
|
||||
|
||||
echo ""
|
||||
echo "Winners: " & $result.winners
|
||||
Reference in New Issue
Block a user