nettoe — Networked version of Tic Tac Toe for the console.


nettoe [OPTIONS]


netToe is a console-based version of the classic game "Tic Tac Toe". It is playable against computer AI, against a player on the same machine, or against another player over the network.


-4, --ipv4
only IPv4 networking
-6, --ipv6
only IPv6 networking
-nc, --no-colors
disable colors
-nb, --no-beep
disable beeps
-h, --help
display usage hints, then exit
-v, --version
output version information, then exit

How to play via network

First decide who will host the game: you or your opponent. The hosting player must next do the following.
Start nettoe.
Pick the third option (Two players over network) of the Main Menu.
Choose the first option (Host the Game) at the Network Game Menu.
Type name, or nickname.
Communicate the IP address to the other player. Hostnames work, if registered. We hope you know how to get your own IP address.
Wait for the other player to connect to your host.

Now the other player, the one connecting to the game server, must:

Enjoy yourselves. If you have any problem, just let us know.

Network ports

netToe uses TCP port 7501 as listening port of the server engine, unless configured otherwise during build time. Use "nettoe -v" to display the configured port.

That port must therefore be usable as destination port over the network. Otherwise remote games would not be possible. For a local game this is of course mostly irrelevant, but filtering firewalls might intercept connections in general.

Using the ai modes

netToe offers a mode of play where the computer acts as opponent with some limited built-in abilities to simulate dynamic decisions. Three levels of AI strength are made available:
The weaker level first checks a small set of blocking moves, then some winning moves, and falls back to simple moves in a fixed priority order. Since neither set is adaptive, the computer is easily fooled.
The normal level uses slightly larger sets of moves at each step, but is most importantly playing more aggressively than the weaker level does. It happens in the sense that initial checks are for winning moves, only later falling back to blocking moves. This avoids some obvious counterfeit strategy by a human player.
The better of the three levels is implemented differently. Its first action is to scan a complete set of winning moves. That leading nowhere, it scans through all possible blocking moves, and finally falls back to an ordered list of simple moves. Since not even this level of play is using a look-ahead search, a human player can set up traps, but finding those already demands a fair amount of insight into the game!

There are plans for a further level using a look-ahead search of depth two. This would improve the usefulness of netToe as an educational tool. A further level, which is learning from past plays within each session, could also be an interesting enhancement.


The latest version of this program can be found at


Report bugs to <>. For a list of known bugs, see the BUGS file in the netToe source package.


netToe is written by Gabriele Giorgetti <> and by Mats Erik Andersson <>.

This manual page was initially written by Andras Bali <>, for the Debian GNU/Linux system, and was later rewritten by Gabriele Giorgetti to be distributed in the netToe source package.