Symbolic Experience Encoding
Purpose
To model, store, distort, and propagate memory as symbolic, emotionally-charged fragments. Memories are not logs of events but meaning-bearing residues shaped by Faith, Fiction, and experience. This system underpins perception, belief, emergent narrative, and intergenerational Eidos inheritance.
Core Concepts
- Memory is Subjective: Memories are not factual records, but reconstructions shaped by internal states, symbolic frameworks, and emotional weight.
- Memories are Symbolically Tagged: All memory entries are attached to SymbolTags, representing their narrative or thematic resonance.
- Distortion and Forgetting Are Systemic: Memory may be altered or lost over time, according to pressure from trauma, belief, ritual, or metaphysical entropy.
- Memory Forms the Backbone of Eidos Accrual: Stored and interpreted memories are the primary source of meaningful Eidos fragments.
Data Structures
struct MemoryEvent {
id: Uuid,
timestamp: u64,
subject: EntityId,
object: Option<EntityId>,
location: Option<WorldPosition>,
tags: Vec<SymbolTagId>,
valence: EmotionalValence,
distortion: Option<DistortionProfile>,
visibility: MemoryVisibility,
origin: MemoryOrigin,
notes: Option<String>,
}
enum MemoryOrigin {
DirectExperience,
Dream,
Inherited(ThreadId),
FictionalNarrative,
RitualVision,
}
enum MemoryVisibility {
Conscious,
Subconscious,
Forgotten,
}
struct DistortionProfile {
skewed_tags: Vec<SymbolTagId>,
altered_valence: Option<EmotionalValence>,
source: DistortionSource,
}
enum DistortionSource {
BeliefFilter,
TraumaResponse,
CulturalRepression,
HallucinatoryState,
MemoryCorruption,
}
Emotional Valence
MemoryEvents are ranked along a continuous emotional scale:
enum EmotionalValence {
Despair(f32),
Fear(f32),
Shame(f32),
Anger(f32),
Curiosity(f32),
Joy(f32),
Awe(f32),
Love(f32),
}
Valence can:
- Affect recall probability
- Shape memory distortion
- Influence Eidos flavor
System Functions
-
StoreMemoryEvent(event: MemoryEvent)
Insert a new symbolic experience into an agent’s memory bank. -
RecallMemory(agent: EntityId, filter: MemoryQuery)
Retrieve accessible memories matching symbolic, emotional, or historical criteria. -
DistortMemory(agent: EntityId, event: MemoryEvent, cause: DistortionSource)
Transform memory according to belief, trauma, or other interpretive frameworks. -
ForgetMemory(agent: EntityId, event: MemoryEvent)
Mark memory as forgotten; optionally propagate symbolic drift into subconscious. -
PropagateMemory(thread: ThreadId, memory: MemoryEvent)
Recast significant events as inherited or mythologized memory in new Incarnations.
Gameplay Integration
System | Role of Memory |
---|---|
Subjective Interface | Determines what is perceived and how it is framed |
Belief System | Beliefs form by reconciling recurring memory patterns |
Quest System | Quests arise from tensions rooted in remembered events |
Eidos System | Eidos fragments are drawn from emotionally charged memory |
Director AI | Recognizes symbolic recurrences and injects resonance |
Dialogue & Ritual | NPCs may reference shared or contested memories |
Notes
- Memories are not truth; they are narrative vectors.
- Repeated recall of the same memory may change its SymbolTags or valence.
- Some memories will only become visible or interpretable after death, during reflection.
- Forgotten memories may re-emerge in distorted form in dreams or visions.