Files
TheLastGarden/.planning/anti-fomo-doctrine.md
T
josh dddadbc1ac docs(01-06): author anti-FOMO doctrine consolidating PROJECT/REQUIREMENTS/CLAUDE/PITFALLS constraints (PIPE-05, UX-13)
- Banned Mechanics table enumerates 17 banned patterns (gacha, lootboxes,
  narrative gating, daily login, streaks, limited-time, energy/stamina,
  rewarded ads, push notifications, loss-aversion copy, countdown timers,
  Season skipping, time-skip purchases, hint systems, mobile nag UX, etc.)
- Allowed Engagement section names the 4 affordances that respect presence
  rather than demand it (Memory Storm opt-in, while-you-were-away letter,
  tab-title bloom indicator, Season-transition save-export reminder)
- Review Checklist provides 3 questions for every UX/copy/monetization change
- Source Documents section cites PROJECT.md, REQUIREMENTS.md, CLAUDE.md,
  .planning/research/PITFALLS.md
- Per CONTEXT D-07: doctrine is enforced by review, NOT by lint rule on UX
  strings (the doc explicitly notes this and proposes no lint rule)
- Per CONTEXT D-09: lives in .planning/ alongside other internal design docs
2026-05-08 23:29:01 -04:00

4.5 KiB

Anti-FOMO Doctrine

Phase 1 deliverable per PIPE-05 + UX-13. Consolidated from PROJECT.md, REQUIREMENTS.md, CLAUDE.md, and .planning/research/PITFALLS.md #9.

This document is referenced at every UX, monetization, and copy review going forward. It enumerates mechanics this game does not use, with the reason for each, so the answer to a "should we add X?" question is in writing rather than relitigated.

Per CONTEXT D-07: this doctrine is enforced by review, not by lint rules on UX strings. The reviewer (you, at every UX/monetization/copy decision) consults this list and rejects or rewrites any change that violates it.

Banned Mechanics

Mechanic Why Banned
Gacha mechanics Directly contradicts the game's thematic argument that complex things cannot be reduced to simple transactions. (PROJECT.md, REQUIREMENTS.md Out of Scope, CLAUDE.md)
Lootboxes Same reason as gacha — undermines the story's monetization-as-meaning argument.
Narrative gating behind purchase The story IS the product; story content is never paid.
Random-drop monetization All cosmetics must be deterministic catalog purchases.
Daily login bonuses Presence is not a debt the game collects.
Login streaks Skipping a day is allowed, even encouraged.
Limited-time / time-limited content The game's premise is what persists.
Energy / stamina systems Anti-cozy gating that interrupts contemplative play.
Rewarded ads Anti-cozy; tonally incoherent with a contemplative grief-narrative.
Re-engagement push notifications Memory Storm opt-in is the only allowed notification class.
Loss-aversion copy ("you'll lose your X") Tonally incompatible with cozy/contemplative.
Visible countdown timers in core UI The cello is the timer. The seasons are the timer. Not a digit.
"Don't miss out" / "limited time" / "only X hours left" copy Bannable phrases at copy review.
Season skipping (vs. Season acceleration) Players must never miss authored story beats; acceleration is allowed, skipping is forbidden.
Time-skip purchases that bypass real-time Real-time IS the metaphor for memory; skip-time would violate mechanic-as-metaphor doctrine.
Hint system / objective tracker Discovery-driven progression (A Dark Room rule); explicit objectives violate the tone.
Mobile-style nag UX Cozy audience expects respect; nag patterns will tank reviews.

Allowed Engagement

The following engagement affordances are explicitly allowed because they respect presence rather than demand it:

  • Memory Storm opt-in notifications — the single allowed notification class. Player must explicitly opt in. Never daily, never marketing, never streak-based.
  • "While you were away" letter on return — written in Lura's voice, never a stat dump (UX-02). Describes what bloomed, what the wind brought; never "fragments per hour."
  • Tab-title bloom indicator when a fragment is ready (UX-09, Phase 8) — passive surfacing, no notification.
  • Save-export reminder after Season transitions — relationship-saving, not nag.

Review Checklist

When reviewing any UX, copy, monetization, or feature change, ask three questions:

  1. Does this create urgency around presence rather than around content? If yes → reject.
  2. Does this frame absence as loss? If yes → rewrite or reject.
  3. Would removing this from the game make it less cozy? If no → reconsider whether the change belongs.

Additional sanity checks for monetization specifically:

  • Does this mechanic gate any story content? → reject (PROJECT.md hard constraint).
  • Is this random-drop / gacha / lootbox shaped? → reject.
  • Is this a "limited-time" anything? → reject.

Source Documents

This doctrine consolidates constraints already locked in:

  • PROJECT.md § "Out of Scope" — anti-features (gacha, lootboxes, narrative gating, Season skipping, generic flora, combat, multiplayer, voiced dialogue, named Keeper, generic cosmetics)
  • REQUIREMENTS.md UX-13 + § "Out of Scope" table — 24 explicit exclusions
  • CLAUDE.md § "Hard Thematic Constraints (Out of Scope by Design)" — 13 thematic exclusions, no FOMO push notifications, no daily login bonuses, no streaks, no limited-time, no energy/stamina
  • .planning/research/PITFALLS.md § "Pitfall 9: FOMO/Nag Mechanics Violate Cozy Tone" — rationale + warning signs

Authored: Phase 1 deliverable. Updates: append-only — entries can be added (new banned patterns identified) but never removed without surfacing the change for review.