the following proposal lets modders fine tweak which options to show and their properties:
- remove engine options section/tab from the lobbies
- introduce a new tag in modoptions "engineoption:", which when present, the option instead of being written to the [MODOPTIONS] section, will be written to [GAME] instead, the option will have to list the full range of the engine option params, so it will be possible for example to remove lineage mode for commander ends just by not listing it, example:
Code: Select all
{ key="engineoption:gamemode", name="Game end mode", desc="What it takes to eliminate a team", type="list", def="0", items={ {key="0", name="Kill Everything", desc="Every last unit must be eliminated, no exceptions!"}, {key="1", name="Commander Ends", desc="When the commander is dead, the game is lost for the player"}, } },
- introduce a compatibility file on the engine side which would allow old mods to retain the normal engine settings unless told explicitly
- include modoptions.lua in springcontent.sdz so it will be loaded unless the mod has already one ( the modder then could copy in his modoptions.lua file the engine option he wishes to be included )
- include engineoptions.lua as accessory file in springcontent.sdz and have such file to be auto-appended to modoptions.lua, mods can override it with a blank file to get rid of them or just copy the wanted options
- have a boolean option "dontincludeengineoptions" in modoptions.lua which default to false which toggles the include of default engine options ( all of them together), if modders wants only certain, they'll disable all of them and copy only the necessary
- lock game speed
- lock ingame alliances