 
 void UpdateCamera()
 {
+    if (engine.headless)
+        return;
+
+    // On the server, use a simple freelook camera
+    if (runServer)
+    {
+        UpdateFreelookCamera();
+        return;
+    }
+
+
     Node@ playerNode = FindOwnNode();
     if (playerNode is null)
         return;

    audio.listenerRotation = dir;
}

void UpdateStatus()
{
    if (engine.headless)
        return;

    if (singlePlayer)


void CreateOverlays()
{
    if (engine.headless || runServer)
        return;

    int height = graphics.height / 22;
