| The Underdark is the mythical place beneath the surface of Faerun, and is home to the Drow I'm in high school, and find robocode to be a fun way to expand my ability to problem solve, and also gives me a way to learn Java. This wiki is the best reference in the world. Bots Made: *UnderDark3 *UnderDark4 *Katana *BlueMind Comments:You might have to make a working Robot-compatible GF gun before you can beat Girl ;-) Also, I might make it harder soon, as I have to release my version that beats Krazy again. Silly Alcatraz and beating Girl without telling me about it... Note that he did it with my gun, of course :-p -- Kawigi | 
| Catalog of DesignPatterns used in X2*AdapterPattern? *BlackBoardPattern? *BuilderPattern? *CommandPattern? *DecoratorPattern? *FactoryPattern? combined with FlyWeightPattern? *SingletonPattern? *StrategyPattern? *TemplatePattern? | 
| What happened to UnderDark2?? :-) -- Jokester | 
| other DesignPatterns used in Toad and present in X2 through Toad's adapters *CompositePattern? *FacadePattern? *VisitorPattern? | 
| UnderDark & UnderDark2? were in my Robotics's team internal RoboCode comp (Which is what introduced me to RoboCode). UnderDark was my first robot ever, and it stank! UnderDark2? used LinearTargeting and PerpendicularMovement, and won! UnderDark2? evolved into UnderDark3, and thus: was not released into the clear. BTW: The competition rules were: "Extends Robot only, on a 1000x1000x10" | 
| AdapterPattern?This pattern allows X2 to use Toad's gun and movement. (not used in the rumble releases) BlackBoardPattern?This pattern was already used in FloatingTadpole fo its VirtualGuns. In X2 it's used to switch from one movement algorithm to another. BuilderPattern?This pattern is used when creating enemy's representation, the gun and movements add their parts to the basic representation created by the EnemyTracker.CommandPattern?This pattern is used in X2 for team communicationm each TeamMessageis a command object.CompositePattern?This pattern is used in Toad to represent the SegmentationTree.DecoratorPattern?This pattern is used in X2 to add the BlackBoardPattern? to a movement, in Enemyit adds features for the gun and the movements.FacadePattern?This pattern provide a simple interface for a complex system, like the SementationTreein Toad.FactoryPattern? combined with FlyWeightPattern?Those patterns are used in X2 for creating and managing MovementStrategy,GunStrategyandRadarStrategy. Those patterns allow to have single instances for each strategy which are all accessed through their own factory.SingletonPattern?This pattern is used extensively for all objects that should only have one instance. StrategyPattern?This pattern is used in X2 for movement, gun and radar behaviour. TemplatePattern?This pattern is used extensively in X2 for all main component of the bot: MovementStrategy,GunStrategy,RadarStrategy,EnemyTracker,Enemy,StatKeeperwhich all implements thePluggableinterface.VisitorPattern?This pattern is used in Toad for all the operations on the SegmentationTree.CommentsYou gave a totally new meaning to the term 'patternmatcher' :) --Loki | 
other DesignPatterns used in Toad and present in X2 through Toad's adapters
EnemyTracker.
TeamMessage is a command object.
SegmentationTree.
Enemy it adds features for the gun and the movements.
SementationTree in Toad.
MovementStrategy, GunStrategy and RadarStrategy. Those patterns allow to have single instances for each strategy which are all accessed through their own factory.
MovementStrategy, GunStrategy , RadarStrategy, EnemyTracker, Enemy, StatKeeper which all implements the Pluggable interface.
SegmentationTree.