Sea Wars IV is a client-server network game written in Java.
Each player uses a client to make a TCP connection to a server, which
coordinates the game. Using a network protocol creates a clean separation
between the core game logic and the players; this makes it easier to use the
same software to play games of human vs. human, computer vs. human, and computer
vs. computer. The server doesn't know what kind of intelligence is directing
the clients and each player doesn't know what kind of intelligence it is up against.