1
0
mirror of https://github.com/OpenRCT2/OpenRCT2 synced 2025-12-23 15:52:55 +01:00

describe an easier way to get a working data directory without doing a full install

Martijn Faassen
2018-07-29 15:17:58 +08:00
parent da21ce7ae7
commit 76a00e1468

@@ -92,20 +92,6 @@ apk add git gcc g++ jansson-dev libzip-dev curl-dev libressl-dev sdl2-dev fontco
(Dependency fts may not be required in the future, see [#5520](https://github.com/OpenRCT2/OpenRCT2/issues/5520))
(You may wish to install Zenity or KDialog, see [#5521](https://github.com/OpenRCT2/OpenRCT2/issues/5521))
## Other required files
As mentioned earlier, we also have a dockerfile. This is useful when you cannot easily install i386 packages alongside x86_64 ones. (Ubuntu can be an example, depending what you else have installed.)
To later run the binary, some filesystem preparation is required.
Assets are expected to be in specific places, so to launch it, following needs to satisfied:
* `$build/data/` has to have contents of `$repo/data/`
* `$build/data/title` has to have extracted contents of one of https://github.com/OpenRCT2/title-sequences/releases
* `$build/openrct2.exe` has to be `$repo/openrct2.exe` (optional)
* `$XDG_CONFIG_HOME/OpenRCT2/` (or `~/.config/OpenRCT2/` in its absence) has to have `config.ini` with `game_path` set to an RCT install.
Keep in mind you can symlink stuff and that filesystems are case sensitive!
You can copy more of required data to possibly improve your experience.
## Compiling
```
@@ -116,38 +102,37 @@ make
This will generate a `openrct2` binary in the `build` directory. To run you have two options: `make install` or running it locally.
### make install
```
make install
```
`make install` will download required resources (json objects, title sequences) and installs openrct2 under `/usr/local` by default.
### Running it from the build directory
Alternatively you can install the required resources manually so can launch openrct2 from the project directory.
You need a functional `data` directory next to the current working directory when you start `openrct2`.
First in the `build` directory do the following:
An easy way to generate such a data directory is by leveraging `make install`. Type the following in the `build` directory:
```
make g2
mkdir temp_install
DESTDIR=./temp_install make install
cp -r temp_install/usr/local/share/openrct2/ data
```
Then copy or symlink this file into the data directory:
Alternatively you can install these assets yourself. The following needs to satisfied:
```
# to link
ln -rs g2.dat ../data/g2.dat
```
* `$build/data/` has to have contents of `$repo/data/`
* `$build/data/g2.dat` needs to exist. Build it using `make g2` and then copy it into `data`.
* `$build/data/object` has to have the extracted contents from https://github.com/OpenRCT2/objects/releases
* (optional) `$build/data/title` has to have extracted contents from https://github.com/OpenRCT2/title-sequences/releases
Now you need to download the objects from [objects repository](https://github.com/OpenRCT2/objects/releases) and unpack them into an `object` subdirectory of the `data` directory.
`$XDG_CONFIG_HOME/OpenRCT2/` (or `~/.config/OpenRCT2/` in its absence) has to have `config.ini` with `game_path` set to an RCT install. `openrct2` will ask you for this directory when it first starts.
Optionally you can also download the [title sequences](https://github.com/OpenRCT2/title-sequences/releases) and
unpack them into the `title` subdirectory of the `data` directory.
`openrtc2` looks for the `data` directory from the current working directory where you start it, so in the project directory you can type:
```
build/openrct2
```
Keep in mind you can symlink stuff and that filesystems are case sensitive!
Alternatively you can specify the data directory like this
```