expand documentation [skip ci]

This commit is contained in:
andy5995 2018-01-19 12:25:37 -06:00
parent 2008e7c98b
commit f7812910f4
No known key found for this signature in database
GPG Key ID: 06BFEC9B82603CAF
4 changed files with 181 additions and 83 deletions

100
BUILD.md Normal file
View File

@ -0,0 +1,100 @@
# BUILD.md
## Set up the repositories locally
If you would like to contribute to development, you will need to
**fork** and then **clone your forks** of these 2 repositories:
* https://github.com/ZetaGlest/zetaglest-source
* https://github.com/ZetaGlest/zetaglest-data
### Procedure for cloning your forks
#### Source
* clone zetaglest-source using the clone info provided by your fork
(use "Clone or Download" link, but **do** select `clone` **not**
`Download Zip`)
#### Data
After your clone of the source repo is complete:
* cd to `zetaglest-source` * Important: clone your fork of the **data
repo** by adding `data` after the clone command
Example: `git clone https://github.com/ZetaGlest/zetaglest-data data`
**Be sure to replace the URL with the URL of your fork**
### Note
If you have cloned the repositories this way, do not use the
`git_update.sh` provided in the source directory. See
[syncing](https://github.com/ZetaGlest/zetaglest-source/blob/develop/CONTRIBUTING.md#syncing)
for information on how to sync your repo with the main upstream (no,
you can't juse use **_merge_**).
## Dependencies
### Linux
On Debian, Ubuntu, Fedora, Opensuse and even more Linux distributions,
after you clone the source repository, you may use
cd mk/linux
sudo ./setupBuildDeps.sh
which will run your package manager and attempt to install the needed packages.
(These may vary based on your operating system or Linux distribution;
we will attempt to document dependencies in more detail)
Below is a list of most dependencies you will need. This document needs
to indicate better which are optional and which are required.
gcc gcc-c++ cmake libsdl2-dev libalut-dev libgl1-mesa-dev
libglu1-mesa-dev libvorbis-dev libx11-dev liblua-dev libjpeg-dev
libpng-dev libcurl-gnutls-dev libircclient-dev libglew-dev libftgl-dev
libfribidi-dev libcppunit-dev libminiupnpc-dev libfreetype6-dev
libgnutls28-dev libkrb5-dev libkrb5-dev libnghttp2-dev libopenal-dev
libldap2-dev libwxgtk3.0-dev librtmp-dev libvlccore-dev libvlc-dev
Additionally for map editor and model viewer:
libwxgtk3.0-dev libxml2-dev
### Mac OS X
(Needs editing/updating)
### Windows
(Need editing/updating)
### *BSD
(Need editing/updating)
### Other (add sections)
(Add other specific operating systems)
## Compiling
### Linux
./build-zg.sh
### Mac OS X
./build-zg.sh
### Windows
(Need editing/updating)
### BSD
(Need editing/updating)
### Other (add sections)

View File

@ -1,14 +1,19 @@
# CONTRIBUTING
You are welcome to join our [Discord server](https://discord.gg/WaAaXS7) or [IRC channel](http://webchat.freenode.net/?channels=%23zetaglest-dev&uio=d4).
Welcome to the ZG project! Thank you for reading this document and
considering contributing.
Anyone is welcome to join our [Discord server](https://discord.gg/WaAaXS7) or [IRC channel](http://webchat.freenode.net/?channels=%23zetaglest-dev&uio=d4).
The Discord rooms are for players, developers, and curiosity/adventure-seekers.
## Issues
ZetaGlest Issues are filed on these repositories:
* [zetaglest-source](https://github.com/ZetaGlest/zetaglest-source/issues)
* [zetaglest-data](https://github.com/ZetaGlest/zetaglest-data/issues)
We try to keep issues related to the source code in -source and issues
related to the data in -data.
* [zetaglest-source Issues](https://github.com/ZetaGlest/zetaglest-source/issues)
* [zetaglest-data Issues](https://github.com/ZetaGlest/zetaglest-data/issues)
* [zetaglest-masterserver Issues](https://github.com/ZetaGlest/zetaglest-masterserver/issues)
If you find an issue that interests you, please leave a note asking about it
first. If you don't see that anyone has inquired about it, you can simply
@ -20,6 +25,11 @@ If you find a problem for which no ticket has yet been created, please don't
hesitate to open a new ticket, and let us know if you are going to work on
that issue.
If you would like to contribute something, it is advised to inquire
first, to be sure it's a patch that would get accepted. We don't want
anyone to spend their time and generosity working on something that we
would be unable to accept.
Please leave another note if you change your mind or if you get busy with other
things and are unable to finish it. That lets me and other people know the
ticket is available to be worked on by other people.
@ -31,53 +41,11 @@ Sometimes a patch will be a single line in a single file; other times a single
patch will consist of changes to several files. Keep unrelated patches separate
from each other (i.e. a separate PR for each patch).
## Set up the repositories locally
If you would like to contribute to development, you will need to
**fork** and then **clone your forks** of these 2 repositories:
* https://github.com/ZetaGlest/zetaglest-source
* https://github.com/ZetaGlest/zetaglest-data
### Procedure for cloning your forks
#### Source
* clone zetaglest-source using the clone info provided by your fork
(use "Clone or Download" link, but **do** select `clone` **not**
`Download Zip`)
#### Data
After your clone of the source repo is complete:
* cd to `zetaglest-source` * Important: clone your fork of the **data
repo** by adding `data` after the clone command
Example: `git clone https://github.com/ZetaGlest/zetaglest-data data`
**Be sure to replace the URL with the URL of your fork**
### Note
If you have cloned the repositories this way, do not use the
`git_update.sh` provided in the source directory. See the information
below about syncing your repo.
### Dependencies
Information about dependencies is currently listed in the
[README](https://github.com/ZetaGlest/zetaglest-source#to-build-compile-and-run)
To build, change to the zetaglest-source/mk/`<OS>` directory, and run:
./build-zg.sh
To run the game, use:
./zetaglest
The path to the data is specified in `glest-dev.ini`. If `zetaglest`
can't find the data, you will receive an error message upon starting.
See the instructions in
[BUILD.md](https://github.com/ZetaGlest/zetaglest-source/blob/develop/BUILD.md)
for important information about how to clone your forks so you can
easily contribute patches, graphics, or other content to the ZetaGlest
repositories.
## Pull Requests
1. [Fork the repo](https://github.com/ZetaGlest/zetaglest-source/fork) (if you haven't already done so)

View File

@ -13,6 +13,8 @@ in one of 17 naturally looking settings, which, like the unit models,
are crafted with great attention to detail. A lot of additional game
data can be downloaded from within the game at no cost.
**[System Requirements](https://github.com/ZetaGlest/zetaglest-source/blob/develop/system_requirements.txt)
Open games and [Server list](https://zetaglest.dreamhosters.com/)
## Why this fork? (Project Goals)
@ -38,34 +40,8 @@ have no desire to compile software and would only like a binary
game; binary package downloads for various operating systems are
available on their web site.
## To Build (Compile) and Run
### Dependencies
On Debian, Ubuntu, Fedora, Opensuse and even more Linux distributions,
after you clone the source repository, you may use
cd mk/linux
sudo ./setupBuildDeps.sh
which will run your package manager and attempt to install the needed packages.
(These may vary based on your operating system or Linux distribution;
we will attempt to document dependencies in more detail)
Below is a list of most dependencies you will need. This document needs
to indicate better which are optional and which are required.
gcc gcc-c++ cmake libsdl2-dev libalut-dev libgl1-mesa-dev
libglu1-mesa-dev libvorbis-dev libx11-dev liblua-dev libjpeg-dev
libpng-dev libcurl-gnutls-dev libircclient-dev libglew-dev libftgl-dev
libfribidi-dev libcppunit-dev libminiupnpc-dev libfreetype6-dev
libgnutls28-dev libkrb5-dev libkrb5-dev libnghttp2-dev libopenal-dev
libldap2-dev libwxgtk3.0-dev librtmp-dev libvlccore-dev libvlc-dev
Additionally for map editor and model viewer:
libwxgtk3.0-dev libxml2-dev
See [Build instructions](https://github.com/ZetaGlest/zetaglest-source/blob/develop/BUILD.md)
(not yet complete)
### Try the game without contributing
@ -75,8 +51,9 @@ Use this command:
cd zetaglest
git clone https://github.com/ZetaGlest/zetaglest-data.git data
Afterward, to build, change to the mk/ directory, select your operating
system and run
Afterward, to
[build](https://github.com/ZetaGlest/zetaglest-source/blob/develop/BUILD.md),
change to the mk/ directory, select your operating system and run
./build-zg.sh
@ -84,6 +61,23 @@ To execute the game:
./zetaglest
To run your own headless (dedicated) server:
Forward TCP ports 61357-61366
./zetaglest --headless-server-mode
To start a server and host a game:
Forward TCP ports 61357-61366
Enter the ZetaGlest lobby and click "Host Game"
### Note
When serving a running game, a headless ZG server uses almost the
same amount of computer resources as a running game. Therefore, it is
recommended not to try connecting your ZG client to a headless server
running on the same computer.
### Contributing and Testing
If you'll be contributing code or changes to data, the procedures for

36
system_requirements.txt Normal file
View File

@ -0,0 +1,36 @@
ZetaGlest System requirements
Hardware requirements:
* >= (2011) Intel Sandy Bridge x86 CPU with 1.6 GHz or higher frequency
(modern multi-core CPU series, at least 2.0 GHz recommended)
* 2.0 GB RAM
(4.0 GB RAM recommended)
* Graphics chip supporting OpenGL 2.1 or higher
(dedicated/discrete video card with hardware 3D acceleration recommended)
* 512 MB video memory
* Audio chip supporting OpenAL
Software requirements:
* A supported (by its producer) operating system version
* Graphics drivers which work well with this operating system version and
support the OpenGL requirements discussed above
* Audio drivers supporting OpenAL
* A file archiving utility which provides a command line interface and can
decompress 7-zip archives
Graphics hardware and drivers:
Current dedicated Nvidia and AMD hardware with up to date vendor-supplied
proprietary drivers installed usually provide the best experience. However, it
is not unheard of that they may be difficult to get working on Linux and other
open platforms (due to insufficient support by hardware vendors). If you
experience such issues, open source 3D drivers are now becoming usable for both
many current and legacy GPUs, and may help with the proprietary drivers'
shortcomings.
Next to standard dedicated gaming video cards, ZetaGlest also runs fine
on most integrated Intel, Nvidia and AMD APUs. In some case, reduce
visual effects from the options menu may help improve game performance.
To run ZetaGlest in headless mode, neither video nor audio hardware and driver
support are necessary. For a good user experience, please ensure your system
meets all other minimum hardware requirements, as listed above.