Crossfire mapper is a tool, formerly only available in the trunk
SVN (server/utils), that generates a catalog of maps.
Until tag version 1.60.0 it had not been included in official source code releases of the server .
Since official release version 1.71.0 the required templates directory and it's around 30 to 40 HTML files is also included in the release.
The crossfire-mapper is mostly intended for map makers so they know the relationship between maps, and people wishing to figure out where is a specific map/quest.
The following information is generated:
(note that some lists are not using the template system yet)
This program browses maps from the first map (HallOfSelection) in {prefix}/var/crossfire/maps ( not in share/crossfire/maps ); only maps linked from there will be processed.
Maps are generated as the server sees them, that is with weather effects, treasures instead of markers, and things like that, unless the -rawmaps
parameter is used.
For maps, 2 pictures are generated, one real size and one small-size.
Three maps are generated for the world: raw world map, world map with region information, region information only.
Maps are always sorted, by the map name (part after the last /).
Files are generated based on templates, where tags are replaced by their runtime value.
Launching the program without any argument will make it generate the files in working-directory/html
.
This program is not part of the build process. The command line from the utils
directory is:
gcc mapper.c -I../include ../common/libcross.a -o crossfire-mapper -lm -lgd
To build it, you need the GD library (ie. install a libgd-devel package).
Since version 1.60.0 the mapper utility is optional part of the build process, available by the –enable-mapper
configure option. But make install
does not install the crossfire-mapper executable, the user has to manually transfer it ( probably to be found inside the hidden .lib directory of the utils folder) to the intended location; preferably where the templates directory with the many HTML .template files is located.
The following command line parameters are available:
-nopics | don't generate pictures. |
-noindex | don't generate global map index. |
-root=<path> | destination path. Default 'html'. |
-limit=<number> | stop processing after this number of maps, -1 to do all maps (default). |
-showmaps | outputs the name of maps as they are processed. |
-jpg[=quality] | generate jpg pictures, instead of default png. Quality should be 0-95, -1 for automatic. |
-forcepics | force to regenerate pics, even if pics's date is after map's. |
-addmap=<map> | adds a map to process. Path is relative to map's directory root. |
-rawmaps | generates maps pics without items on random (shop, treasure) tiles. |
-warnnopath | inform when an exit has no path set. |
-listunusedmaps | finds all unused maps in the maps directory. |
-noworldmap | don't write the world map in world.png. |
-noregionslink | don't generate regions relation file. |
-regionslink | generate regions relation file. |
-noexitmap | don't generate map of exits. |
-exitmap | generate map of exits. |
-tileset=<number> | use specified tileset to generate the pictures. Default 0 (standard). |