From: divverent Date: Tue, 24 Nov 2015 13:39:23 +0000 (+0000) Subject: Make the number of frames used for initial settling configurable. X-Git-Tag: xonotic-v0.8.5~88^2~89 X-Git-Url: https://git.rm.cloudns.org/?a=commitdiff_plain;h=8367a30715017e7a497f6baf65dbaff5f72d6cf3;p=xonotic%2Fdarkplaces.git Make the number of frames used for initial settling configurable. Quake uses two frames, which should normally be good enough anyway. This is mainly for mods that use more than 2 frames for initialization to avoid some minor odd effects to clients that connect that early. git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12232 d7cf8633-e32d-0410-b094-e92efae38249 --- diff --git a/sv_main.c b/sv_main.c index f1f1248a..b6e3b3f1 100644 --- a/sv_main.c +++ b/sv_main.c @@ -123,6 +123,7 @@ cvar_t sv_gameplayfix_unstickplayers = {0, "sv_gameplayfix_unstickplayers", "1", cvar_t sv_gameplayfix_unstickentities = {0, "sv_gameplayfix_unstickentities", "1", "hack to check if entities are crossing world collision hull and try to move them to the right position"}; cvar_t sv_gameplayfix_fixedcheckwatertransition = {0, "sv_gameplayfix_fixedcheckwatertransition", "1", "fix two very stupid bugs in SV_CheckWaterTransition when watertype is CONTENTS_EMPTY (the bugs causes waterlevel to be 1 on first frame, -1 on second frame - the fix makes it 0 on both frames)"}; cvar_t sv_gravity = {CVAR_NOTIFY, "sv_gravity","800", "how fast you fall (512 = roughly earth gravity)"}; +cvar_t sv_init_frame_count = {0, "sv_init_frame_count", "2", "number of frames to run to allow everything to settle before letting clients connect"}; cvar_t sv_idealpitchscale = {0, "sv_idealpitchscale","0.8", "how much to look up/down slopes and stairs when not using freelook"}; cvar_t sv_jumpstep = {CVAR_NOTIFY, "sv_jumpstep", "0", "whether you can step up while jumping"}; cvar_t sv_jumpvelocity = {0, "sv_jumpvelocity", "270", "cvar that can be used by QuakeC code for jump velocity"}; @@ -534,6 +535,7 @@ void SV_Init (void) Cvar_RegisterVariable (&sv_gameplayfix_unstickentities); Cvar_RegisterVariable (&sv_gameplayfix_fixedcheckwatertransition); Cvar_RegisterVariable (&sv_gravity); + Cvar_RegisterVariable (&sv_init_frame_count); Cvar_RegisterVariable (&sv_idealpitchscale); Cvar_RegisterVariable (&sv_jumpstep); Cvar_RegisterVariable (&sv_jumpvelocity); @@ -3492,7 +3494,7 @@ void SV_SpawnServer (const char *server) // run two frames to allow everything to settle sv.time = 1.0001; - for (i = 0;i < 2;i++) + for (i = 0;i < sv_init_frame_count.integer;i++) { sv.frametime = 0.1; SV_Physics ();