[crossfire] Mapper tool

Nicolas Weeger nicolas.weeger at laposte.net
Wed Feb 13 16:45:48 CST 2008


Hello.

I'd like some opinions/suggestions on the "mapper" tool for Crossfire (found 
in server/utils/mapper.c).


Current aim of the tool:
* provide a map reference for map makers, to know what exists, show links 
between maps, point to areas where there aren't many maps, ...
* spoiler for players wishing to learn how maps are connected or browsing maps 
online
* help find inconsistencies in maps (same "slaying" between maps, invalid 
tiling, unreachable maps, invalid exits ...)
* make nice pics we can use for background or whatever :)

--------------------------------------------------------------------------------------------------------

Here are the tool features for now (note: the pages on ailesse are not 
generated with the latest version, so I may refer to things you can't yet see 
unless you use the tool locally):

* for each map, a page with exits from / to this map ; quest(s) the map is 
part of ; region of the map ; map lore (without quest info) and level ; map 
picture (real size and reduced size) - 
http://crossfire.ailesse.com/maps/scorn/misc/church.html

* for each region, a page with the maps part of said region ; the region 
description - http://crossfire.ailesse.com/maps/scorn.html

* a global world map with region information - 
http://crossfire.ailesse.com/maps/world.png

* a map of roads, blocked things and exits (both "used" and "unused" ones) - 
http://crossfire.ailesse.com/maps/world_info.png

* a global map index - http://crossfire.ailesse.com/maps/maps.html

* list of "slaying" values used for keys / doors / various mechanism

* uses a template system to customize the output (basic templates in SVN, 
ailesse uses custom ones)

* warning for exits to non existing maps

* list of maps that exist but are not reachable from the HallOfSelection

Features not (yet) on ailesse:
* uses "real" map and region names for display, instead of the filename
* tiled maps support, grouping all maps linked through tile_path_ as one map - 
with the exception of the world maps themselves
* list of maps sorted by level
* .dot file generation with links between regions


Features I'm thinking about and could implement:
* nicer world map navigation, maybe using javascript to scroll maps
* max small pic width/height to avoid things too big on page
* use a scripting language for even more page customisation - may be overkill, 
but well ^_-


Known issues:
* Titan (and probably other) pics are shifted bottom/right - this is quite 
certainly due to the "head" being on non (0, 0)
* platinum coins are weirdly displayed, as well as the pentagon in the 
HallOfSelection
* does not take into account race-specific HallOfSelection


Code wise:
* no memory leak, even if the tool does not free its memory - all could be 
freed if needed, but as it isn't intended to run all the time, not required 
IMO
* file too big, I'm thinking of splitting it for easier maintenance
* not part of the build process nor installed - could be included (would then 
need to define a correct generation path, for now it spits into './html')
* shouldn't use too much memory when running
* could use more documentation, maybe (processing logic and such)


--------------------------------------------------------------------------------------------------------

So, what would you, as a developer, map-maker or player, like to see?

I'm not saying I will implement everything, but you never know ;)


Nicolas
-- 
http://nicolas.weeger.org [Petit site d'images, de textes, de code, bref de 
l'aléatoire !]
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: This is a digitally signed message part.
Url : http://mailman.metalforge.org/pipermail/crossfire/attachments/20080213/27010805/attachment.pgp 


More information about the crossfire mailing list