377 lines
18 KiB
Plaintext
377 lines
18 KiB
Plaintext
[]
|
|
Enhancements
|
|
- Improved rpm platform detection and version string
|
|
- Allow specifying a packaging version
|
|
- Added option --sqlite3-limit-prescan-query-size to limit the number
|
|
of records queried simultaneously during a database prescan.
|
|
Use this if mapping while minetest is running causes minetest
|
|
to report warnings like:
|
|
SQLite3 database has been locked for <duration>
|
|
This may happen when mapping relatively large worlds.
|
|
|
|
If minetestmapper keeps the database locked for too long,
|
|
*and* if the database was modified in that time, minetestmapper
|
|
will also issue a warning.
|
|
Bugfixes:
|
|
- Fixed compilation failure when docutils is not installed
|
|
- Removed all compiler warnings on Windows
|
|
When compiling a debug version, some warnings remain
|
|
(intentionally).
|
|
- Fixed a compilation failure on Fedora when using postgresql
|
|
- Fixed failure to compile with gcc 6
|
|
- Fixed failure to compile when rpm is not installed
|
|
(e.g. on non-rpm systems...)
|
|
- Workaround to allow compilation with clang when using leveldb.
|
|
This is broken due to libstdc++ ABI incompatibility
|
|
- Fixed compilation failure on FreeBSD (10.3) using gcc
|
|
- Detect when package version will not match current git commit id,
|
|
and refuse to build package with wrong version.
|
|
[31 May 2016]
|
|
Features:
|
|
- Support for postgresql backend added
|
|
Compatible with two previous unofficial implementations, by
|
|
ShadowNinja and johnnyjoy. Support for these will be removed
|
|
in a future version of Minetestmapper.
|
|
- Support for MSVC/Windows compilation (Thanks to adrido!)
|
|
Enhancements:
|
|
- Updated the included colors file with colors for the new tiles that
|
|
were recently added to the default minetest game.
|
|
- Improved the scripts and documentation for generating a colors.txt
|
|
file.
|
|
- HTML versions of documentation in doc/ is now generated, and included
|
|
in the different packages.
|
|
- Documented concurrent minetest & minetestmapper use.
|
|
- Documented the different geometries reported with --verbose
|
|
- Mentioned adrido's MinetestmapperGUI in the manual
|
|
- The option --prescan-world was added to force or disable scanning the
|
|
entire world (i.e. reading a full blocklist)
|
|
(useful for postgresql, which doesn't do this by default).
|
|
- Command-line options are now all case-agnostic wrt their parameters.
|
|
- Allow nodes to be defined as air-type or ignore-type in colors.txt
|
|
- Added an option to draw 'ignore'-nodes.
|
|
- Text drawn on the map is now converted to the ISO8859-2 encoding. Due
|
|
to limited font support in the drawing library, characters not
|
|
in the ISO8859-2 set are not supported.
|
|
Minetestmapper will attempt to render unsupported characters
|
|
sensibly if it can.
|
|
Bugfixes:
|
|
- Fixed possible compilation failure caused by stdint.h
|
|
- Fixed compilation failure when some database libraries are not installed.
|
|
Even when support for some of the databases was not enabled,
|
|
the libraries for those databases still needed to be installed on
|
|
the system for compilation to succeed. Now the libraries no
|
|
longer need to be installed if not used.
|
|
- Fixed backend selection, so that there should no longer be a difference
|
|
between an automatically selected backend, and the same backend
|
|
specified manually.
|
|
(At least one backend-specific (LevelDB-related) option was not
|
|
taking effect when LevelDB was auto-selected).
|
|
- Fixed problem causing existing but modified blocks not being found in
|
|
SQLite3 database when mapping while minetest is running.
|
|
[10 mar 2015]
|
|
Enhancements:
|
|
- Added an optimisation option: --disable-blocklist-prefetch.
|
|
With this option, minetestmapper does not query the database to
|
|
make a block list before starting map generation, but directly
|
|
tries to fetch all possible blocks that might be in the mapped space.
|
|
|
|
This significantly improves speed on large worlds when mapping a
|
|
small part of them. When mapping a large percentage of the world,
|
|
or when not adequately limiting the mapping height (--min-y and
|
|
--max-y), this option can cause **excessively** long mapping times
|
|
instead.
|
|
|
|
Minetestmapper will try and warn about misuse of this option. If
|
|
possible, it will also suggest changes to parameters to make better
|
|
use of this option.
|
|
- Building instructions were improved
|
|
- Mimimum and maximum *mapped* Y coordinates are now reported, and can be
|
|
used as a hint for setting --min-y and --max-y. Blocks containing
|
|
only air are not included.
|
|
This is mainly of use when using --disable-blocklist-prefetch
|
|
- Minetestmapper now prints a message and does not generate an image file
|
|
if the world is empty (i.e. does not contain any blocks at all).
|
|
|
|
Bugfixes:
|
|
- Generated packages now contain the documentation, albeit not in HTML
|
|
format yet.
|
|
|
|
[2 mar 2015]
|
|
Features:
|
|
|
|
Enhancements:
|
|
- Performance of the sqlite3 database backend was improved slighty.
|
|
- Searching for color files on Windows was improved. Minetestmapper will
|
|
now search the directory where minetestmapper is installed.
|
|
- The documentation is now included in the generated packages as well.
|
|
- The user manual and building instructions have been improved.
|
|
|
|
Bugfixes:
|
|
- Windows builds (using MinGW) are working again - a few incompatibilities
|
|
have prevented that for some time.
|
|
|
|
Windows compilation has been tested using MinGW as a cross
|
|
compiler, running on a Linux host.
|
|
|
|
Other:
|
|
- The option --sqlite-cacheworldrow was tested on a few large worlds,
|
|
and minetestmapper performed consistently worse with it, than
|
|
without it. The option was therefore deemed useless, and disabled.
|
|
It is still recognised though, so that existing scripts will keep
|
|
working.
|
|
|
|
If anyone has test data available, or other experience, indicating
|
|
that this option *did* have tangible benefit, please let me know.
|
|
|
|
[20 feb 2015]
|
|
Features:
|
|
- A custom major and minor division can now be specified for the scale.
|
|
- When the major scale division is divisible by 16, block numbers are
|
|
also included on the scale
|
|
- Instead of a regular map, a height map can now be generated as well.
|
|
- It can be generated in shades of a single color, or in multiple colors.
|
|
- For multiple colors, a height-map colors file is needed. Two sample
|
|
versions are included: a file which produces nice maps on standard
|
|
minetest worlds (mapgen v6), while still covering a reasonably large
|
|
range of heights for other worlds, and a rainbow colors file.
|
|
- A nodes file is also needed, which specifies which nodes should be
|
|
considered (and hence, which ones should be ignored) when determining
|
|
the height of a region of the world. A nodes file is included.
|
|
- Optionally, a height scale can be drawn at the bottom of the map.
|
|
- The map can now be generated in a reduced size. This means that it is finally
|
|
possible to generate a full map of a maximal world, albeit at a lower
|
|
resolution
|
|
(at most 1:2 on 64-bit systems and 1:4 on 32-bit systems). Overview maps
|
|
at 1:16 are another use of this feature.
|
|
The following scale factors are supported: 1:1, 1:2, 1:4, 1:8 and 1:16.
|
|
|
|
Note that this version of minetestmapper also supports generating a
|
|
huge map in sections, and pasting them together with an external program.
|
|
See below.
|
|
|
|
Enhancements:
|
|
- The left scale was widened, as it didn't accomodate 5-digit coordinates
|
|
- The --tiles option gained the shorthand values 'block' and 'chunk', which
|
|
align the tiles with minetest's block and chunk boundaries.
|
|
The default chunk size is obtained from the world's data files.
|
|
An option --chunksize was also added to override the default chunk size.
|
|
- For a stack of only transparent nodes, the topmost height is now used.
|
|
(instead of the bottom-most height)
|
|
- The progress indicator was improved
|
|
- Ice was made slightly transparent in the included colors file
|
|
- A small number of symbolic colors are now recognised. In addition, they
|
|
can be modified by mixing in several basic colors (e.g. white to make
|
|
the color lighter, or black to make it darker)
|
|
- It is now possible to draw a scale on just the left or the top side. This
|
|
means that it is possible to generate a map in independent sections, which
|
|
can be assembled into a large map later (using another application).
|
|
- The documentation was improved. A separate user manual and a build manual
|
|
are now included.
|
|
|
|
Bugfixes:
|
|
- Fixed incorrect shading near 'holes' in the world map.
|
|
- Fixed wrong color for default:water_source in colors.txt
|
|
- Parts of the scale are no longer written into the top-left corner of the map,
|
|
where they would sometimes clobber the axis names or each other.
|
|
(Some other bugs were fixed as a side-effect of the new features and enhancements.
|
|
Unfortunately, no good record exists...)
|
|
|
|
[20 jun 2014]
|
|
Features:
|
|
- Added the ability to select a method of transparency computation for
|
|
drawalpha. Three methods are supported when transparency is enabled:
|
|
- cumulative: The original mode. Colors become slightly darker and
|
|
more opaque as the number of stacked transparent blocks increases
|
|
- cumulative-darken: Same as cumulative, except that when the color
|
|
has become opaque, the color is progressively darkened to visually
|
|
simulate greater depth. Eventually, this will cause the color to
|
|
become black.
|
|
This used to be the default and only method since commit 8faa2d
|
|
(on 10 april 2014)
|
|
- average: Transparent blocks always remain transparent, regardless
|
|
of their stacking height. This means that the bottom of deep oceans,
|
|
and any artefacts that exist there remains visible. When different
|
|
types of transparent blocks sit on top of each other, their average
|
|
color and transparency is used.
|
|
This method is now the default.
|
|
|
|
Enhancements:
|
|
- The default lava color has been changed to slightly transparent.
|
|
- The default water color has been made slightly lighter.
|
|
- Alternative color definitions are provided for different methods of
|
|
transparency computation
|
|
|
|
Bugfixes:
|
|
- Minetestmapper should now build correctly on clang/freebsd
|
|
|
|
[18 jun 2014]
|
|
Features:
|
|
- The package generation code for Linux was extensively reworked and
|
|
extended.
|
|
Besides two types of .tar.gz packages, .deb and .rpm packages
|
|
can now be generated as well. In addition, make install now
|
|
installs packages in an appropriate directory hierarchy.
|
|
|
|
The rpm package has an installation glitch: it tries to create
|
|
a directory which already exists (system default), causing an
|
|
installation conflict. This is harmless, but the rpm package must
|
|
therefore be installed with --replacefiles.
|
|
|
|
Package generation on OSX and Windows platforms remains unchanged.
|
|
- 'Air' nodes can now have a color. Their color should be defined as fully
|
|
transparent (alpha = 0), so that they don't obscure underlying blocks.
|
|
With alpha = 0, air will only be drawn if no other blocks are beneath it.
|
|
As it comes at a significant performance penalty, this feature is
|
|
subject to a command-line option: --drawair.
|
|
|
|
Full transparency is supported for other blocks as well, enabled by
|
|
setting their alpha value to 0. Nodes with alpha value 0 never
|
|
participate in shading.
|
|
- A default color can be specified for invisible/undefined nodes in rendered
|
|
blocks. Normally, such nodes are not drawn, so they have the background
|
|
color; If a different default color is specified, undefined/invisible
|
|
nodes in defined blocks get the default color, and can be distinguished
|
|
from undefined blocks (which still have the regular background color).
|
|
|
|
This option is really only useful to get a better idea of what is
|
|
actually in the database.
|
|
- A color file can now include other color files. It is therefore no longer
|
|
necessary to create an entirely new copy to be able to change one
|
|
or two colors. Instead, an empty file can be created. In that file,
|
|
the master copy is simply referred to ('@include <master>'), and then
|
|
just the desired differences are added to it.
|
|
It is not only possible to override colors in the new file, but
|
|
colors can also be undefined if necessary.
|
|
- Freeminer maps are now supported (and tested).
|
|
In particular, this means that the new key format used in the leveldb
|
|
database (a<x>,<y>,<z>) is now supported.
|
|
|
|
Please note that freeminer maps will probably contain a lot of holes and
|
|
other 'unrendered' areas (e.g. missing plains, making the grey rocks
|
|
beneath visible; missing water, showing only the bottom of the lake/sea,
|
|
etc.
|
|
This is caused by the fact the freeminer does not store unchanged blocks
|
|
in the database, but prefers to regenerate them later. As minetestmapper
|
|
can only render what's in the database, this causes the holes etc.
|
|
|
|
Enhancements:
|
|
- Minetestmapper now has a version number (which is (partially) computed).
|
|
- A system-wide colors.txt file is now supported as well. Its location is
|
|
hardcoded at compile-time.
|
|
- Redis support is now fully tested.
|
|
- A command-line option to report which colors file(s) are read was added.
|
|
|
|
Bugfixes:
|
|
- Fixed the bug which caused compilation to fail if CMAKE_BUILD_TYPE was not
|
|
configured.
|
|
- Computation of transparency for nodes was improved / fixed
|
|
- The return value of a redis database operation was not correctly
|
|
checked. This was fixed.
|
|
|
|
[22 may 2014]
|
|
General: integrated all (relevant) patches from the minetest/minetestmapper tree
|
|
(only patches that actually conflict with my work were obviously not merged)
|
|
|
|
Features:
|
|
- redis backend support (merged from minetest/minetestmapper)
|
|
The code was ported and compiles. Unfortunately, I wasn't able
|
|
to test against a redis database yet.
|
|
- The database backend to use is now obtained from the world.mt file by default
|
|
- Additional geometrical figures can be drawn on the map
|
|
Similar to the circles drawn for origin and players. Supported figures
|
|
are: point, line, rectangle, ellipse (circle), text.
|
|
Translucency (alpha) is supported, although for ellipses, it does not
|
|
work as expected (due to a bug in libgd)
|
|
|
|
Enhancements:
|
|
- Failure to process a command-line option now causes a specific error message.
|
|
The generic help message is often not very helpful in such a case.
|
|
- The map origin color and Player colors can now be specified with an alpha value.
|
|
Unfortunately, due to a bug in libgd, the effect is not what it should be...
|
|
- The colors.txt file is now also searched for in the world's minetest directory
|
|
(the directory containing minetest.conf) - if it can be found.
|
|
- C++11 compilation is enabled if supported. If so, faster datastructures are used.
|
|
instead of regular map, unordered_map is used where applicable
|
|
- Colors used with drawalpha can now differ from colors used without drawalpha.
|
|
Colors.txt can now have 'duplicate' entries for nodes, depending on whether alpha
|
|
transparency is on or off.
|
|
With 'drawalpha', a non-opaque color entry (with alpha less than 255) is
|
|
preferred, whereas without 'drawalpha', a color entry with alpha 255
|
|
(or unspecified alpha) is preferred.
|
|
In all other cases, later entries override former entries in the colors file.
|
|
The color of water with drawalpha was changed a little.
|
|
- The sqlite3 backend is now optional and can be disabled during compilation.
|
|
- Failures parsing or decompressing the block data from the database are now caught and reported.
|
|
Map generation continues, and aborts only after 100 or more errors.
|
|
The error messages for decompression failures were also improved.
|
|
- Geometry can now also be specified using 2 corners of the area (instead of corner and dimensions)
|
|
- The configuration of tiles location was improved
|
|
|
|
Bugfixes:
|
|
- When not using a geometry option, *do* generate the smallest possible map
|
|
- Fix transparency computation - libgd uses 0..127 (not 255)
|
|
- Using an invalid option name no longer causes a crash, but is reported.
|
|
- Fixed a crash when the top part of the generated map is empty
|
|
- The computation of map size with tiles was fixed (height could be miscomputed)
|
|
|
|
[16 apr 2014]
|
|
General: integrated all (relevant) patches from the minetest/minetestmapper tree
|
|
(only patches that actually conflict with my work were obviously not merged)
|
|
|
|
Features:
|
|
- A grid can now be added to the map ( with '--tiles')
|
|
Gridlines are drawn 'between' map rows/columns, and therefore do
|
|
not obscure map data. (as a consequence, straight lines may not look
|
|
straight where they cross gridlines).
|
|
- Alpha transparency was added (merged from minetest/minetestmapper)
|
|
Some improvements and fixes were added to make it work as expected
|
|
- An option was added to print progress information during map generation
|
|
This prints the z-coordinate of every block-row being rendered.
|
|
- The map geometry can now be specified with node-granularity
|
|
The geometry is no longer always rounded away from zero, to a multiple of 16.
|
|
I.e. requesting a 80x82 map will result in a 80x82 map, not a 80x96 map
|
|
(or even 96x112).
|
|
The old behavior (i.e. block-granularity) is still available as well.
|
|
- The colors.txt file is now searched for in different locations
|
|
The mapper looks in the world directory for a colors.txt file by default
|
|
Alternatively, the colors.txt file in $HOME/.minetest is used if it exists.
|
|
A colors.txt file in the current directory is a last resort case, and causes a
|
|
warning message.
|
|
|
|
Enhancements:
|
|
- Colors.txt is no longer included in the executable (merged from minetest/minetestmapper)
|
|
- Option and colors parsing failures are handled more gracefully
|
|
|
|
Bugfixes:
|
|
- The computation of origin location and player locations was fixed (off-by-one)
|
|
- Colors.txt is now parsed line-by-line, and errors are reported.
|
|
Errors no longer cause the remainder of the file to be silently ignored.
|
|
- A failure to create the image for lack of memory is now caught.
|
|
When a lack of memory is to be expected during image generation, a warning is printed
|
|
before image generation starts.
|
|
- The handling of an alpha component in colors was fixed
|
|
|
|
[26 mar 2014]
|
|
|
|
Features:
|
|
- A map of the *requested* size can now be generated (after rounding to blocks)
|
|
The option --forcegeometry makes sure the map is not reduced in size if the
|
|
world is smaller than the requested geometry.
|
|
Rounding to a multiple of the block size (i.e. 16) still happens.
|
|
|
|
Enhancements:
|
|
- The size of the map is not limited by default
|
|
By default, only part of the world was included in the map
|
|
- Performance was significantly improved
|
|
- An ability to report the sizes of the world and of the map was added
|
|
|
|
Bugfixes:
|
|
- Fix geometry so that w and h are the map dimensions
|
|
- Vertical limits handling (--min-y and --max-y) was fixed, and now works as expected
|
|
- Failure to open the output file is now caught and handled gracefully
|
|
- The computation of block number bounds was fixed (off-by-one)
|
|
|
|
[16 feb 2014]
|
|
Forked from sfan5/minetest-mapper-cpp
|
|
|