Platform layer

The engine beneath
worlds that think

A continuously running simulation platform. Domain-agnostic, psychologically grounded, always on. Configure the world — the engine handles everything else.

9
Psychology layers
24/7
Always running
8
Vitals per actor
∞
Relationship depth
Psychology stack

Not behavior trees.
Real psychology.

Every actor runs a layered psychological engine. Maslow's hierarchy governs motivation. Attachment style shapes how they read relationships. Wounds drive contradiction. The engine doesn't simulate behavior — it simulates the conditions that produce behavior.

1
Maslow L1
Physiological
Hunger and sleep debt suppress all higher motivation. A starving actor doesn't think about desire or connection. The body wins.
2–3
Maslow L2–3
Safety & belonging
Stress drives safety-seeking. Loneliness drives connection. Active needs surface the dominant drive at any moment.
4–5
Maslow L4–5
Esteem & self-actualisation
Validation, stimulation, creative expression. Only accessible when lower needs are met.
6
Attachment
Secure, anxious, avoidant, fearful
Shapes how actors read relationships, respond to silence, escalate or withdraw. Maps to crisis arc resolution type.
7
Desire
Attraction & intimacy
Attraction seeded per relationship. Desire modifier on tone. Physical presence layer in meetings: proximity, touch, eye contact.
8–9
Narrative
Crisis arcs & momentum
Accumulated tension activates crisis arcs: confession, confrontation, avoidance, breakdown. Arc momentum tracks charge per relationship.
No gates — only weights

Psychology expressed
as numbers

Every constraint is a pool weight, not a rule. Hunger suppresses desire to 10% of normal weight. Attachment style shapes warmth calculations. The model decides — the weights are the language of psychology.

Elixir / BEAM No scripted behavior
Pool — Sunday 21:07
follow schedule: homestrong
satisfy sexual urgesuppressed
reach out to Davidsuppressed
Hunger 1.0 · Maslow L1 active · social weights suppressed
Consequences persist

What happened,
happened

No save. No reload. Two actors meet at a restaurant — they exchange numbers, the memory is written. The next encounter is already different. History accumulates whether you are watching or not.

SQLite WAL Continuous memory Relationship engine
Memory — written 14:32
David × Julia — Florentine lunch
She laughed at something unexpected. He gave her his number. Warmth 0.43 → 0.55. Trust 0.43 → 0.50.
rel_type: acquaintance → something more · arc_momentum: 0.72
Infrastructure

Built for
real-time worlds

BEAM / OTP for soft real-time simulation. One process per actor, isolated fault domains, independent tick timers. The world continues even when one actor crashes and restarts.

Elixir 1.16 / OTP 26 Per-actor isolation 24/7 uptime
Process tree
WorldSupervisor
├ ActorSupervisor
├ ActorServer: Frida ● alive
├ ActorServer: David ● alive
└ ActorServer: Magnus ● alive
├ CrisisArcSupervisor
└ EngineServer
A character at midnight

She couldn't
sleep either

Frida opened her phone, started typing to Julia, sent the message, then immediately held back from sending the next one. Her wound said it was too vulnerable. Her desire said reach out anyway. The engine balanced both.

That tension — visible in the logs, invisible to Julia — is what makes the world feel real.

fearful-avoidant to_share need arc_momentum building
Character at midnight
Consequence without reset

They exchanged
numbers

David and Julia met at Florentine. She laughed at something unexpected. He gave her his number. The memory was written. The relationship engine recomputed warmth and trust. The next time they meet, they are already different to each other.

Continuous memory Relationship engine No reset
David and Julia at Florentine
Platform layer

Any world. Any domain.

The psychology layer is domain-agnostic. Configure actors, relationships, and locations for any setting. The engine handles the rest.

◉

World Engine

The continuously running simulation layer. Actor tick loops, need-driven initiative, crosspath encounters, real venue awareness. BEAM-powered, always on.

Elixir / BEAM
⟷

World Builder

Configure actors, relationships, and locations for any domain. School, boardroom, hospital, frontier. Configuration drives everything.

In development
◈

Scenario Composer

Inject events. Shape emotional trajectories. Design the conditions — not the outcomes.

In development

Ready to deliver
your world?

Talk to us about your use case. We configure domains for partners across entertainment, training, and education.

Request Access See Use Cases