Britbot
Class List
Here are the classes, structs, unions and interfaces with brief descriptions:
Britbot.AllocationException
Britbot.Simulator.BattleEventThis represents a battle between two ships
Britbot.BotThis class is a bot
Britbot.Simulator.CaptureEventThis Event is called when an island is being captured
Britbot.CommanderA top level manager that does the turn
Britbot.CommanderGaveUpException
Britbot.ConfigHelperAn experienced ally to the commander who does bugger all
Britbot.Simulator.DeCaptureEventThis event is called when an island is switching side to nutral
Britbot.EnemyThis class represents the enemy bot in the game
Britbot.EnemyGroupA class which represents an enemy group
Britbot.ExpIteratorThis class will be used to go over every possible group-target assignment it is like counting in base ten with unclear amount of fingers demo: https://www.youtube.com/watch?v=UIKGV2cTgqA
Britbot.ExtensionsThis class provides various extension methods for the IPirateGame interface
Britbot.Fallback.FallbackBotThis is the fallback bot its execution time must be low
Britbot.GroupRepresents a structure of few of our pirates that have a common goal
Britbot.Simulator.GroupArrivalEventThis event is called when a group (surely) arrives to an island
Britbot.HeadingVectorThis class accumulates direction over large number of turns we assume (0,0) is the left top corner of the screen and that
Britbot.PriorityQueue.HeapPriorityQueue< T >An implementation of a min-Priority Queue using a heap. Has O(1) .Contains()! See https://bitbucket.org/BlueRaja/high-speed-priority-queue-for-c/wiki/Getting%20Started for more information
Britbot.InvalidIteratorDimensionException
Britbot.InvalidLocationException
Britbot.InvalidRingException
Britbot.PriorityQueue.IPriorityQueue< T >The IPriorityQueue interface. This is mainly here for purists, and in case I decide to add more implementations later. For speed purposes, it is actually recommended that you *don't* access the priority queue through this interface, since the JIT can (theoretically?) optimize method calls from concrete-types slightly better
Britbot.ITargetRepresent a target we can, well, target
Britbot.Logger
Britbot.MagicThis class holds the magic numbers we have and may be used for smart in game updates
Britbot.MoverThis class is used for the physical moving of pirates in the game
Britbot.NavigatorThis class will deal with geographical calculations and direction calculation
Britbot.Navigator.NodePrivate class representing each cell of the map
Britbot.NoTargetThis class represents a null target which does nothing this will help us prevent cases of dimensions error due to null priority lists
Britbot.Simulator.PossibleArrivalEventThis represents an arrivale depending on something for example: an enemy group might only come to their island if we begin to capture it
Britbot.PriorityQueue.PriorityQueueNode
Britbot.Simulator.ReviveEvent
Britbot.ScoreA class represent information about a target's score in relation to a specific group
Britbot.Simulator.SimulatedEventA virtual class representing an event in the game (capture, kill, est...) Inherits from PriorityQueueNode because the events are ordered by their time of execution
Britbot.Simulator.SimulatedGameThis class represents a possibility of a game based on an assignment
Britbot.Simulator.SimulatedGroupThis represents a group of pirates (either friendly or enemy)
Britbot.Simulator.SimulatedIsland
Britbot.Simulator.SimulationEndEventThis terminates the calculation by returning true
Britbot.SmartIslandA Class that encapsulates the default Island type and adds important methods to it
Britbot.SpecialOpsManages special game operations (e.x Cloak)
Britbot.ZoneConfigs