The Quiet Song of Plants - v1.1.0
Hello my dear Patrons! I know you've all been eagerly waiting for the new update, and I'll be the first to admit it's long overdue. I promised to release it as soon as possible, but I clearly overestimated my capabilities and underestimated just how much content needed polishing. To avoid keeping you waiting any longer, I've decided to release the first half of what I've been working on now. The second half will follow shortly—hopefully by the end of the month, or at the very latest, a week after.
So, what's included in this new update?
Over 2 hours and 30 minutes of new gameplay,
8 new H-scenes,
4 new minigames,
3 new characters.
I won't even attempt to count the new images and music tracks—let's just say there are a ton! XD
Over the next two weeks, I'll be pushing out updates daily to address any bugs and issues that crop up, so make sure to keep checking back for new versions. I'll also update the post title with version numbers (e.g., v1.1.0 → v1.1.1 → v1.1.3) so you'll know exactly when a fix has been rolled out.
Thanks as always for your patience and support—enjoy the new content!
QSOP - v1.1.0
2026-08-18
What's New
New minigames: "Toss the Hares", "Fruit Catching" (fling hares to the bound fox on an arc).
New NSFW scenes and branching: Inari, Akhves, and the fox (Ferah/Zizi) routes with more choices and lustier dialogue.
Conditional choices can now be shown greyed-out with an "unavailable" explanation / hint text.
Effects/stat values can now be used as variables inside dialogue lines (e.g. {knife_owner}), like playerName.
New fullscreen image animations: vertical bottom-to-top pan (stops at top), looping vertical pan with smooth ease-in/out and end pauses, horizontal zoom-pan loop, and a "flash orgasm soft" effect.
Done
Fruit Catching: added touchscreen support (touchstart/touchmove), "perfect" result registration to match other minigames, scaled up basket/fruit sizes, and updated the pinned item images (birds, salamanders, scorpions, insects, termites).
Path Brushing: cached the scaled background into an offscreen canvas so each frame blits 1:1 instead of re-scaling the large image every frame; added reverse-path support; made the timer indicator non-interactive.
Toss the Hares: added Android/coarse-pointer size scaling for hares and hit circles, calm-level-based heart sizing, and removed hit-spawn circles / image shift on hit.
Minigames: hide the back button once gameplay starts (instructions "Start"); guarded restart/re-entry so render loops, timers, and injected path scripts are cleaned up instead of stacking.
Intro video: skip with Spacebar or Right Arrow; listener only attached while a video is playing.
Gated verbose [AudioDiag] logging behind an AUDIO_DIAG toggle (off by default) and removed an expensive stack-trace capture.
Smoother characterUpdate transitions (previous sprite cross-fades out) and correct trimmed-image usage for characterUpdate arrays.
Renamed scene ids to use underscores consistently (including choices).
Fixed
Path Brushing lag: the minigame re-scaled the full-size background WebP every frame, which fell back to CPU raster (very visible with DevTools open) — now scaled once and cached.
Minigame restart freeze: restart used a stale scene reference; now uses this.currentScene.
musicTrack.fadeIn / musicControl "fade" not applying on regular navigation.
Delayed SFX not restored on dev-reload / load-from-save (looping SFX only).
Cache invalidation for large (untrimmed) character images when toggling image size.
build_production now includes character expressions that live in characters trimmed.
Decisions
Cache static, per-frame-invariant canvas content (backgrounds) instead of redrawing it every frame — the standard fix for canvas games.
Keep audio diagnostics available but disabled by default so production/normal play isn't slowed by retained console logs.
Keep minigames fully optional/skippable; treat the back button as unavailable once a run is in progress.
Notes
The DevTools-open lag on brushing was a per-frame compute cost (image scaling), not a memory leak; it only affected brushing because it's the only minigame redrawing a large scaled background each frame.
The Android "music repeats over and over" bug on continuation:true scenes is still not fully pinned down; the [AudioDiag] toggle can be re-enabled to investigate via chrome://inspect.
Long playthroughs still raise GPU/renderer memory (working set), which a page reload doesn't fully reclaim — worth a repeated enter/exit memory check to rule out leaks.
Next
Optionally bake completed paths into the background cache to further cut brushing per-frame cost.
Continue Chapter 2 content and the new fox character route.
Resolve the Android looping-music bug on continuation:true scenes.
