TOS is both a multi-player soccer simulation game and a match simulation engine for on-line soccer management games. TOS can also be used as a tool for multi-agent AI research and education. In this game, human controlled soccer players compete with or cooperate with AI controlled soccer players. The game is implemented in Java using client-server architecture.
You can view a demo game replay right here at TOS REPLAY APPLET. (Sun Java 1.5.* plug in required)
For educational use, please take a look at the TOS tutorial presentation. tos.ppt
TOS source code and binary can be downloaded at TOS project page.
Also, Java3D has to be installed before you can run TOS.
A soccer server sets up a virtual soccer field, simulates all players and a ball, and enforces the laws of the game.
Two kinds of clients can be served by the soccer server. They are players and viewers. Each kind of client can either be a GUI accepting human interaction or an AI program, which can not be distinguished by the soccer server. The server communicates with clients by exchanging LISP-like ASCII strings over UDP sockets. This means that developers can develop clients and even a soccer server by using any type of programming language which has UDP and ASCII string utilities.
As a player client, it receives the visual and auditory sensor information from the soccer server, and sends control and communication commands to the server.
As a viewer client, it receives the visual and auditory sensor information from the soccer server, and sends only communication commands to the server.
The game is written for different interest groups. First of all, soccer fans can play it on-line with their friends, to improve their team strategy and to better understand the tao of their favourite sport game. Secondly, on-line soccer management gamers can use it as a match simulation engine. Thirdly, researchers in AI and Robotics can use it as a test-bed for human-machine mixed multi-agent systems research. Fourthly, students who are interested in computer science/engineering can write AI programs for soccer players to improve their programming skills and practise AI and simulation theories.