cvar_t samelevel = {CVAR_NOTIFY, "samelevel","0", "repeats same level if level ends (due to timelimit or someone hitting an exit)"};
cvar_t noexit = {CVAR_NOTIFY, "noexit","0", "kills anyone attempting to use an exit"};
-cvar_t developer = {0, "developer","100", "prints additional debugging messages and information (recommended for modders and level designers)"};
+cvar_t developer = {0, "developer","0", "prints additional debugging messages and information (recommended for modders and level designers)"};
cvar_t developer_entityparsing = {0, "developer_entityparsing", "0", "prints detailed network entities information each time a packet is received"};
cvar_t skill = {0, "skill","1", "difficulty level of game, affects monster layouts in levels, 0 = easy, 1 = normal, 2 = hard, 3 = nightmare (same layout as hard but monsters fire twice)"};
}
-/*
-================
-Host_ClearMemory
-
-This clears all the memory used by both the client and server, but does
-not reinitialize anything.
-================
-*/
-void Host_ClearMemory (void)
-{
- Con_DPrint("Clearing memory\n");
- Mod_ClearAll ();
-
- cls.signon = 0;
- memset (&sv, 0, sizeof(sv));
- memset (&cl, 0, sizeof(cl));
-}
-
-
//============================================================================
/*
Returns false if the time is too short to run a frame
===================
*/
-extern qboolean cl_capturevideo_active;
-extern double cl_capturevideo_framerate;
-extern qfile_t *cl_capturevideo_soundfile;
qboolean Host_FilterTime (double time)
{
double timecap, timeleft;
timecap = sys_ticrate.value;
if (cls.state != ca_dedicated)
{
- if (cl_capturevideo_active)
- timecap = 1.0 / cl_capturevideo_framerate;
+ if (cls.capturevideo_active)
+ timecap = 1.0 / cls.capturevideo_framerate;
else if (vid_activewindow)
timecap = 1.0 / cl_maxfps.value;
}
timeleft = timecap - (realtime - oldrealtime);
if (timeleft > 0)
{
-#if 1
+#if 0
if (timeleft * 1000 >= 10)
Sys_Sleep(1);
#else
// try to hit exactly a steady framerate by not sleeping the full amount
msleft = (int)floor(timeleft * 1000);
if (msleft >= 10)
- Sys_Sleep(msleft);
+ Sys_Sleep(msleft - 9);
#endif
return false;
}
host_realframetime = host_frametime = realtime - oldrealtime;
oldrealtime = realtime;
- if (cl_capturevideo_active && !cl_capturevideo_soundfile)
+ if (cls.capturevideo_active && !cls.capturevideo_soundfile)
host_frametime = timecap;
// apply slowmo scaling
// setup the VM frame
SV_VM_Begin();
// stop running server frames if the wall time reaches this value
- aborttime = Sys_DoubleTime() + 0.05;
+ aborttime = Sys_DoubleTime() + 0.1;
for (framecount = 0;framecount < framelimit && sv.timer > 0;framecount++)
{
if (sys_ticrate.value <= 0)
if (host_speeds.integer)
{
- pass1 = (time1 - time3)*1000000;
+ pass1 = (int)((time1 - time3)*1000000);
time3 = Sys_DoubleTime();
- pass2 = (time2 - time1)*1000000;
- pass3 = (time3 - time2)*1000000;
+ pass2 = (int)((time2 - time1)*1000000);
+ pass3 = (int)((time3 - time2)*1000000);
Con_Printf("%6ius total %6ius server %6ius gfx %6ius snd\n",
pass1+pass2+pass3, pass1, pass2, pass3);
}
if (timecount < 1000)
return;
- m = timetotal*1000/timecount;
+ m = (int)(timetotal*1000/timecount);
timecount = 0;
timetotal = 0;
c = 0;
// FIXME: this is evil, but possibly temporary
// COMMANDLINEOPTION: Console: -developer enables warnings and other notices (RECOMMENDED for mod developers)
if (COM_CheckParm("-developer"))
- developer.value = developer.integer = 100;developer.string = "100";
+ {
+ developer.value = developer.integer = 100;
+ developer.string = "100";
+ }
if (COM_CheckParm("-developer2"))
{
- developer.value = developer.integer = 100;developer.string = "100";
- developer_memory.value = developer_memory.integer = 100;developer.string = "100";
- developer_memorydebug.value = developer_memorydebug.integer = 100;developer_memorydebug.string = "100";
+ developer.value = developer.integer = 100;
+ developer.string = "100";
+ developer_memory.value = developer_memory.integer = 100;
+ developer.string = "100";
+ developer_memorydebug.value = developer_memorydebug.integer = 100;
+ developer_memorydebug.string = "100";
}
// LordHavoc: quake never seeded the random number generator before... heh