From: Perttu Ahola Date: Wed, 7 Mar 2012 19:44:53 +0000 (+0200) Subject: Add dedicated_server_step setting X-Git-Url: http://81.2.79.47:8989/gitweb/?a=commitdiff_plain;h=0309021359ab74e6c7bea2fd983df1780fd9a4bc;p=zefram%2Fminetest%2Fminetest_engine.git Add dedicated_server_step setting --- diff --git a/src/defaultsettings.cpp b/src/defaultsettings.cpp index 3f6901e8..6c611d67 100644 --- a/src/defaultsettings.cpp +++ b/src/defaultsettings.cpp @@ -123,5 +123,6 @@ void set_default_settings(Settings *settings) settings->setDefault("server_map_save_interval", "5.3"); settings->setDefault("full_block_send_enable_min_time_from_building", "2.0"); settings->setDefault("enable_experimental", "false"); + settings->setDefault("dedicated_server_step", "0.05"); } diff --git a/src/server.cpp b/src/server.cpp index bf90b2aa..97fafd2c 100644 --- a/src/server.cpp +++ b/src/server.cpp @@ -4500,13 +4500,14 @@ void dedicated_server_loop(Server &server, bool &kill) for(;;) { + float steplen = g_settings->getFloat("dedicated_server_step"); // This is kind of a hack but can be done like this // because server.step() is very light { ScopeProfiler sp(g_profiler, "dedicated server sleep"); - sleep_ms(30); + sleep_ms((int)(steplen*1000.0)); } - server.step(0.030); + server.step(steplen); if(server.getShutdownRequested() || kill) { @@ -4521,7 +4522,7 @@ void dedicated_server_loop(Server &server, bool &kill) g_settings->getFloat("profiler_print_interval"); if(profiler_print_interval != 0) { - if(m_profiler_interval.step(0.030, profiler_print_interval)) + if(m_profiler_interval.step(steplen, profiler_print_interval)) { infostream<<"Profiler:"<print(infostream);