Development:Getting Started: Difference between revisions

From Spring
Jump to navigationJump to search
Abma (talk | contribs)
Jk (talk | contribs)
mNo edit summary
Line 18: Line 18:
However please note that badly designed code (code created by a C++ novice for example), even if working will likely not be included in the spring code. Spring is a large project, and therefore it is necessary to stay away from hack jobs and create general solutions to problems.
However please note that badly designed code (code created by a C++ novice for example), even if working will likely not be included in the spring code. Spring is a large project, and therefore it is necessary to stay away from hack jobs and create general solutions to problems.


==Keep track what others do==
=Source Code Documentation=
If you develop with others, you need to know what they do. You can browse the source [http://github.com/spring/spring/tree/master at our github-page], and there is a [http://github.com/feeds/spring/commits/spring/master commit newsfeed].
 
==Source Code Documentation==
The doxygen documentation can provide an overwiev about the source, directory structure and its dependencies. Unfortunately, there s no server runnign it, so you need to make them on your own, to do this, install doxygen and run "doxygen" in spring source directory (will take some time).
The doxygen documentation can provide an overwiev about the source, directory structure and its dependencies. Unfortunately, there s no server runnign it, so you need to make them on your own, to do this, install doxygen and run "doxygen" in spring source directory (will take some time).


Line 30: Line 27:
Before starting to make modifications to the source, take a look at the [[development guidelines]] which outlines some important things to think about. To find something interesting to work on, look for todos in the [http://springrts.com/phpbb/viewforum.php?f=60 forum]. You can also check in the forums to see what others are doing. If you do edit the code, please add [[Doxygen style comments]] to the code, which will then enhance the source code documentation.
Before starting to make modifications to the source, take a look at the [[development guidelines]] which outlines some important things to think about. To find something interesting to work on, look for todos in the [http://springrts.com/phpbb/viewforum.php?f=60 forum]. You can also check in the forums to see what others are doing. If you do edit the code, please add [[Doxygen style comments]] to the code, which will then enhance the source code documentation.


==How to get your code included==
==Keep track what others do==
If you develop with others, you need to know what they do. You can browse the source [http://github.com/spring/spring/tree/master at our github-page], and there is a [http://github.com/feeds/spring/commits/spring/master commit newsfeed].
 
==Buildbot and Stacktrace translator==
A buildbot server is [http://springrts.com:7778/waterfall?reload=60 here] available to automaticaly compile Spring, the default AIs and make the installer. It can also translate stacktraces directly from uploaded infolog.txt files.
 
=How to get your code included=
If you create something that you think should be included in the official source tree: make a fork on github.com of spring (master branch) and ask in the  [http://springrts.com/phpbb/viewforum.php?f=12 development forum] to get it included / feedback.
If you create something that you think should be included in the official source tree: make a fork on github.com of spring (master branch) and ask in the  [http://springrts.com/phpbb/viewforum.php?f=12 development forum] to get it included / feedback.


It's better to make a fork of the master branch and not of the outdated release-branch.
It's better to make a fork of the master branch and not of the outdated release-branch.


==Buildbot and Stacktrace translator==
=Spring Engine TODO list=
A buildbot server is [http://springrts.com:7778/waterfall?reload=60 here] available to automaticaly compile Spring, the default AIs and make the installer. It can also translate stacktraces directly from uploaded infolog.txt files.
 
==Spring Engine TODO list==
If you want to code something, look into the [http://springrts.com/phpbb/viewforum.php?f=60 New Developers Forum] for TODOs.
If you want to code something, look into the [http://springrts.com/phpbb/viewforum.php?f=60 New Developers Forum] for TODOs.
There is also a [http://spring.clan-sy.com/phpbb/viewforum.php?f=21 feature request forum], which may give you some ideas. Don't be overwhelmed by the sheer number of (silly) requests though!
There is also a [http://spring.clan-sy.com/phpbb/viewforum.php?f=21 feature request forum], which may give you some ideas. Don't be overwhelmed by the sheer number of (silly) requests though!


==Development links==
=Development links=
 
* [http://github.com/spring/spring/ View the latest source in a web browser]
* [http://github.com/spring/spring/ View the latest source in a web browser]
* [http://springrts.com/mantis/ Bug Tracking System]
* [http://springrts.com/mantis/ Bug Tracking System]

Revision as of 18:11, 15 April 2011

Development < Getting Started

Starting Spring Development

NOTE: Outlined below is information on assisting with the development of the Spring source itself. For information about developing a mod (units, widgets, maps, etc.) see the Mod_and_Unit_development page.

Even if you are developing a mod, it is highly recommended that you get the engine source. Engine source + full text search: DO IT.

Overview

To start development, you will need:

  1. To read the Coding_Standards
  2. The latest version of the source
  3. A good code manipulation program: Development_IDEs
  4. Compiling your modified source (see instructions above)

Learning C++

You will need to know C++ to modify or understand Spring's source code. If you are interested in learning C++, see Learning_CPP

However please note that badly designed code (code created by a C++ novice for example), even if working will likely not be included in the spring code. Spring is a large project, and therefore it is necessary to stay away from hack jobs and create general solutions to problems.

Source Code Documentation

The doxygen documentation can provide an overwiev about the source, directory structure and its dependencies. Unfortunately, there s no server runnign it, so you need to make them on your own, to do this, install doxygen and run "doxygen" in spring source directory (will take some time).

An explanation on how the code is executed in game can be found in the Spring Engine Code page.

Development Guidelines

Before starting to make modifications to the source, take a look at the development guidelines which outlines some important things to think about. To find something interesting to work on, look for todos in the forum. You can also check in the forums to see what others are doing. If you do edit the code, please add Doxygen style comments to the code, which will then enhance the source code documentation.

Keep track what others do

If you develop with others, you need to know what they do. You can browse the source at our github-page, and there is a commit newsfeed.

Buildbot and Stacktrace translator

A buildbot server is here available to automaticaly compile Spring, the default AIs and make the installer. It can also translate stacktraces directly from uploaded infolog.txt files.

How to get your code included

If you create something that you think should be included in the official source tree: make a fork on github.com of spring (master branch) and ask in the development forum to get it included / feedback.

It's better to make a fork of the master branch and not of the outdated release-branch.

Spring Engine TODO list

If you want to code something, look into the New Developers Forum for TODOs. There is also a feature request forum, which may give you some ideas. Don't be overwhelmed by the sheer number of (silly) requests though!

Development links

Old: