Compete

Coding

Battlecode

MIT Battlecode

Write an AI that commands a team of virtual units against other students' AIs, with a high school bracket.

Run by Massachusetts Institute of Technology

Key facts

Eligible grades
Not confirmed. Check the organiser's rules before entering.
Battlecode is 'open to anyone'. The organiser does not define eligibility by grade. A separate high school bracket has existed in past years but was not confirmed on the official pages checked for 2027, so do not assume one.
Recommended preparation
Confident independent programming, and about a month of sustained work
Why: Entrants write an autonomous player for a real-time strategy game, refined through scrimmages and tournaments across January.
Based on the published exam or entry format.
This is Compete's reading of the competition's documented content, not a requirement stated by the organiser. You may enter without it.
Compete guidance, not an eligibility restriction. Students outside this are still eligible if the official eligibility above allows them.
Eligible ages
Not confirmed. This organiser may set eligibility by grade rather than age. We do not convert one into the other.
No age limit is published. Battlecode states it is open to anyone.
Individual or team
Individual or team · Not confirmed
Where it runs
Online · International
Entry cost
FreeNot stated on the official pages checked.
Registration deadline
Set locally, not published as a single national date 2027 registration dates not published on the official pages checked.
Competition dates
2027 dates have not been published. For reference, Battlecode 2026 ran 5 to 31 January 2026, with classes in the first two weeks and tournaments throughout the month.
Difficulty
CompetitiveSerious preparation over a season. Advancing past the first round separates prepared students from unprepared ones.
Prizes
Any team may compete in the Sprint Tournaments for prize money. Only student teams, including non-MIT student teams, are eligible for the remaining tournaments and their prize money.MIT awards cash prizes across brackets, including the high school division. Amounts vary by year and sponsor.

What Battlecode is

Battlecode is a real-time strategy game where you do not play: you write the AI that plays. Your program controls a team of units competing against another team's program on a shared map, and matches are decided entirely by the code you wrote beforehand. MIT runs it each January with a high school division alongside the main tournament.

How the competition works

A real-time strategy game for which you write an autonomous player that manages a robot army. Teams receive the software and game specification in early January and refine their player through scrimmages and tournaments over the month.

Eligibility notes

The open competition is dominated by university students. The high school bracket exists so that secondary students compete against each other.

Is Battlecode right for you?

Experience needed
Solid programming. You need to be comfortable writing and debugging a few hundred lines of Java or Python without help.
Time commitment
An intense January. Serious competitors work on it most days of the month.
What you actually do
You write a program that makes decisions for dozens of units every turn under a strict computation budget, then watch it lose to someone else's and work out why.

A good fit if

  • You already program and want something more creative than algorithmic contests
  • You like strategy games
  • You have a free January

Probably not for you if

  • Students who cannot commit concentrated time in January
  • Beginners still learning basic programming

Compare this against competitions matched to you

Common mistakes

  • Designing a perfect bot before submitting anything. Getting a simple bot on the ladder in week one is worth more than a sophisticated one in week three.
  • Ignoring the computation limit, which disqualifies turns and loses matches silently.
  • Not watching replays of your losses, which is where the entire learning happens.

How to register

  1. Register on battlecode.org when the season opens, usually in December or early January.
  2. Read the game specification the day it is released. The game changes every year and early understanding is a real advantage.
  3. Build a simple working bot first and get it onto the ladder, then iterate against real opponents.
  4. Submit for each tournament during January.

Register on the official site

What skills you need

  • Java or Python
  • Algorithm design under tight compute limits
  • Pathfinding
  • Game theory and strategy
  • Rapid iteration

Recommended resources

Past problems and materials

Only materials the organiser or an authorised archive publishes openly are listed here.

Frequently asked questions

Do I compete against university students?

Not in the high school bracket, which runs alongside the open tournament specifically so secondary students compete against each other. You can still play the open ladder for practice.

Which language should I use?

Java has historically been the primary engine language with Python support added. Check the current season's specification, since the engine changes each year.

Reviews, tips and resources from other students

Posts are public. Do not share your full name, school, address or contact details.

Your rating
0 / 1200
Sort

Something out of date?

If a deadline, fee or eligibility rule on this page no longer matches the official site, flag it and it goes into the review queue.

You might also look at

StructureDivisions by grade or level
  • FormatIndividual
  • WhereOnline
  • Check site
    Coding Codeforces Free short-format algorithmic contests several times a month, open to anyone with a rating attached.
    Check site
    Coding International Olympiad in AI The newest international science olympiad, with a scientific round and a practical machine learning round.
    173 days left
    Engineering Zero Robotics Write code that controls a real satellite aboard the International Space Station.
    Check site