Robocode Tank Royale
Build the best - destroy the rest!
Welcome
Welcome to the Robocode docs. These docs are meant for people who are new to Robocode, as well as a reference guide to various aspects of the Robocode Tank Royale programming game.
Get Started
On this page you can pick articles on the menu on the left side to read about various topics.
If you are new to Robocode, you should start with:
- the Introduction to Robocode, and
- read the Getting Started, and then
- continue to My First Bot to create your first bot.
Learning Roadmap
Robocode mastery is a journey from fundamentals to advanced competitive strategies. We've organized documentation into a clear learning path:
🎯 Foundation (Start Here)
Essential concepts everyone needs:
- Introduction - What is Robocode?
- Installation - Set up your environment
- Getting Started - Core concepts (rounds, turns, energy)
- My First Bot - Create your first bot
- Anatomy of a Bot - Understanding body, gun, and radar
- Coordinates and Angles - Arena coordinate system
- Physics - Movement, rotation, and bullet mechanics
🔧 Intermediate Skills
Build competent bots with solid fundamentals:
- Beyond the Basics - Event handling and logic flow
- Collision Mechanics - Wall/bot collision handling
- Testing & Debugging Guide - Test strategies and debugging
- Performance Optimization - Write efficient code
- Custom Game Setup - Configure battles and test scenarios
- Team Strategies - Team communication and coordination basics
📚 Advanced Topics (The Book of Robocode)
Ready for advanced competitive strategies? The Tank Royale documentation covers fundamentals; * The Book of Robocode* takes you to competition level:
- Radar & Scanning - Perfect locks, spinning radar, melee strategies
- Advanced Targeting - GuessFactor targeting, pattern matching, virtual guns
- Movement & Evasion - Wave surfing, anti-gravity, bullet dodging
- Statistical Targeting - Segmentation, statistics-based targeting
- Energy & Scoring - Strategic resource management
📖 The Book of Robocode
The Book of Robocode is a comprehensive guide covering Robocode as well as Robocode Tank Royale—from basics to advanced strategies like wave surfing, guess-factor targeting, and movement techniques. It builds on two decades of community knowledge and foundational research from RoboWiki contributors.
🖥️ Tank Royale Viewer
Want to visualize battles in style? Check out the Tank Royale Viewer—an amazing and beautiful web-based viewer for watching Robocode Tank Royale matches in real-time! Created by Jan Durovec (who also built the Recorder for Tank Royale's replay feature), this tool brings your battles to life with an interactive, modern interface.
Perfect for:
- 🏆 Displaying live battles on big monitors during competitions and tournaments
- 📊 Understanding bot strategies and showcasing championship matches
Ideal for spectators, broadcasters, and tournament organizers! ⚡
Give the Tank Royale Viewer a try!
Thanks to the contributors
Huge thanks to every contributor — you make this project shine! 🙌
Support Robocode
If you are a fan of Robocode, you can support the project and me by buying some coffee 😊
Thank you, JetBrains, for supporting Open Source
Thank you, JetBrains, for supporting non-commercial Open Source projects by providing licenses for Open Source development, including Robocode Tank Royale. ❤️
This project makes use of these great products from JetBrains for Java, Kotlin, C#, Python, and web development:
