Fixed timer handle error in volfeatures on map end.
Fixed incorrect default value in class cvars.
Changed map config files to be loaded in OnAutoConfigsBuffered.
Started writing docs about volumetric features.
Improved manual style, lined up tables.
Added missing attributes in anticamp conversion functions.
Fixed anticamp not extinguishing players who leave a volume that ignite players.
Fixed existing volumes not removed after a map change.
Added class editor feature that can modify certain class attributes on players in a volume.
Fixed typo in class attribute name.
Fixed health regeneration timer not stopping if a player were kicked or timed out.
Fixed some anticamp bugs.
Warning types confirmed working: chat, center, menu (minior bug: the warning text is item no. 2).
Fixed base event handler bugs.
Added validation warnings on anticamp intervals in case of invalid intervals.
Fixed volume states not properly cleaned up when players die or disconnect.
Finished base event handler for volfeatures.
Finished zr_voladd, zr_vol_remove, zr_vol_list and zr_vol_dumpstates console commands.
Removed unused function call in class module.
Fixed minior bugs in parameter parser (paramtools.inc).
Made a debug tools module with console commands for directly testing certain functions.
Made CVARs for volumetric features module.
Made trigger delay attribute for volumes, per player. Count down for n seconds after when a player enter. When leaving a volume trigger delay is aborted.
Made parameter parsing functions; paramtools.inc.
Made functions for setting and parsing generic volume attributes.
Updated header in files to volumetric features and paramtools.inc.
Removed unused knockback functions in zadmin.inc.
Made certain class functions into stock functions.
Added some base functions for working with modules. It's not tested, but it compiles. CVARs are not created yet.
Implemented volume events.
Function VolUpdatePlayerChanges with help from VolGetPlayerStates detects if a player leave or enter a volume between main timer intervals. This solution is not final and might be expensive. Needs to be optimized later!