by Spike » Tue Aug 26, 2014 10:38 pm
frikac did a load of float tricks to pack more info into the parms in prydon gate. most of these tricks will loose precision from string conversions, and will thus be unusable for cvars, but may be usable if your settings are player-specific and thus can use parms for them.
using the negative bit of floats only gives 1 extra bit, not twice as many. due to string conversions you cannot distinguish between positive and negative 0 (also true if you're using dp).
an ieee single-precision float has 23 mantissa bits, 8 exponent bits, and 1 sign bit.
thus 23 integer bits can trivially be stored in a float. 24 bits is possible, but uses a different bit pattern. 25 bits will suffer from precision issues and will start to forget other bits.
nomonsters, gamecfg, scratch1, scratch2, scratch3, scratch4, savedgamecfg, saved1, saved2, saved3, saved4, temp1, noexit
none of those cvars have any special meaning to the engine.
you can probably find others (like modem cvars) which are defined but not used by most players.
many engines support a 'set' console command which can be used to dynamically create new cvars. be sure it use it in your mod's default.cfg
'seta' also exists in many engines, which will attempt to preserve the cvars over engine restarts.
you can then just use the regular cvar builtins for these cvars as if they always existed.
for completeness: if you're making a quakeworld mod, you can use the serverinfo/localinfo/setinfo commands combined with the infokey builtin to create custom(or per-player) settings.
.