This project began with the reverse engineering of Quake 1's network protocol and data files for fun, before any official or unofficial specifications were available. It led to the development of several related projects, including a map viewer and an autonomous robot that ran on a public server for a period of time. After Quake's source code was released to the public, the project was further developed into a final undergraduate project, which extended the game with additional functionality inspired by the bot.
The aim of the undergraduate project was to develop an automaton that simulated the behavior of players in 3D first-person games. In the first phase, the automaton was designed to navigate a given graph, reach certain objectives that it decided itself according to its knowledge of the game, and complete the most by itself with minimum rules entered. The goal to be achieved was for the automaton to blend in with real players without being recognized. When completed, this experiment in artificial life could possibly use fuzzy logic, genetic algorithms, computer graphics, graph theory, and the UDP network protocol.