Difference between revisions of "TheArtOfWar"
Jump to navigation
Jump to search
m |
(Fix broken links and update) |
||
Line 5: | Line 5: | ||
| movement = [[Anti-Gravity Movement]] | | movement = [[Anti-Gravity Movement]] | ||
| current_version = 1.2 | | current_version = 1.2 | ||
− | | download_link = http:// | + | | download_link = http://robocode-archive.strangeautomata.com/robots/tzu.TheArtOfWar_1.2.jar |
| isOpenSource = yes | | isOpenSource = yes | ||
| isOneOnOne = yes | | isOneOnOne = yes | ||
Line 14: | Line 14: | ||
; What's special about it? | ; What's special about it? | ||
− | : It was one of the very best bots in the very earliest days of Robocode. It placed in the top 8 in the [[ | + | : It was one of the very best bots in the very earliest days of Robocode. It placed in the top 8 in the [[RoboRumble]]. |
; How competitive is it? | ; How competitive is it? | ||
− | : It is | + | : It is #380 in [[One on One|1v1]] and #54 in [[Melee]] in the [[RoboRumble]]. It has not been updated since February, 2002. |
== Strategy == | == Strategy == | ||
Line 39: | Line 39: | ||
; Can I use your code? | ; Can I use your code? | ||
− | : Sure. The source code is available | + | : Sure. The source code is available in the JAR. |
; What's next for your robot? | ; What's next for your robot? | ||
− | : I think I will leave it alone. It serves as a useful milestone for robot development and just goes to show you how far robots have advanced since TheArtOfWar was written. It used to rank near the top; now it's lucky if it cracks the top | + | : I think I will leave it alone. It serves as a useful milestone for robot development and just goes to show you how far robots have advanced since TheArtOfWar was written. It used to rank near the top; now it's lucky if it cracks the top 300 in [[One on One|one-on-one]]. It's still half-decent in [[melee]]. |
; What other robot(s) is it based on? | ; What other robot(s) is it based on? | ||
− | : TheArtOfWar is based on two previous robots I wrote: [http://www.geocities.com/evilsimon/RayBot/RayBot_Description.html RayBot] and a one-on-one robot called, oddly enough, "One". | + | : TheArtOfWar is based on two previous robots I wrote: [https://web.archive.org/web/20091027162353/http://www.geocities.com/evilsimon/RayBot/RayBot_Description.html RayBot] and a one-on-one robot called, oddly enough, "One". |
− | : TheArtOfWar is open source and the code for it can be found | + | : TheArtOfWar is open source and the code for it can be found in the JAR. You can read more about it at [https://web.archive.org/web/20040211130751/http://members.rogers.com/theartofwar/ The Art of War Home Page]. |
Revision as of 01:28, 13 August 2017
TheArtOfWar | |
Author(s) | Ray Vermette |
Extends | AdvancedRobot |
Targeting | Virtual Guns |
Movement | Anti-Gravity Movement |
Current Version | 1.2 |
Download |
Background Information
- What's special about it?
- It was one of the very best bots in the very earliest days of Robocode. It placed in the top 8 in the RoboRumble.
- How competitive is it?
- It is #380 in 1v1 and #54 in Melee in the RoboRumble. It has not been updated since February, 2002.
Strategy
- How does it move?
- Its movement is based almost entirely on AntiGravity. AntiGravity points are assigned to enemy robots, the predicted paths of enemy bullets, walls, and the battlefield center in a melee battle.
- How does it fire?
- TheArtOfWar has a pretty complex algorithm for Targeting and selecting fire power, which in retrospect, could be much simpler. It uses a number of different aiming techniques, and keeps track of hits and misses to help it select the best aiming algorithm for each opponent.
- How does it dodge bullets?
- When TheArtOfWar detects a drop in the opponent's energy which might indicate a bullet being fired, it plots three possible bullet paths: one fired using linear aiming (i.e.: straight at TheArtOfWar's current position), one fired based on TheArtOfWar's average speed, and one using an iterative aiming technique. If AntiGravity forces were assigned to the bullets' current positions, the combined forces would cause TheArtOfWar to move backwards (bad!) instead of dodging left or right (good!), so I assign AntiGravity forces to the points where I expect the bullets to impact TheArtOfWar.
- How does the melee strategy differ from one-on-one strategy?
- If I remember correctly, the only difference is in melee, TheArtOfWar assigns a weak AntiGravity force to the center of the battlefield to encourage it to stay in the corners (where it is safe!).
Additional Information
- Where did you get the name?
- From "The Art Of War" by Sun Tzu, the world's oldest military treatise.
- Can I use your code?
- Sure. The source code is available in the JAR.
- What's next for your robot?
- I think I will leave it alone. It serves as a useful milestone for robot development and just goes to show you how far robots have advanced since TheArtOfWar was written. It used to rank near the top; now it's lucky if it cracks the top 300 in one-on-one. It's still half-decent in melee.
- What other robot(s) is it based on?
- TheArtOfWar is based on two previous robots I wrote: RayBot and a one-on-one robot called, oddly enough, "One".
- TheArtOfWar is open source and the code for it can be found in the JAR. You can read more about it at The Art of War Home Page.