Memory
new Memory()Memory - Time-decaying memory storage
Stores information that fades over time, like last known positions or remembered events. Each memory has a decay time after which it becomes unavailable.
Usage
Example
// Remember something for 30 seconds
memory.remember('lastSeenPosition', targetPos, 30);
// Recall it (returns null after decay)
const pos = memory.recall('lastSeenPosition');
// Check confidence (1.0 = fresh, 0.0 = about to expire)
const confidence = memory.getConfidence('lastSeenPosition');
Methods
remember#
remember(key : string, value : any, decayTime : number) : MemoryStore a memory that will decay over time.
Parameters
keystringMemory key.
valueanyValue to remember.
decayTimeoptionalnumberTime in seconds before decay (uses default if not specified).
Returns
Memory — This instance for chaining.recall#
recall(key : string) : any|nullRecall a memory if it hasn't decayed.
Parameters
keystringMemory key.
Returns
any | null — The remembered value, or null if decayed/never set.getConfidence#
getConfidence(key : string) : numberGet the confidence level of a memory (1.0 = fresh, 0.0 = expired).
Parameters
keystringMemory key.
Returns
number — Confidence from 0.0 to 1.0, or 0 if not found.has#
has(key : string) : booleanCheck if a memory exists and hasn't decayed.
Parameters
keystringMemory key.
Returns
boolean — True if memory exists and is valid.forget#
forget(key : string) : booleanForget a specific memory.
Parameters
keystringMemory key to forget.
Returns
boolean — True if the memory existed.clear#
clear() : MemoryClear all memories.
Returns
Memory — This instance for chaining.update#
update(delta : number) : MemoryUpdate memory time and clean up expired memories. Called each frame.
Parameters
deltanumberTime delta in seconds.
Returns
Memory — This instance for chaining.getAge#
getAge(key : string) : numberGet the age of a memory in seconds.
Parameters
keystringMemory key.
Returns
number — Age in seconds, or Infinity if not found.refresh#
refresh(key : string) : booleanRefresh a memory's timestamp without changing its value.
Parameters
keystringMemory key to refresh.
Returns
boolean — True if the memory existed and was refreshed.