The Spring Engine (also termed SpringRTS and formerly TA Spring), is a game engine for real-time strategy (RTS) video games. The game engine is free and open-source software, subject to the terms of the GNU General Public License v2.0 or later. History The development was initiated by Stefan Johansson, Tomaz Kunaver, and Jelmer Cnossen, members of the Swedish Yankspankers game clan under the name TA Spring. Since 2005 it is being developed by the community. The project aimed originally to bring the gameplay experience of Total Annihilation into three dimensions and to have the game run the mods and third-party units from Total Annihilation. The first release was on July 7, 2007, achieving its initial goals. Since then, the project evolved from a mere TA clone to a general RTS game engine including more flexible features like built-in high-level extensibility through a Lua scripting interface. Most of the games running on the engine (as of December 2010) are focused on multiplayer gameplay. There are also currently a number of single player missions, built on frameworks utilizing the engine's Lua scripting abilities. There are also a large number of skirmish artificial intelligences (AIs), allowing for offline play or extra players in an online game. Software architecture Most Spring Engine-based games are designed to be played online, in multiplayer matches. The Spring Engine uses a deterministic game simulation which is executed simultaneously on all game clients. Only user commands are sent to other players, preventing any active cheating. Multiplayer is supported on both Linux and Windows. A pre-game lobby uses a specially designed protocol similar to that of Internet Relay Chat to facilitate chat, player match-making, and the adjustment of battle options. A number of spring lobby clients exist. The lobbies for the game allow setting up single player games also. This can be done either by using a special single player mode, or using the multiplayer mode with a password and adding bots to the game. Instead of using bots, some games also support special game modes that allow single player gameplay. Most popular in this area are the "chicken" modes of Zero-K and Balanced Annihilation, where a player has to defend against waves of monsters. Since version 0.79, Spring also features missions. A mission editor with advanced functions while being intuitive is bundled with the game. Skirmish AIs (or bots) are needed to get a normal single player game running.