Siesta changelog
All notable changes to Siesta are documented here. This project adheres to Semantic Versioning.
[1.2.2] - 2026-08-05
Section titled “[1.2.2] - 2026-08-05”- NPCs added by other mods show up again. Siesta was hiding them in the fraction of a second before the game had finished spawning them, which made the spawn fail and lost the NPC for that session. Measured on a 177-NPC pack: every one of them was refused before, none are now. If you have been missing modded NPCs, this is the one to update for.
[1.2.1] - 2026-08-05
Section titled “[1.2.1] - 2026-08-05”- NPCs from Fannso’s MoreNPCs work again. Siesta was switching off that mod’s whole per-frame loop, which left Dominic, Silas and Thomas locked, their dialogue stale and their building setup unfinished. Only the one watcher that cannot run on a mismatched build is skipped now, and only after it has actually failed once.
Removed
Section titled “Removed”- The
MoreNpcsAutoCompatsetting is gone. The MoreNPCs handling no longer has a wrong case to opt out of. Delete the line fromUserData/MelonPreferences.cfgif you want a tidy file; leaving it does nothing.
[1.2.0] - 2026-08-01
Section titled “[1.2.0] - 2026-08-01”- Works on Schedule I 0.4.6f11. Update S1API to 3.1.1 with it.
Changed
Section titled “Changed”- NPCs the game flagged as important are no longer exempt from culling. 0.4.6f11 deleted that flag and put nothing in its place. Police, dealers and employees on a job, customers waiting on a delivery, and anyone fleeing, fighting or talking are still exempt.
[1.1.1] - 2026-07-22
Section titled “[1.1.1] - 2026-07-22”- NPCs walking into a building are no longer deep-culled mid-approach. Pausing them there stranded groups at the door (visible as door clusters with big NPC packs) and re-ran the fragile building enter path on every wake. NPCs whose active schedule step is a stay-in-building event now keep simulating until they are inside; once inside, the existing in-building rule takes over.
[1.1.0] - 2026-06-21
Section titled “[1.1.0] - 2026-06-21”A correctness pass so NPCs feel like vanilla under heavy population (MoreNPCs), plus a real per-NPC saving.
- NPCs no longer freeze mid-action when they go far off-screen. Police (pursuit/patrol/checkpoint/sentry), and civilians who are fleeing, in combat, cowering, calling the police, or buying are now exempt from the deep cull, so they keep behaving. This fixes the “NPC stood frozen until I walked up / interacted” reports.
- Waking a culled NPC is now reliable: the navmesh agent is restored and re-seated before the schedule re-evaluates, so NPCs resume their action immediately instead of standing inert, and the “not on navmesh” log spam is gone.
- Cosmetic culling no longer freezes a roaming NPC mid-route (the host re-enables its nav agent after hiding it).
- NPC models no longer pop on inside a building or vehicle when restored.
- NPCs in a conversation, and NPCs indoors, are no longer deep-culled.
- A one-off wake failure no longer pins an NPC to Full for the whole session (it retries after a short backoff).
- Awareness throttle on deep-culled NPCs: their 10Hz vision sweep is paused (the same call the game makes when an NPC enters a building), recovering a real per-NPC cost. Local and multiplayer-safe.
- Instant promote pass: a far NPC that suddenly comes near or on-screen is restored the same frame, so fast turns in a dense (MoreNPCs) crowd no longer leave a visibly frozen or hidden NPC.
- Daily reconcile on the natural midnight rollover so distant culled NPCs are never left a day behind.
[1.0.0] - 2026-06-20
Section titled “[1.0.0] - 2026-06-20”Initial release.
- Distance/visibility LOD for all NPCs (base game + any NPC-adding mod) via the game NPC registry.
- Three tiers: Full, Cosmetic (renderer hidden, AI untouched), Deep (movement + schedule paused).
- Clean wake-up: schedule re-enable +
EnforceStatetime catch-up, movement resume, NavMesh repair, then reveal - no T-pose, no off-NavMesh agents (failed wakes are kept Full for the session). - Functionality-preservation exemptions: dealers/employees/customers mid-task, story/
IsImportant, in-dialogue/in-vehicle/KO’d/panicking NPCs, and anyone near any player are never deep-culled. - Multiplayer safety: cosmetic culling is local per-client; deep culling is host-authoritative only.
- Budgeted, allocation-free re-evaluation loop with distance hysteresis.
RestoreAllbefore save / scene change / quit so NPCs are never persisted in a culled state.- Configurable distances, tier toggles, on-screen guard and an optional FPS counter (MelonPreferences).
- Optional, opt-in compatibility shim for the CrossCompat/Mono Fannso’s MoreNPCs build on standard
IL2CPP (
MoreNpcsCompatShim, default off). - Debug build only: on-screen HUD, hotkeys (F6-F10) and a
siesta ...dev-console bridge.