← Back to DevLog

DevLog #1 — Designing Cat Companion Interactions Around "Being Needed"


platform: 个人站 DevLog lang: en topic_id: HW-20260904-01 title: “DevLog #1 — Designing Cat Companion Interactions Around ‘Being Needed’” status: 已关闭 (B4 交付 · 2026-09-04) compliance: C1 §5.2 十二维核查通过 (无 🔴)

This is the first in a series of notes on how I’m approaching the cat-companion systems for the cozy pet game I’m building solo. No feature reveals yet — just the design thinking, because that’s the part I wish more devs shared.

The problem I kept hitting

Early prototypes felt polished but empty. The cat anims were fine. The toy system worked. And yet playtesters shrugged. The feedback, when I dug in, was always some version of: “it’s cute, but I don’t think it cares about me.”

That sentence reframed everything.

The hypothesis: continuity of being needed

Players don’t want a pet sim with more systems. They want a creature that notices. So I stopped designing content and started designing memory.

Concretely, the cat’s mood is a small state machine driven by a lightweight “interaction ledger” — a ring buffer of recent player actions, not a giant stat sheet. Each behavior (feed / groom / play / skip-a-day) writes an entry. Reactions are resolved by pattern matching over that ledger, not by thresholds on a single meter.

Why a ledger instead of a bond meter? Because a meter tells the player “fill me.” A ledger lets the cat surprise them: “you haven’t groomed me in three days, so I’m sitting by the brush.” That surprise is the product.

Three levers (and how they map to code)

  1. Interaction memory → ledger + pattern-matched reactions. Cheap to build, high legibility.
  2. Cultivatable relationship → mood state machine with slow, non-linear transitions. The warp from “wary” to “yours” is a curve, not a fill.
  3. Daily rituals → the loop’s reward is showing up, so the rituals are tuned to feel good on repetition, not to be skipped via optimization.

What I’m watching

The risk isn’t scope, it’s trust. If the cat reacts in ways the player can’t retroactively explain, the memory feels random and the spell breaks. So every reaction ships with a visible cause. Legibility over cleverness.

Next log: how the ledger stays performant and save-safe across a long idle gap (the “you came back after a week” case).


Cover: warm low-saturation companion concept (see HW-20260904-01_cover.png).

Read this in 简体中文 →