MIT's Longest-Running Programming Competition
Thanks to everyone who participated in Battlecode 2022. View the final tournament here!
What is Battlecode?
Battlecode is a real-time strategy game, for which you will write an AI player. Your AI player will need to strategically manage a 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 communications to make your player as competitive as possible.
Teams are given the Battlecode software and a specification of the game rules in early January. Throughout the month, you will refine your player, and compete in scrimmages and tournaments against other teams. During these tournaments, the autonomous players are pitted against each other in a dramatic head-to-head fashion. At the end of the month, the Final Tournament is played out in front of a live audience at MIT, with the top teams receiving cash prizes. The total prize pool is over $30,000.
- Team size: 1-4 people.
- Schedule: The next iteration of Battlecode will begin on January 9, 2023. Lectures will be held at MIT and streamed online throughout the first two weeks.
- TBD: Sprint tournament
- TBD: Seeding tournament
- TBD: International, US, Newbie, & High School qualifiers
- Sat Feb. 5, 2023: Final tournament at Kresge Auditorium
- Eligibility: Anyone is welcome to participate in Battlecode! However, we can only consider teams of all full-time university students to be eligible for the final tournaments, and teams of all high school students for the high school tournament. Note that non-MIT students are eligible too. More eligibility information can be found here.
Watch the 2022 Final Tournament!
In Battlecode: Mutation, the world is a radioactive wasteland, overrun with mutations and anomalies. Buildings have learned to walk, transmutation has given birth to the blooming science of alchemy, and even the robots have become sentient. Amidst the uncertainty, two warring factions of robots have emerged.
The game world is subject to frequent Anomalies that can inflict long-lasting damage to both teams. Each player begins with several Archons, and the player who loses all Archons first loses the game. Players must create robots that can tolerate onslaughts of Anomalies as they fight the opposing player faction.
Watch the 2021 Final Tournament!
In the aftermath of the robots' deadly escape to Mars, Battlecode: Campaign is set amid a tumultuous election in the struggle for longstanding peace.
Check out the Battlecode 2021 Competition Site, where you can read more about the game, and see the results of the tournaments.
Below are a couple of post-mortems providing a competitors' view of the game. Read them!
2021 Postmortem by "Baby Ducks" (1st)
2021 Postmortem by "Malott Fat Cats" (4th)
2021 Postmortem by "wololo" (7th-8th)
2021 Postmortem by "California Roll" / "Chop Suey" (9th-12th)
2021 Postmortem by "Three Musketeers" (9th-12th)
2021 Postmortem by "llllllll's Disciple" (HS 3rd)
Watch the 2020 Final Tournament!
As we all know, the world is changing. Water levels are rising, pollution is becoming a global problem, and we are rapidly depleting our most valuable natural resource: soup. Battlecode 2020 was as much about surviving the changing climate as defeating the enemy team.
Check out the Battlecode 2020 Competition Site, where you can read more about the game, and see the results of the tournaments.
Below are a couple of post-mortems providing a competitors' view of the game. Read them!
2020 Postmortem by "Java Best Waifu" (1st)
2020 Postmortem by "Battlegaode" (3rd)
2020 Postmortem by "The High Ground" (4th)
2020 Postmortem by "Bowl of Chowder" (5th-6th)
2020 Postmortem by "confused" (HS 2nd)
2019 Battlecode: Crusade
Battlecode 2019 had players fight to destroy each other in a great galactic Crusade. The map landscape was scattered impassable terrain, meaning units had to find their way around. All maps were symmetric for fairness. Players won if they destroyed the opponents' Castles. Available units included castles, chruches, pilgrims, prophets, and preachers, each of which had a difference purpose. Creating different units and taking different actions consumed one or both of the two resources available on each map: Karbonite and Fuel.
You can find the source code for Battlecode 2019 on GitHub. Post-mortems are available from "NP-cgw" (Finalist), "smite" (1st), "Big Red Battlecode" (Finalist), "Oak's Last Disciple", "Double J" (17th-32nd)
2018 Battlecode: Escape to Mars
Battlecode 2018 had a Sci-Fi theme in which players controlled different factions of Earth-inhabiting robots in a fight for supremacy as they colonized Mars to escape a dying Earth. Players had to wage war in battlefields both on Mars and Earth. Similarly to many RTS games, players could mine a resource called Karbonite, with which they could build their army. An army could consist of workers, knights, rangers, healers, and mages, each which had different specialties.
The game specifications can be found here, with language-specific documentation in Python, Java and C. Check out the 2018 Github and scaffold. You may find Max Mann's videos useful as well, particularly his lecture series on how to code a bot for Battlecode 2018 in Python. He provides an installation guide for Battlecode 2018 here. You will also find some tutorials in the Battlecode Youtube channel.
2017 Final Tournament
The object of the game was to either donate to the reforestation fund or destroy the enemy.
2016 Final Tournament
The object of the game was destroy the enemy archons while surviving attacks from zombies.
2015 Final Tournament
The object of the game was destroy the enemy headquarters. Each team has up to six towers on the map, and destroying these towers weakens the enemy.
2014 Final Tournament
The object of the game was to gain milk either by herding cows into pastures or by destroying opponent pastures.
2013 Final Tournament
Compared to previous games, this year's game featured more of an emphasis on economy and macro strategy. The goal was to destroy the other team.
2012 Final Tournament
The object of the game was to build a chain of power nodes from your base to the enemy's base.
2011 Final Tournament
The 2011 game featured robots with modular components. The goal of the game was to destroy the other team. Unfortunately, we don't have a video of the 2011 final tournament.
2010 Final Tournament
The object of the game was to gather points by constructing contiguous blocks of buildings. The area contained within the convex hull formed by the buildings generated points each round. Of course, the other way of winning was to wipe out the other team.
2009 Final Tournament
The object of the game was to gather points by mining resource deposits or wipe out the other team.
2008 Final Tournament
The object of the game was to gain territory by capturing towers.
2007 Final Tournament
The object of the game was to destroy the enemy archons or have the most production at the end of the game.
2006 Final Tournament
Unfortunately, we don't have a video of the 2006 RoboCraft Final Tournament. The 2006 game was a "King of the Hill" game in which the object of the game was to spend more time than your opponents on the hill squares.
2005 Final Tournament
The object of the game was to capture the enemy flag or survive when the walls came pushing in as the game ended. Battlecode was still under the name "RoboCraft".
2003 Final Tournament
The object of the game was to destroy the enemy queen or have a closer unit to your enemy's queen.
What languages are supported?
Battlecode 2022 will be built for Java.
What is the game like?
The game is a turn-based strategy game where robots need to demonstrate a mastery of both resource management (macro) and combat tactics (micro). The 2020 game involved surviving rising water levels in an increasingly polluted world, while Battlecode 2019 centered around a religiously motivated war. The game is different every year, and is released every year in the beginning of January!
Wait, AI as in machine learning?
Machine learning has not historically been used in Battlecode, since computing power is limited and the game is a highly complex environment. Rather, Battlecode is about pathfinding, resource management, communication and combat tactics, both on a local scale (e.g., choosing to attack the enemy robot with the least health first) and on a global scale (which units to send where and when). However, we'd be thrilled and excited to see a successful implementation of machine learning in Battlecode!
Am I allowed to participate?
Yes! Anyone is welcome to participate. However, we can only consider teams of all full-time students to be eligible for the final tournaments. Note that non-MIT students (and high school students) are eligible too. Check out more details on eligibility here.
Do I have to be good at programming?
Actually, Battlecode makes a great first dive into programming! We'll be holding daily lectures throughout January to cover the basic skills needed to play the game. The lectures will be streamed and uploaded on Twitch, and we'll also have a Discord server to provide support, so fear not if you are participating remotely! We also run a separate Beginners' Tournament (with its own prize pool!) for first-time MIT competitors.
How do I get MIT course credit for Battlecode?
In addition to registering on our competition website once IAP (January) starts, you must also pre-register for 6.147 through MIT's system. In order to get credit, you must create a player that is able to defeat a dev-created reference player (we promise not to make it too hard to beat).
How do I register for Battlecode?
Registration for Battlecode 2022 is open! You can also join our mailing list for updates!
What is the tournament format?
We hold several tournaments throughout the month of January. The penultimate tournament will determine the finalists, who will compete at MIT in the Final Tournament.
Where can I read more about Battlecode?
Battlecode has existed for twenty years, so the internet is full of Battlecode knowledge. Read two-time winner Greg McGlynn's list of Battlecode links, a Reddit AMA from 2017, and an old but good blog post by former competitor and dev Cory Li. It is a tradition for competitors to write post-mortems and open source their bots at the end of every competition cycle — find those in the Past Years section on this page.
Help! I have more questions.
Feel free to email us at firstname.lastname@example.org!
Our sponsors help make Battlecode happen every year!
To find out more about sponsoring Battlecode, email us at email@example.com. Our sponsors have a unique opportunity to recruit from MIT's (and the world's) very brightest coders. You can also find out more about MIT's recruiting guidelines.
Battlecode 2022 Platinum Sponsor
Jump Crypto is committed to catalyzing the growth of cryptonetworks, both as a builder of critical infrastructure and as a substantial participant in emerging Decentralized Finance protocols. We're builders, researchers, and investors who take a long-term view of crypto's prospects and operate to unlock the full potential of open, community-driven networks. We've been active in the crypto world since 2015; today, we play an important role in the development of some of the largest and most innovative crypto communities. We are eager to meet fellow builders who are interested in contributing to a fast-moving team in a rapidly-growing ecosystem.
Jump Crypto is the crypto division of Jump Trading Group, a research driven quantitative trading firm that's one of the largest traders by volume across traditional asset classes. For more on our history, culture and the road ahead, check out our website at https://jumpcrypto.com/.
Battlecode 2022 Gold Sponsors
Symbotic’s talented and diverse workforce develops disruptive robotic solutions for warehouse automation and supply chain transformation, drives results and focuses on customer satisfaction. Our modular and scalable solutions utilize existing space and high-speed robotics combined with proprietary software and technology.
Since forming in 2007, Symbotic has grown to over 800 employees nationally and supports an impressive, high-profile customer base. We seek candidates who are passionate about our solution and approach problem solving with a creative mind and a commitment to excellence. If you seek a challenge and want to impact the way the world distributes product from manufacturers to store shelves, we invite you to join our team.
Battlecode 2022 Silver Sponsors
Adobe gives everyone—from emerging artists to global brands—everything they need to design and deliver exceptional digital experiences. We empower people to create beautiful and powerful images, videos, and apps, and transform how companies interact with customers across every screen.
Adobe Creative Cloud, Document Cloud, and Experience Cloud bring together our design expertise with customer intelligence to deliver experiences that get results. With a robust platform that’s powered by advanced science, a thriving community of partners and developers, and a culture that’s passionate about pushing the boundaries of what’s possible with our products, Adobe is changing the world through digital experiences.
For more information, visit Adobe.com.
AEye is the premier provider of next generation, high-performance LiDAR systems for vehicle autonomy, advanced driver-assistance systems (ADAS), and robotic vision applications.
AEye’s software-driven system leverages deterministic AI to capture more intelligent information with less data, enabling faster, more accurate, and more reliable perception for everything that moves. Together with its global manufacturing partners, AEye delivers sensors at scale that meet the diverse performance and functional requirements of autonomous and partially automated applications, ensuring safety.
Hudson River Trading (HRT) brings a scientific approach to trading financial products. We have built one of the world's most sophisticated computing environments for research and development. Our researchers come from backgrounds in math, computer science, statistics, physics, and engineering and are at the forefront of innovation in the world of algorithmic trading.
We’re a community of self-starters who are motivated by the excitement of being at the cutting edge of automated trading. We’re friends and colleagues, whether we are sharing a meal, playing the latest board game, or writing elegant code. We embrace a culture of togetherness that extends far beyond the walls of our office.
Jane Street is a quantitative trading firm with offices worldwide. We hire smart, humble people who love to solve problems, build systems, and test theories. You’ll learn something new every day in our office – whether it’s connecting with a colleague to share perspectives, or participating in a talk, class, or game night. Our success is driven by our people and we never stop improving.
QuantCo is a fast-growing tech company founded by four Harvard and Stanford graduates. Our global team of quantitative researchers and developers leverages expertise in machine learning, software engineering, and econometrics to develop solutions for algorithmic pricing, high-dimensional forecasting, and data-driven claims management. Our corporate partners are some of the largest insurance, e-commerce, and healthcare organizations in the world.
Battlecode 2022 Bronze Sponsors
Citadel is one of the world’s leading investment managers and Citadel Securities is one of the world’s top market makers – two firms that share one culture of excellence, continuous learning, and a shared commitment to attracting and developing the best and brightest talent.
We are the D. E. Shaw group, a global investment and technology development firm. Academic culture. Real-world challenges. The excitement of a startup with the resources of an industry leader. Whatever brings you here, this is a place where extraordinary and diverse minds come together. To discover. To create. To build.
Meta is defined by our unique culture – one that rewards impact. We encourage our people to be bold and solve the problems they care most about. Meta employees work in small teams that move fast and iterate to develop new products. Together, we help others build stronger communities – and we're just getting started.
Class of 2024
Class of 2025
Class of 2023
Gaurav AryaTeam Lead
Class of 2024
Pranali VaniTeam Lead
Class of 2023
Ryan ChangGame engine
Class of 2025
Mark JabbourTeam Lead
Class of 2023
Aidan Blum LevineTeam Lead
Class of 2025
Nathan KimCompetition website
Class of 2022