Difference between revisions of "BZFlag Source"

From BZFlagWiki
Jump to: navigation, search
m (Reverted edits by 80.99.172.245 (Talk); changed back to last version by JeffM2501)
(External Links: improved display of content)
 
(6 intermediate revisions by 5 users not shown)
Line 1: Line 1:
BZFlag Source code is the C++ source code used by developers to maintain the game.
+
The BZFlag source code is predominantly written in C/C++and is used by developers to implement the game client, server, and services.
  
 
==Overview==
 
==Overview==
The source code to [http://www.bzflag.org BZFlag] is released under the [http://en.wikipedia.org/wiki/LGPL GNU Lesser General Public License] and is freely available to anyone.
+
The source code to [http://www.bzflag.org BZFlag] is released as a collective work under the [http://en.wikipedia.org/wiki/LGPL GNU Lesser General Public License] and is freely available to anyone.
  
 
BZFlag is primarily written in the [http://en.wikipedia.org/wiki/C%2B%2B C++] language, but does contain some modules written in [http://en.wikipedia.org/wiki/Perl Perl], [http://en.wikipedia.org/wiki/Php PHP], and [http://en.wikipedia.org/wiki/Python_%28programming_language%29 Python].
 
BZFlag is primarily written in the [http://en.wikipedia.org/wiki/C%2B%2B C++] language, but does contain some modules written in [http://en.wikipedia.org/wiki/Perl Perl], [http://en.wikipedia.org/wiki/Php PHP], and [http://en.wikipedia.org/wiki/Python_%28programming_language%29 Python].
  
Developers use the source code to modify and extend the features of the game. It is also used by a number of players to [[:Category:Compiling|compile]] the software into it's play-able form.
+
Developers use the source code to modify and extend the features of the game. It is also used by a number of players to [[:Category:Compiling|compile]] the software into its playable form.
  
 
==Organization==
 
==Organization==
Line 39: Line 39:
 
The source code is available in a number of ways.
 
The source code is available in a number of ways.
  
The simplest way is to download one of the source code archives that is released with each major release of the software. These are available at the [http://sourceforge.net/project/showfiles.php?group_id=3248&package_id=3165 BZFlag SourceForge Downloads Page]. There is an archive of the source code used to build every version of the game. The source archives are provided in Unix line ending format ( .tar.gz and .tar.bz ) as well as Windows line ending format ( .zip ). The archives contain instructions on how to compile the software directly. Additional software such as a C++ compiler will be needed.
+
The simplest way is to download one of the source code archives that is released with each major release of the software. These are available at the [https://github.com/BZFlag-Dev/bzflag.git BZFlag GitHub page]. There is an archive of the source code used to build every version of the game. The source archives are provided in Unix line ending format ( .tar.gz and .tar.bz ) as well as Windows line ending format ( .zip ). The archives contain instructions on how to compile the software directly. Additional software such as a C++ compiler will be needed.
  
The source code for BZFlag is always changing and being developed. The developers keep the current code for the project in a SVN repository located at SourceForge. Please see the [[BZFlag SVN]] page for information on how to access the SVN system.
+
The source code for BZFlag is always changing and being developed. The developers keep the current code for the project in a Git repository located at GitHub. Please see the [[BZFlag Git]] page for information on how to access the Git repository.
  
 
==License==
 
==License==
 
The BZFlag source code is licensed under the [http://en.wikipedia.org/wiki/LGPL GNU Lesser General Public License] or LGPL license. This means that anyone is free to use and redistribute the software and it's source code, as long as they follow the license. In order to release a version of the software, or a modified version of the software, a user must also release the source code to the software, as well as any changes they have made to the LGPL source code. This is so that others may benefit from the modifications as well.
 
The BZFlag source code is licensed under the [http://en.wikipedia.org/wiki/LGPL GNU Lesser General Public License] or LGPL license. This means that anyone is free to use and redistribute the software and it's source code, as long as they follow the license. In order to release a version of the software, or a modified version of the software, a user must also release the source code to the software, as well as any changes they have made to the LGPL source code. This is so that others may benefit from the modifications as well.
  
==Patches==
+
The main BZFlag website is licensed under the [https://bitbucket.org/blast007/bzflag_main_website/src/tip/COPYING MIT License].
A number of users have submitted changes to the source code as [http://en.wikipedia.org/wiki/Patch_%28computing%29 patches]. These patches are source code modifications that can ether fix a bug or add a feature. The development team will periodically review all patches submitted to the [http://sourceforge.net/tracker/?group_id=3248&atid=303248 SourceForge Patch Tracker] and apply desired patches to the mainline source code.
+
  
 
==History==
 
==History==
 
The BZFlag source code has been open source and hosted by SourceForge since March 2000. Before this the source code was the proprietary property of [[Chris Schoeneman]] who began developing the game in 1992 at the Cornell Program of Computer Graphics for the SGI line of graphic workstations.
 
The BZFlag source code has been open source and hosted by SourceForge since March 2000. Before this the source code was the proprietary property of [[Chris Schoeneman]] who began developing the game in 1992 at the Cornell Program of Computer Graphics for the SGI line of graphic workstations.
 +
BZFlag is now currently hosted on GitHub.
  
 
BZFlag is in no way related to the commercial game [http://en.wikipedia.org/wiki/Battlezone "BATTLEZONE"] by [http://en.wikipedia.org/wiki/Atari Atari, Inc], it was simply inspired by it. They do not share any code or intellectual property.
 
BZFlag is in no way related to the commercial game [http://en.wikipedia.org/wiki/Battlezone "BATTLEZONE"] by [http://en.wikipedia.org/wiki/Atari Atari, Inc], it was simply inspired by it. They do not share any code or intellectual property.
  
 
==See also==
 
==See also==
[[BZFlag SVN]]
+
[[BZFlag Git]]
  
 
==External Links==
 
==External Links==
[http://www.gnu.org/copyleft/lesser.html GNU Lesser General Public License]
+
* [http://www.gnu.org/copyleft/lesser.html GNU Lesser General Public License]
 
+
* [https://github.com/BZFlag-Dev/bzflag BZFlag Source Code Git Repository]
[http://bzflag.svn.sourceforge.net/viewvc/bzflag/ BZFlag Source Code Subversion Repository]
+
* [https://bitbucket.org/blast007/bzflag_main_website/overview BZFlag Main Website Mercurial Repository].
  
 
[[Category:Development]]
 
[[Category:Development]]
 
[[Category:Compiling]]
 
[[Category:Compiling]]

Latest revision as of 01:59, 1 December 2016

The BZFlag source code is predominantly written in C/C++and is used by developers to implement the game client, server, and services.

Overview[edit]

The source code to BZFlag is released as a collective work under the GNU Lesser General Public License and is freely available to anyone.

BZFlag is primarily written in the C++ language, but does contain some modules written in Perl, PHP, and Python.

Developers use the source code to modify and extend the features of the game. It is also used by a number of players to compile the software into its playable form.

Organization[edit]

The BZFlag source code is organized into a number of projects or sub sections, to try and keep the software somewhat modular.

There are three primary projects that make up the sofware.

  • BZFlag: The main game client.
  • BZFS : The game server.
  • BZAdmin : A command line administration tool for server owners.

These three projects build the three applications that make up the software.

A number of other smaller projects are used for common code that is shared between the three main projects. These are:

  • 3D : Utilities for drawing the Three Dimensional view in the client
  • common : Shared general code
  • date : version and build date stamps
  • game : shared game logic
  • geometry : 3D geometry and OpenGL code for the Three Dimensional view in the client
  • mediafile : external file loaders for images and sounds
  • net : networking code
  • obstacle : collision detection
  • ogl : common OpenGL utilities
  • platform : OS specific implementations of low level features ( input, window management, etc.. )
  • scene : render culling and scene management

BZFlag also includes it's own copies of a few third party libs. These include:

  • c-ares : an asynchronous DNS resolver
  • regex : a text parsing library
  • zlib : a compression library.

Releases and Distribution[edit]

The source code is available in a number of ways.

The simplest way is to download one of the source code archives that is released with each major release of the software. These are available at the BZFlag GitHub page. There is an archive of the source code used to build every version of the game. The source archives are provided in Unix line ending format ( .tar.gz and .tar.bz ) as well as Windows line ending format ( .zip ). The archives contain instructions on how to compile the software directly. Additional software such as a C++ compiler will be needed.

The source code for BZFlag is always changing and being developed. The developers keep the current code for the project in a Git repository located at GitHub. Please see the BZFlag Git page for information on how to access the Git repository.

License[edit]

The BZFlag source code is licensed under the GNU Lesser General Public License or LGPL license. This means that anyone is free to use and redistribute the software and it's source code, as long as they follow the license. In order to release a version of the software, or a modified version of the software, a user must also release the source code to the software, as well as any changes they have made to the LGPL source code. This is so that others may benefit from the modifications as well.

The main BZFlag website is licensed under the MIT License.

History[edit]

The BZFlag source code has been open source and hosted by SourceForge since March 2000. Before this the source code was the proprietary property of Chris Schoeneman who began developing the game in 1992 at the Cornell Program of Computer Graphics for the SGI line of graphic workstations. BZFlag is now currently hosted on GitHub.

BZFlag is in no way related to the commercial game "BATTLEZONE" by Atari, Inc, it was simply inspired by it. They do not share any code or intellectual property.

See also[edit]

BZFlag Git

External Links[edit]