Mapper script for minetest
Go to file
2021-08-27 19:16:44 +02:00
downscaling Add ssim perceptual downscaling 2018-09-29 11:47:12 +02:00
leaflet-hash@d73fc84d8c Initial commit 2015-02-19 16:02:56 +01:00
www Allow set most params in .sh via env. Allow change tilesize and tiles dir. 2018-10-04 06:29:10 +02:00
.gitignore Add ssim perceptual downscaling 2018-09-29 11:47:12 +02:00
.gitmodules Initial commit 2015-02-19 16:02:56 +01:00
LICENSE Initial commit 2015-02-19 16:02:56 +01:00
mapper.sh Fix things 2021-08-27 19:16:44 +02:00
README.md Add note about JOBNUM to README 2019-04-17 22:23:11 +02:00

Leaftest

Leaftest consists of a bash script that uses minetestmapper to display the map on a leaflet based zoomable sloppy map. For an example, see VanessaE survival server's map.

The map is generated through many invocations of minetestmapper with small chunks, instead of one invocation with the whole map, which gets cropped later. This will keep memory requirements for all tools mostly unrelated to the map size.

Dependencies

Ensure that you have:

-bash
-imagemagick
-minetestmapper

Note that you need a minetestmapper which supports precise node coordinates, the official minetestmapper doesn't support it (yet), but the one linked above does.
If you want to host the map on the world wide web, you'll need a web server.

Running the mapper script

Get a clone:

git clone --recursive https://github.com/est31/leaftest.git

Compile the downscaler:

(cd downscaling && sh compile.sh)

To start the mapping, do:

MAPPERDIR=dir/containing/minetestmapper ./mapper.sh path/to/world spawnx,spawny dimension

Make sure that you have provided a colors.txt file, e.g. by putting it inside the world directory.

The dimension number specifies the width and height of the map that should be rendered, centering with your spawn position. dimension should be a multiple of 8*256 = 2048. 6144 is a good starting value.

The list of parameters passed via the invocation is fixed. Further options are passed to the mapper script via the environment variable mechanism (as observable above):

  • MAPPERDIR must point to the path that contains the minetestmapper executable
  • MAPPERPARAMS can be used to pass custom parameters to the minetestmapper invocation
  • JOBNUM can be set to an integer > 1 to run JOBNUM many processes in parallel to speed up the mapping process. NOTE: Do not set this above 1 if the world uses the LevelDB backend (more reading).

After mapping has finished, you can open the www/map.html file. If you want to publish your results, you can either symlink the www directory into your /var/www directory, or copy it. Due to usage of relative symlinks, you should use rsync -L, so that the copied directory doesn't contain symlinks.

License

Copyright (c) 2015-2016 est31, License: MIT.

Parts base on unilicensed script from LibertyLand minetest server, github here.