This script addon keeps track of maps on the server. It keeps book on maps that have been added to the server, maps that have been deleted, if some maps have been played already or not and can control mapcycle based on this data.
This addon was designed for a private Synergy server with the big map pack installed. Nothing prevents using this script for other games but the features might not be meaningful for them.
[b]Server variables[/b]
[list][*]syn_maptracker_go - controls whether this script addon is allowed to control mapcycle or not (values 0 or 1, defaults to 1 = enabled)
[/list]
[b]Console commands[/b]
[list][*]synmap_next - immediately switches to next map (using changelevel command)
[*]synmap_start - starts the server on next map (using map command)
[*]synmaps - lists maps installed on the server
[/list]
[b]Chat commands[/b]
[list][*]mapinfo - assigns tags for the map[/list]
The "synmaps" command can be used in both server console and in client console. Use the command without parameters to get instructions on its usage.
Normally synmap_next and synmap_start commands make the game on next map in the maplist (partly randomized order) that has not been played yet. If syn_maptracker_go is set to 1, then the script will automatically set the next map to be another map that has not been played yet.
The tags (set with mapinfo chat command) can be used for both informative and control purposes. They can be used to memorize what kind of map the one is (the tags are shown with synmaps command) or however you like to use it.
The addon itself recognizes some tags and can use them to better control mapcycle:
[list][*]noauto - do not include this map into mapcycle in any case
[*]mess - prefer [i]not[/i] getting this map in mapcycle, maps with this tag are only included in mapcycle once there are no more unplayed maps without this tag
[*]continues - the script will not force next map from the mapcycle when this map ends
[*]proper - sets mp_spawnsystem to 0, otherwise mp_spawnsystem is set to 1 (Synergy only -setting)
[/list]
The "continues" and "noauto" tags are primarily designed for maps that continue their story on another map. An example of this could be Half-Life 2 single player where the player advances from map to another. You would want to have the "continues" tag on every map that has a changelevel of its own to a defined map, and "noauto" tag on every map that is a continuation to a previous map so that playing those maps always starts from the first map (the one without "noauto") and can continue smoothly without jumping to other maps suddenly.
All the information is saved in [b]maplist.txt[/b] inside the script addon's folder and can be manually edited. The symbols used at the beginning of the map name are:
[list][*][b]-[/b] (the map has been deleted from server since last run)
[*][b]+[/b] (the map has been added to the server since last run)
[*][b]*[/b] (the map has been played at least once)
[*](space) (the map has been on the server for a while but has not been played yet)
[/list]
Basically, to re-add a map to "unseen" list, change the asterisk (*) at the start of the name to be a whitespace ( ) [u]when the addon is not loaded[/u] (or server not running).
Installation
es_install syn_maptracker autoload
Version Notes For 1.3
Updated on: 2008-10-10 13:00:05 EST by GODJonez (View Zip Contents)
Fixed client command filter blocking some Synergy features.