mirror of
https://bitbucket.org/s_l_teichmann/mtsatellite
synced 2024-11-19 08:30:21 +01:00
50 lines
2.4 KiB
Markdown
50 lines
2.4 KiB
Markdown
# SETUP MTSatellite \[WIP\]
|
|
|
|
You will need a Minetest server with Redis support compiled in. Consult the Minetest documentation to figure out how to get such build.
|
|
Furthermore you need the binaries `mtdbconverter`, `mtseeder`, `mtredisalize` and `mtwebmapper` in your **PATH**.
|
|
Consult [COMPILE](https://bitbucket.org/s_l_teichmann/mtsatellite/src/default/COMPILE.md) how to build these.
|
|
|
|
Setting up MTSatellite takes six steps:
|
|
|
|
1. [Convert world database into interleaved format](#markdown-header-convert-world-database-into-interleaved-format)
|
|
2. [Configure the Minetest server](#markdown-header-configure-the-minetest-server)
|
|
3. [Start `mtredisalize`](#markdown-header-start-mtredisalize)
|
|
4. [Pre-compute the map tiles with `mtseeder`](#markdown-header-pre-compute-the-map-tiles-with-mtseeder)
|
|
5. [Start the web server `mtwebmapper`](#markdown-header-start-the-web-server-mtwebmapper)
|
|
6. [Start the Minetest server](#markdown-header-start-the-minetest-server)
|
|
|
|
## Convert world database into interleaved format
|
|
|
|
MTSatellite operates best if the block data of the world is stored in a LevelDB database with
|
|
a key scheme called interleaved. With this key scheme you can pick up sets of neighbored blocks a
|
|
lot quicker than with a plain database.
|
|
See [Z-order curve](http://en.wikipedia.org/wiki/Z-order_curve) at Wikipedia for grasping the core ideas.
|
|
MTSatellite can run on plain LevelDB or SQlite3 world databases but this reduces the performance significantly.
|
|
This is also not tested very well and will likely break your database. So do not use it! Stay with the
|
|
interleaved format!
|
|
|
|
To convert your original plain SQLite3 or LevelDB database (Redis is not supported atm) to the interleaved
|
|
LevelDB format you have to use `mtdbconverter`:
|
|
|
|
mtdbconverter -source-backend=sqlite /path/to/your/world/map.sqlite /path/to/your/world/map.db
|
|
|
|
Depending on the size of your world and the speed this conversion will take some time.
|
|
Change `-source-backend=sqlite` to `-source-backend=leveldb` if your world is stored as a LevelDB.
|
|
`mtdbconverter` can also be used to convert your world back to the plain key scheme.
|
|
See `mtdbconverter --help` for all options.
|
|
|
|
## Configure the Minetest server
|
|
**TODO: Write me!**
|
|
|
|
## Start mtredisalize
|
|
**TODO: Write me!**
|
|
|
|
## Pre-compute the map tiles with mtseeder
|
|
**TODO: Write me!**
|
|
|
|
## Start the web server mtwebmapper
|
|
**TODO: Write me!**
|
|
|
|
## Start the Minetest server
|
|
**TODO: Write me!**
|