Turning off sim time might muck up the simulation loop due to the real clock running faster than the simulation can keep up. That might be ok, but maybe we should have a GetTimeDelta() method in TimeKeeper to get the duration between the last simulation loop and the current one, so that physics updates at a somewhat steady rate, even if some simulation loops take too long. As an example, I typically run the simulation loop at 200Hz, but the lidar plugin takes more than 1/200th of a second to execute on some PCs, resulting in a somewhat bumpy time progression. With sim time controlled by flatland this will result in Flatland progressing sim time unevenly, but within that sim time things will be normal. I believe all the plugins and update methods take a time delta float for their updates, but Flatland Server should populate this with the real time delta. This would also result in plugins not updating at their full data rate if the CPU was too busy.
Should flatland stop publishing /clock when sim time is disabled? I'm not sure, but I suspect so.
Two concerns: