Note: .js files are transpiled by a Battlecode tool, the actually source is the java files.
What is Battlecode?
Summary form the Battlecode Website: "Battlecode is a real-time strategy game, for which you will write an AI player. In Battlecode, two teams of virtual robots roam the screen managing resources and executing different offensive strategies against each other. Your AI player will need to strategically manage your robot army and control how your robots work together to defeat the enemy team. As a contestant, you will learn to use artificial intelligence, pathfinding, distributed algorithms, and network communications to make your player as competitive as possible. "
Another great explanation and deeper dive into the 2019 Battlecode comes from a post-mortem written by another finalist team NP-cgw. Highly recommend giving it a read if interested in Battlecode as it covers the "essence" of the competition.
2017 : Competed in a duo, was eliminated in the best of 64 round of the qualifying tournament.
2018 : Competed solo, was eliminated in the best of 64 round of the qualifying tournament.
2019 : Competed in a duo, made top 16 in qualifying tournament, and moved on to the top 16 finalist tournament where we placed 5/6. Tournament Bracket
Note: If your curious of the context of the strategy please go read the above linked Battlecode post-mortem.
My teams AI strategy was heavily dependent on fighting over resources and skirmishing to drain the resources of the enemies. Key Strategy Ideas:
- Rushing central resources immediately.
- Using cheap high health knights to burn the fuel of the enemy by dying until the enemy runs out of the ability to attack then overrunning them.
- Planting Churchs in the open to allow for the spawning of knights to retake enemy controlled resource clusters
- At predetermined rounds sending all knights to the enemy castle in hopes of draining enemy fuel and overrunning them to kill the castle.
Chicken vs Codelympians, Loss in the winners bracket round 1
Chicken vs DOS, Win in the Losers round 1
Chicken vs Wololo, Win in the Losers round 2
Chicken vs Big Red Battlecode, Win in the Losers round 3
Chicken vs Knights of Cowmelot, Loss in the Losers round 4