Yeah, it seems a tad random, and I reckon it contains variables such as:
3.4 Map Rotation System
The file maprotation.cfg is used to describe up to 16 map rotations which may be used by a Tremulous server. In its most simple form, the syntax is as follows:
mapRotation1
{
map1
map2
map3
}
mapRotation2
{
map6
map3
map9
}
This specifies two rotations, each consisting of three maps. The contents of the cvar g_initialMapRotation specifies the map rotation to start after the map the server was started with has finished. It is possible to specify a list of server commands to be run after a map has finished:
mapRotation3
{
map1
{
set sv_hostname ıJust finished map1!j
set g_teamForceBalance 0
}
map2
{
set g_teamForceBalance 1
}
map3
}
Primitive logic is also available:
mapRotation4
{
map1
goto map3
map2
if numClients > 8
mapRotation3
map3
if lastWin aliens
mapRotation2
if random
mapRotation1
}
mapRotation5
{
map1
if lastWin humans
map4
map2
map3
goto map1
map4
map5
}
The goto keyword is used to unconditionally branch to either another map in the current rotation or another map rotation entirely. The if keyword is used in conjunction with a condition to decide whether or not to branch to the specified map or rotation (as with the goto keyword). The condition itself can be one of numClients <op> <number>, lastWin <team> or random, where <op> is <, > or = and <team> is aliens or humans. The random condition simply chooses whether or not to execute the change randomly, with each outcome equally likely.