MantisBT - Zandronum
|View Issue Details|
|ID||Project||Category||View Status||Date Submitted||Last Update|
|0002715||Zandronum||[All Projects] Suggestion||public||2016-04-30 12:37||2018-10-21 12:23|
|Priority||normal||Severity||minor||Reproducibility||have not tried|
|Target Version||Fixed in Version|
|Summary||0002715: Scripting access to dmflags and co|
|Description||One of the major uses of ConsoleCommand is to have mods set dmflags. So in order to remove ConsoleCommand we need to provide a proper way for mods to affect gameplay settings.|
I managed to put together an interface that allows mods to specify values for gameplay settings while allowing the server admin to override the mods' choices. ACS can set a dmflag to be either enabled, disabled or leave it as it is (leave it as "default", which means it falls back to the actual CVar value).
This enables no-monsters mode and limited airmovement. It also disables infinite ammo and no jump.
Some issues, though:
* should the mod really be allowed to disable a setting like this? Maybe all we should provide is default and enabled.
* I still think that compat_limitedairmovement should be inverted. We should really decide on dmflags because this will sort of lock them
* The patch currently needs to change all declarations of the affected flag CVars, because C++03 doesn't have constructor deferring (I could add a constructor overload to FFlagCVar otherwise).
|Steps To Reproduce|
|Additional Information||https://bitbucket.org/zandronum/zandronum-sandbox/compare/acsgameplaysettings..Torr_Samaho/zandronum#diff [^]|
|Tags||No tags attached.|
|2016-04-30 12:37||Dusk||New Issue|
|2016-04-30 12:38||Dusk||Relationship added||child of 0001070|
|2016-04-30 12:38||Dusk||Assigned To||=> Dusk|
|2016-04-30 12:38||Dusk||Status||new => needs review|
|2016-04-30 12:41||Dusk||Description Updated||bug_revision_view_page.php?rev_id=8944#r8944|
|2016-04-30 23:50||Blzut3||Note Added: 0014781|
|2016-05-01 10:21||Dusk||Note Added: 0014783|
|2018-10-21 12:23||Leonard||Relationship added||has duplicate 0003558|