forked from Mirrorlandia_minetest/minetest
Add dedicated_server_step setting
This commit is contained in:
parent
14a71590c3
commit
0309021359
@ -123,5 +123,6 @@ void set_default_settings(Settings *settings)
|
|||||||
settings->setDefault("server_map_save_interval", "5.3");
|
settings->setDefault("server_map_save_interval", "5.3");
|
||||||
settings->setDefault("full_block_send_enable_min_time_from_building", "2.0");
|
settings->setDefault("full_block_send_enable_min_time_from_building", "2.0");
|
||||||
settings->setDefault("enable_experimental", "false");
|
settings->setDefault("enable_experimental", "false");
|
||||||
|
settings->setDefault("dedicated_server_step", "0.05");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -4500,13 +4500,14 @@ void dedicated_server_loop(Server &server, bool &kill)
|
|||||||
|
|
||||||
for(;;)
|
for(;;)
|
||||||
{
|
{
|
||||||
|
float steplen = g_settings->getFloat("dedicated_server_step");
|
||||||
// This is kind of a hack but can be done like this
|
// This is kind of a hack but can be done like this
|
||||||
// because server.step() is very light
|
// because server.step() is very light
|
||||||
{
|
{
|
||||||
ScopeProfiler sp(g_profiler, "dedicated server sleep");
|
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)
|
if(server.getShutdownRequested() || kill)
|
||||||
{
|
{
|
||||||
@ -4521,7 +4522,7 @@ void dedicated_server_loop(Server &server, bool &kill)
|
|||||||
g_settings->getFloat("profiler_print_interval");
|
g_settings->getFloat("profiler_print_interval");
|
||||||
if(profiler_print_interval != 0)
|
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:"<<std::endl;
|
infostream<<"Profiler:"<<std::endl;
|
||||||
g_profiler->print(infostream);
|
g_profiler->print(infostream);
|
||||||
|
Loading…
Reference in New Issue
Block a user