From OA 0.8.8 onwards, a new maplist option was added to allow servers to more easily setup maplists and have the maps from the maplist be selected randomly.
The option is enabled by ticking "Auto change map" in the map select screen (available in Singleplayer->Skirmish and Multiplayer->Create menus) or by setting the cvar g_autonextmap to 1 (default value is 0).
By default, the game includes maplists that contain all official 0.8.8 maps compatible with a given gametype. However, by placing textfiles in the baseoa directory it is possible to overrule these lists and use your own instead. When g_autonextmap is enabled, classic map rotation scripts are ignored: maps are picked up from a separate pool.
This function is primarily targeted to single player skirmish or LAN games where setting up a classic map rotation script is not considered worth it. If you only play around 3 games everytime you launch the game you will normally only play the same 3 maps, with a static map list. The random nature of this function means that you will get larger variation in your maps.
The maplist-filenames can be found in the cvar g_mappools. The default value is "0\maps_dm.cfg\1\maps_tourney.cfg\3\maps_tdm.cfg\4\maps_ctf.cfg\5\maps_oneflag.cfg\6\maps_obelisk.cfg\7\maps_harvester.cfg\8\maps_elimination.cfg\9\maps_ctf.cfg\10\maps_lms.cfg\11\maps_dd.cfg\12\maps_dom.cfg\". As you can guess, it is a list that first mentions the gametype number (e.g. 0 = FFA), then a backslash, then the name of its related maplist file, then a backslash, then the second gametype number, etcetera... then ends with another backslash.
If you place a file named maps_dm.cfg in your "baseoa" folder, then the system will read that file and use it for selecting maps for DeathMatch (Free For All) mode.
Maplist files are very simple "plain text" files containing the names of the maps allowed, simply separated by a "space" character.
They must be located in the "baseoa"-folder in either the install (basepath) or user (homepath) directory.
Examples of mappools files locations under homepath: "%APPDATA%\OpenArena\baseoa\maps_GAMETYPE.cfg" in Windows, "~/.openarena/baseoa/maps_GAMETYPE.cfg" in Linux.
- This feature is not supported by old mods. You have to manually load maps or to write down classic map rotation scripts there.
- You have to create customized mappools if you want to use this feature with third-party maps or "cut content" maps.
- Maplist files mentioned here are used by g_autonextmap feature: they have no relation with the "classic" .arena and arenas.txt files, which allow maps to be shown when manually selecting one from the graphic interface.
- Pak6-patch088.pk3 contains the default files with ".org" (meaning "original") as suffix (e.g. maps_dm.cfg.org). You can use them as a starting point, by copy-pasting their content into your own files without .org, and then making changes (do not modify the original files inside the pk3 files!).
- In case you mess up with the g_mappools variable, you can use /reset g_mappools command to restore it to its default value. If it does not have effect, load a map first, then enter the command again.
- Be careful with filename length of your maplist files! If you set g_mappools variable to a value too long, the game will not be able to load any map! In that case, emergency workaround is to change variable value to anything shorter to allow the game to load maps again.... however the real fix is to shorten filenames of your maplist files and then set the variable accordingly.
- It is possible to use /callvote nextmap command to trigger map change without waiting for the current match to end.
- ↑ Third party maps, that you may install or autodownload, are not included in the default list, and thus will not be automatically selected by this feature. Also "Cut content" maps are not in the default lists.
- ↑ Including automatic settings changes between matches, if you defined them in your rotation scripts
- ↑ Gametype 2 is purposely not in the list due to the particular nature of Single Player Deathmatch mode.