wesnoth/wesnoth — pull request #203 by Rift-Walker (2014-06-14 07:08:15+00:00)
Title: Add define functionality to scenarios, eras, and mods

This pull request extends the define= system, currently used in campaigns, to multiplayer scenarios, eras, and mods. The system is intended to defer loading sections of config until they are required (when a level is selected). As a result, less config is loaded at mp_create, and less unnecessary config is floating around, taking up memory and namespace in multiplayer.
In order for this system to be effective, UMC devs will have to edit their code to utilize it. As a rule, toplevel attributes and [side] tags should be outside of #ifdefs, while everything else should be inside. Child tags of [side] should also be inside of an #ifdef.
Here I have already edited all the scenarios and eras in data/multiplayer/ to use the system.