====== Dungeon Master == The Dungeon Master in Crossfire is abbreviated " DM " or " Wiz " . \\ He has many functionality added, see the page [[:dm_commands]] . ====== Tips and Tricks == ===== Goto Player's Unique Maps == The Dungeon Master may need to go to unique maps belonging to players located in the \\ {prefix}/var/players// directory. Removing unwanted pets created by fumbled alchemantricity attempts inside a permanent apartment of a player may be a "service" to keep up the mood of the player. It is by whatever reason also possible, that pets of a player following him to his apartment all of a sudden turn against him. **But:** How to [[:dm_commands#goto]] to a player's unique map ? Simply link {prefix}/maps/players to point to the {prefix}/var/players directory. It needs to emulate the path as the server knows it, which is an absolute path {prefix}/var/crossfire/players. On Linux in a terminal with server configured with --prefix=/usr/games: cd /usr/games/share/crossfire/maps mkdir -p usr/games/var/crossfire cd usr/games/var/crossfire ln -s ../../../../../../../var/crossfire/players . Then in the client issue the command \\ ''goto /usr/games/var/crossfire/wiki/_scorn_apartment_apartments'' \\ if that player name and _apartment is already created. ---- ===== Goto /City == When issuing the [[:dm_commands#goto]] command, the DM needs to type in awfully long /path/to/map arguments. \\ Especially for the maps inside the // /world// directory this is sometimes crazy for the need to know the coordinates every time. \\ One could think of just linking /Scorn to point to /world/world_105_116, but that fails to step on further attached world map tile maps because the \\ ''tile_path_*'' key attributes have relative path as values. The way to enable such shortcuts is to make the tile_path_* key values absolute path_names, so they look as tile_path_1 /world/world_105_114 tile_path_2 /world/world_106_115 tile_path_3 /world/world_105_116 tile_path_4 /world/world_104_115 instead of tile_path_1 world_105_114 tile_path_2 world_106_115 tile_path_3 world_105_116 tile_path_4 world_104_115 Bash script using **sed** stream-editor to make the tile_path_ absolute: #!/bin/ash du . #disk usage for f in world_* do test -e "$f" || continue test -s "$f" || continue for nr in 1 2 3 4; do if grep -i "tile_path_$nr" $f; then if grep -i "tile_path_$nr /world/" $f; then : else sed -i -r "s%tile_path_$nr (.*)%tile_path_$nr /world/\1%" $f || break 2 fi fi sleep 0.01 done sleep 0.01 done du . # disk usage This script assumes to be located inside the {prefix}/maps/world directory. **NOTE:**Because of the many 900 map files, this script could take some minutes. **Note:** A backup is probably advised before running that script. On Linux we can then simply ln -s world/world_105_116 Scorn in the {prefix}/map directory. The server needs to be restarted with empty TMPDIR /tmp temporary files. In the client type ''goto /Scorn'' .