Thank you for considering contributing to the Imperialism Remake project!
Volunteers are always welcome. There are plenty of chances to take part in coding, graphics design, discussing the game rules or just giving feedback.
Most of these tasks can be discussed in the community forum, please consider registering there. Alterantively, use this issue tracker for inquiries.
For programmers direct interaction with the source repository by forking and pushing merge requests (please rebase first) are preferred. Please use the issue tracker to report problems. Requests for enhancement should be posted at the issues tracker or in the community forum.
The source code is on GitHub.
The folder structure is as follow:
documentation
Game manuals as sphinx projectsexamples
Code snippets demonstrating certain aspects of the code base. No testsprototypes
Showcase implementation of larger parts of the game before they are integrated in the code base.source
The code base of the game with game assets (artwork, sound, ..) located atsource/imperialism_remake/data
test
Collection of tests.tools
Helper scripts for creating content files, building the documentation, ..
Please use the usual fork and create pull request scheme for suggesting changes to the code. Also see this tutorial learngitbranching. On Windows, TortoiseGit conveniently integrates git with the explorer.
Install Python 3.X. See also the Python documentation.
Only PyQt5 is required for running. Sphinx and sphinx_rtd_theme for creating the documentation.
PyQt5 is a Python binding of the Qt framework and is required for running.
PyQt5 has not much documentation on its own but the API classes overview of the underlying C++ Qt 5.X framework is very useful since PyQt5 is almost 100% recreating it.
- Run file
source/imperialism_remake/start.py
- Start with command line parameter "--debug" for (more) output on the console.
- A folder with log files and settings is created under "user folder/Imperialism Remake User Data" where "user folder" is the typical user folder of your system (Windows: C:/Users/XXX/, Linux: ~/.config/).
All tests in folder test
can be run by executing test/run_tests.py
. We also use Travis CI to run the tests
automatically.
I use PyCharm Community Edition.
Packaging on Linux and macOS has not progressed much so far. Windows packaging is with pynsist. Instructions will be added later.