Creating a Single Player Game using Vanilla Quake 3 |
by Dairyman |
One thing missing from the Quake 3 community is the true single player game. The standard Quake 3 single player game is actually a team game with bots for the other team members. A true single player game has the player interacting with AI controlled characters and the levels are linear, with clearly defined starting and ending points. When the player reaches the end point of a level he is advanced to the starting point of another level, until the game reaches its conclusion.
A few Quake 3 Mods have attempted this style of game but only one (that I know of) has released its source code. This is The Dark Conjunction mod and their source code will be used as the basis for this tutorial. Other code (for the load/save game system) has been adapted from the single player versions of Return to Castle Wolfenstein and Star Trek : Elite Force.
This tutorial wll break down the process of modifying the source code into distinct steps, each designed to achieve a particular goal. Code changes must be made to both the client and server portions of the game to achieve these goals.
Single Player Game Tutorial
At this point we have the basics of a complete single player game. The player is placed in the game at the starting point with only the attributes we want him to have, he can progress through the level and move to other levels when certain trigger conditions are met and can restart a level if he happens to die. The game can be saved at any point in the level and can be loaded again so the player starts at that point.
The one major part of a single player game that is still missing is the AI controlled characters that provide the friends and enemies of the player. In the next section of this tutorial we will look at adding the Dark Conjunction AI controlled characters to our game.
With AI controlled characters avalible in the game we are almost complete. There are a few entities we can add that will make our game play a little better.
This finishes our single player game conversion tutorial for Quake 3. In order to create a complete single player game you must still add any new entities the game requires, add any new player weapons and implement a Hud that matches the style of the game. These will not be covered here.
The source files that need to be added to the game and cgame modules, plus the media for the AI controlled characters, are avalible on the Downloads page.
The complete game and cgame module source is avalible on the Downloads page, as well as a set of menu scripts and media which can be used as the UI for a single player game.
Expanding the AI Controlled Characters
A set of tutorials that show how to expand the Dark Conjunction AI controlled character code to include new NPCs and features.
On the Downloads page for each tutorial there is available a package that contains the NPC model, support files and sounds.