Welcome to Vega Strike!
There are many ways to contribute - coding, art work, documentation, testing, and much more. This repository covers the core Vega Strike Engine that sits at the heart of it all, and the guidlines here are specific to working with this repository. Please see the `Vega Strike: Community Contribution`_ guidelines for other areas of contribution.
A Vega Strike game consists of two parts:
- The Vega Strike Core Engine
- Game Assets
The Vega Strike Core Engine provides a game engine for space-based games though a C++ game engine that integrates with Python. The Game Assets extend the game engine through the Python interface and related art work, models, etc.
This repository contain the Vega Strike Core Engine. The `Vega Strike: Under the Coldest Sea`_ game assets are separately available - `Vega Strike: UtCS Production`_.
There are a variety of places that the Vega Strike developers have been located throughout the project history. Below are the official places to find the current developers:
- Gitter.im: https://gitter.im/vegastrike/community, https://gitter.im/vegastrike/vegastrike-packaging
- FreeNode IRC: #vegastrike
- Vega Strike Forums: https://forums.vega-strike.org/
Please bear in mind that we are bound to accept contributions under the following licenses. This means that if you submit your work for use in Vega Strike, it will be automatically licensed under GPL unless you state one of the other licenses: * (GPL) GNU General Public License * (LGPL) GNU Lesser General Public License * (GPDL) GNU General Public Documentation License * (PD) Public Domain * (CC-BY) Creative Commons By Attribution license * (CC-SA) Creative Commons Share Alike license * (CC-BY-SA) Creative Commons By Attribution Share Alike license
Please note that we do not allow licenses not mentioned above, in particular: * (CC-NC) Creative Commons Non-Commercial license or any combination with CC-BY and CC-SA
For a more updated list, please see `Vega Srike: Licensing`_.
Information on building Vega Strike is available in the README at https://github.com/vegastrike/Vega-Strike-Engine-Source#compiling-vegastrike.
TODO - The Vega Strike installer stills needs attention. Information to come.
Currently the best way to test the game is to play it. We would like to build out an automated test suite for the Vega Strike Core Engine. The minimum tests required for changes are documented at `Vega Strike: Pull Request Validation`_ and are a series of manual game play tests that we have determined provide sufficient coverage for current development.
Bug, Feature Requests, etc for the Vega Strike Core Engine can be filed at `Vega Strike: Issues`_.
We use a fork model of development for changes with all changes required to be submitted via a pull request in the GitHub repository:
- Fork the GitHub repository into your own GitHub user
- Make your desired changes.
- Ensure you've documented your code.
- Test using the procedures outlined at `Vega Strike: Pull Request Validation`_
- Submit a pull request at `Vega Strike: Pull Requests`_.
Note
Documentation only changes (RST, MD, etc) do not require step 4.
When submitting a Pull Request please document: * Whether you've run the pull request validation tests and any issues you ran into doing so * What you're changing and why * Note any related `Vega Strike: Issues`_ or `Vega Strike: Milestones`_.
`Vega Strike: Gitter - Packgers`_
We directly support packaging on a few platforms. Packaging for addition platforms is more than welcome. We greatly appreciate the work you do as we would not be able to reach our users without you.
Originally Vega Strike was packaged as a single package for the Vega Strike: Under the Coldest Sea game; however, we would like to migrate to using two packages:
- Vega Strike Game Engine
- Vega Strike: Under the Coldest Sea
The Vega Strike Game Engine package would provide the core functionality provided by this repository, and should be of minimal size. The Vega Strike: Under the Coldest Sea package would provide the game assets, icons, desktop integrations, etc for the original game and depend on the Vega Strike Game Engine package to operate. This change is a work in progress; a release has not yet been set for when it will take effect.
This model would allow additional games to be developed using the Vega Strike Game Engine with just swapping out the game asset package and setting a dependency on the Vega Strike Game Engine package.
Note
Source Packages would will be very large especially for the data packages. This cannot be avoided. Both source and binary packages should be provided.
Please join us at `Vega Strike: Gitter - Packgers`_ to if you have any questions.