Battlecode 2017

Now in its 17th year, Battlecode is MIT's longest running programming competition. It features a unique challenge that combines battle strategy, software engineering and artificial intelligence. In short, the objective is to write the best AI player program for the strategy game Battlecode. Anyone can participate, as long as you know how to program.

Plot

The zombies have finally died off, and the remaining robots have emerged from their bunkers to find the galaxy in complete disrepair. Infrastructure has been destroyed, and the ecosystem is a complete disaster. To help with the effort, the Robotic Wildlife Fund has set up a donation effort to help restore it to its former glory. Factions vow to come together for the common goal of preserving the environment, but remain competitive and want to show how great they are. In a race to be the most benevolent, factions must either donate the most to the cause, or destroy anyone more altruistic than they are.

Objective

    Each player starts the game with several archons. To win the game, you must:

    Earn 1000 Victory Points
    OR
    Destroy the enemy.

Battlecode Units

Bullets

Bullets are the primary resource in the game. You can plant bullets, shoot bullets, or use bullets to build robots.

A slow, weaker bullet; shot by the scout.
An average bullet; shot by the soldier.
A fast, stronger bullet; shot by the tank.

Robots

Archons are the starting units and can build gardeners.
Gardeners can plant and water trees, and build non-gardener robots in exchange for bullets.
Soldiers are the standard attacking unit and can fire single, triad, or pentad shots.
Scouts can fly over trees and have a large sight radius.
Tanks are like soldiers, except they move more slowly and fire stronger, faster bullets.
Lumberjacks have a short-combat melee strike, and are very effective against trees.
Bullets trees whither if not watered, and generate bullet income for their team.

Terminology

During the tournament, you may hear the casters use certain terms to describe the behavior of teams' bots. Here's a quick glossary of common terms.