Server Mechanics
The server stays online continuously without needing a player to host. Several automatic behaviors handle game progression.
Host Player
The server runs an invisible "host" player that handles game progression:
| Behavior | What It Does |
|---|---|
| Auto-sleep | Host goes to bed when all players are sleeping |
| Auto-pause | Game pauses when no players are online |
| Event skipping | Cutscenes are automatically skipped (festivals excluded) |
| Menu handling | Dialogs, level-ups, and shipping menus are dismissed |
| Mailbox checking | Mail is automatically checked each morning |
Pause Behavior
- Players online: Game runs normally
- No players: Game pauses at whatever time the last player left, so the next player resumes exactly there
- Empty past 1:00 AM: The server waits a grace period (
AUTO_SLEEP_GRACE_SECONDS, default 5 minutes) for a dropped player to return, then the host sleeps and the next player arrives at 6:00 AM - Everyone leaves mid-event: A festival, wedding, or cutscene still running on the host is finished first, then the pause engages
Progression Unlocks
The host automatically unlocks certain progression items:
- Pet naming
- Cave choice (mushrooms or bats)
- Community Center door
- Sewers key (at 60+ museum artifacts)
- Fishing rod (Day 2)
Crop Preservation
Crops track their owner (the player who planted them). When owners go offline:
- Unwatered crops get extra days instead of dying
- Season-end death is delayed while the owner is offline
- Normal rules apply once the owner returns
Desync Protection
Network desyncs can freeze the game. The server automatically kicks stuck players:
| Situation | Timeout | Action |
|---|---|---|
| Stuck at day transition | 20 seconds | Kicked |
| Not ready during save | 60 seconds | Kicked |
Kicked players can reconnect immediately. Progress is not lost.
Chest Protection
To prevent griefing, the server locks player storage:
- Players cannot access other players' cabin chests
- Fridges and inventories are protected
- Only the cabin owner can access their storage
Festival Handling
- Host automatically joins festivals
- Players participate normally
- If stuck, an admin can use the
!eventcommand to force-start
For the full handling model and a per-festival reference, see Festival Handling in the developer docs.