# Development for Bos Wars

This file should give you some information to help with development of Stratagus.

## IRC - Internet Relay Chat

You can try to meet other Bos Wars developers and users on the FreeNode IRC Network, in the #bos channel.

## Mailing list

If you want to help with development for Stratagus you should join the stratagus-devel mailing list.

## Bugs and tasks

You can find known bugs on the project pages for Bos Wars.

Before starting on a bug or task, please ask on the mailing list or in the IRC channel whether anybody else is already working on it.

## Building Bos Wars

### Installing the Subversion client

If you want to help develop, you should use Subversion. The online book Version Control with Subversion will help you master Subversion.

### Getting Bos Wars from Subversion

#### The subversion repository of Bos Wars has two main directories:

- bos - The Bos Wars sources

  The source to the Stratagus engine. The source is licenced under the GNU General Public License. This contains the sources needed for development.

- htdocs - The Bos Wars Website

  The website is stored in subversion for easy updating and version management by multiple people. This module is not needed unless you plan to update the website

#### The bos directory is itself divided into 3 subdirectories:

- trunk - The main development branch. Almost all activity happens in this directory.
- branches - Special development branches.
- tags - Snapshots of the code of special interest like releases.

#### How do I get the latest source code of Bos Wars?

For example:

      svn://bos.seul.org/svn/bos/bos/trunk

This is done only once. To update your working copy, go into the directory and type 'svn up'.

### Getting Bos Warss without Subversion

Only releases are made outside of Subversion. If you wish to be involved with development, you should obtain the sources via Subversion. Subversion usually remains quite stable and is easier for you to keep up to date. Release versions of stratagus are available here.

### Building Bos Wars

You can find instructions for compiling Bos Wars at install.html.
Since you already have a copy of the source, you may skip ahead to step 2.

## Source code documentation

The engine has tagged source documentation.

You need either DoxyGen or DOC++ to generate source code documentation.

### Tags used in source code

We use the doc++ tags:

Multi line source code documentation:

/** ... */

Single line source code documentation:

/// ...

Start grouping:

//@{ or /*@{*/

End grouping:

//@} or /*@}*/

- @name
  Name of file or group.
- @param
  Describes function/macro parameter
- @return
  Describes function return
- @see
  Links to other section

Please read the doxygen/doc++ documentation.

## Sending a patch

Once you have completed some work, you will probably want it to be included in the main Bos Wars source.

Follow these steps:

- svn up
- svn diff > your-nickname.diff
- upload 'your-nickname.diff' to the patch tracker.

(C) Copyright 1998-2013 by The Bos Wars Project under the GNU General Public License.
All trademarks and copyrights on this page are owned by their respective owners.