Skip to content

Optimizer

  • A dedicated server uses less CPU, on Windows and under Wine or Proton.
  • An idle Windows server went from 19.9 % to 7.9 % of one CPU core.
  • An idle server under Proton in Docker went from 37.7 % to 16.1 %.
  • Players notice nothing.

The mod checks where it runs and turns on only what helped there. The server sleeps through the last fraction of a short wait instead of checking the clock over and over. Under Wine with a CPU limit, the server starts no more worker threads than that limit.

The game keeps its 60 steps a second, so gliding and spawning work as before.

Under Wine, ntsync and the performance CPU governor help more than any mod. At start, a log line names what your host lacks.

Optimizer comes in enshwick.zip. The install guide shows where to put it. It needs Enshwick.

SettingDefaultRangeWhat it doesTakes effect
exact_waitsautoauto, on or offShort waits sleep instead of checking the clock over and over. “auto” turns them on for the dedicated server only. Turning them on after a start without them waits for the next start.at once
task_workers00 to 64The most worker threads each task group of the dedicated server starts. 0 picks the number for you.after a restart
server_wait_cap_ms11 to 8The longest the server waits between its passes while players are online, in milliseconds. 1 is the base game. Raising it after a start at 1 with measure off waits for the next start.at once
measuretrueWrites a line a minute to the log with the server’s CPU use and loop rates.at once

You change these values in the game, as the settings guide shows.

Only the dedicated server needs Optimizer. In a game you host, every change stays off unless a setting turns it on.

Gliding, joining or combat feels different. If you raised server_wait_cap_ms, set it back to 1.

Something else goes wrong. Open an issue in the mod’s repository. Attach the files from the logs/enshwick/ folder in your game folder.