summaryrefslogtreecommitdiffhomepage
path: root/README.md
blob: a451cec0aa5beec1bf629f1a9c4ef9e5f51887da (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
# Starshatter: Open
Starshatter is a space combat simulator.


## Building
To build Starshatter you need CMake and a C++ compiler. The only supported target platform as of now is Windows and it
must be a 32-bit build. Both MinGW and MSVC are supported.


### Windows
#### MSVC
To build Starshatter with MSVC you will need Windows SDK and old stand-alone DirectX SDK. To point CMake to the Windows
SDK use the cache variables `WINDOWSSDK_LIBPATH` and `WINDOWSSDK_PATH`. In addition to these your environment is
expected to have `DXSDK_DIR` variable defined.

After that follow your regular workflow with CMake. You can use IDE to run everything for you, e.g., Visual Studio and
Qt Creator both support CMake building. You can also use the CMake directly in command prompt or GUI and build it the
project manually.


#### MinGW
Make sure that you use 32-bit MinGW compiler - it is usually prefixed with "i686". IDEs also support this approach but
you need to properly configure toolchain/kit that the IDE will use.


### Linux
#### MinGW
To build Starshatter on Linux you will need to use MinGW. Just in the previous cases make sure that you use 32-bit
version that is usually prefixed with "i686". Use your host's CMake with `--toolchain` argument to configure the
project. After that follow the regular workflow.


## Installation
Installation targets are not fully configured as of now.


## Running
Once you build you should be able to run the game assuming that all shared objects (dynamic libraries) can be found
inside by the dynamic linker. If you are trying to run on Linux it means that you use `WINEPATH` to point to the MinGW's
bin directory and to the build directories that contain shared objects. For Windows it usually works right away or you
need to copy the libraries along the executable to one directory.

To be able to play the game you also need the dat packages containing game resources.


## License
See <COPYING> and <NOTICE> files for licensing details.