queueSave

Queues a debounced asynchronous save, unless nothing has changed since the last write.

Used where the caller wants what is already in memory flushed soon - a player leaving, say - rather than paying for a write it does not need. updateSettings is the only thing that changes a setting, and it queues its own save, so a quit almost always has nothing to persist: without the guard every quit re-serialized every player ever stored in the file to write bytes identical to the ones already there.