memories-thoughts mechanic sourced
Memories and thoughts
Events create itemized, time-limited mood modifiers or lasting memories that shape later behavior.
definition
Owns a per-agent list of memory entries, each with a type, a source (event, object, or other agent), an effect magnitude, a start time, and an expiry or decay. Events append entries; each tick expired entries drop and the active set is summed into mood or opinion, with stacking rules that cap and discount repeats. RimWorld memory thoughts list mood effect, duration, stack limit, and a stack multiplier (mostly 0.75): My son died is -20 for 30 days, Ate lavish meal +12, and some traits nullify specific thoughts. The Sims 3 and The Sims 4 show the same idea as timed moodlets. Generative Agents (2023) stores memory as a natural-language stream retrieved by the sum of normalized recency (decay 0.995 per game hour), language-model-rated importance (1-10), and embedding relevance, and writes reflections when summed importance exceeds 150. Inputs: events with sources. Outputs: mood and opinion contributions, and retrieved context for decisions and dialogue.
player experience
The player can read why an agent feels the way it does, line by line, and plans around expiry: a funeral penalty will pass in days, and a lavish meal can offset it now. Itemized memories turn hidden state into stories players retell.
design levers
- magnitude and duration per event type
- stack limit and multiplier for repeated events
- decay shape (fixed expiry, linear, exponential) and which memories become permanent
- trait filters that nullify or amplify memory types
- retrieval weights (recency, importance, relevance) when memories drive decisions or dialogue
failure modes
- Long lists of small thoughts become noise that players stop reading.
- Cheap positive thoughts (fine meals, art) are easy to farm and swamp negative events, draining drama.
- Short durations make tragedies trivial; long ones create unavoidable spirals after a single disaster.
- Natural-language memory streams grow without bound, raising retrieval cost and surfacing irrelevant memories.
dynamics
- One disaster writes negative memories into many agents at once, synchronizing their breakdown risk.
- Players schedule offsetting positive events, turning mood into a budget managed against expiry timers.
- Memories that name other agents seed opinions and grudges that outlive the event.
open questions
- How should natural-language memory streams be compressed so retrieval stays relevant across years of game time?
- Which memories should be promoted from temporary modifiers to lasting personality change, and can that rule be learned?
relations
1 stored edgesMood and breakdowns
Itemized, expiring thoughts give mood a history the player can read and story-tell around (RimWorld).
backlinks
computed from other recordsGenerative agents (memory stream, reflection, planning), On-device small language models for characters