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
@@ -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
|
||||
```
|
||||
|
||||
Reference in New Issue
Block a user