The main package of the ai package tree.
{@link net.sf.freecol.server.ai.AIMain} has
the responsibility for creating and managing AI-objects.
An instance of {@link net.sf.freecol.server.ai.AIObject} stores AI-specific information
relating to a single FreeColGameObject
.
Communication with the server
The server uses a Connection
when communicating with the clients.
The subclass {@link net.sf.freecol.server.networking.DummyConnection DummyConnection}
is used for the computer controlled players, in order to avoid unnecessary network traffic.
{@link net.sf.freecol.server.ai.AIInGameInputHandler} handles the messages received on
the DummyConnection
and calls the appropriate methods in
{@link net.sf.freecol.server.ai.AIPlayer}. An example: the method
{@link net.sf.freecol.server.ai.AIPlayer#startWorking} gets invoked when it is the
AI-player's turn.