When Personality Drowns in Its Own Thoughts

The character has a gallant disposition, high-risk tolerance, a protective instinct. The cognitive system also gives it explicit tendencies: “plan obsessively,” “narrate in third person,” “volunteer for danger.” Under stress, which one wins?

The tendencies. Every time. The LLM follows explicit instructions over implicit personality because explicit text in the observation is louder than a weighted term list in the system prompt. A character who should express gallantry through nuanced, situation-appropriate behaviour instead follows a script. Personality scored 2 out of 5.

This is the problem I set out to solve with neocortex’s cognitive section calibration — and the solution turned out to be something I didn’t expect going in.

The empirical finding that changed the design

I ran calibration experiments with three characters from our wacky-manor test suite. The results surprised me:

  • HC (personality-dominant, manipulative): when both personality and cognitive sections were coherent, emergence scored 5/5. The character’s predatory satisfaction overwhelmed social rules in exactly the way a deeply manipulative person would behave. “Trust → Access → Control → Safety” emerged as a behavioural pattern nobody explicitly wrote.
  • PP (integrated, protective): when cognitive sections were prescriptive (“plan obsessively”), they overrode the protective instinct entirely. Score dropped to 2/5. Remove the prescriptive tendencies and personality alone produced a good but generic leader — 4/5.
  • Mob (relationship-driven): highest emotional intensity clustered around one person. Everything else was balanced.

The key finding: every time I removed cognitive sections, the personality signal got stronger. Not because anything was added — because less was competing with it.

This maps directly to what psychology tells us about arousal and cognition. Daniel Kahneman’s dual-process theory — System 1 (fast, instinctive) and System 2 (slow, deliberative) — describes exactly this dynamic. Under high arousal, System 2 shuts down and System 1 takes over. You don’t think about your beliefs when panicking. You feel your gut.

The architecture: arousal-gated tiered rendering

The solution has three parts that compose into one pipeline.

Three tiers by section nature. Every cognitive section belongs to one of three tiers based on what it represents:

  • Core — somatic personality state. Mood, drives, emotional appraisal, gut feelings, crystallised behavioural attractors. This is body-level — who you are when thinking stops.
  • Contextual — relational awareness. Who’s present, what you believe about them, your shared history. This is social instinct — you don’t forget your relationships under stress, but you process them through personality rather than deliberation.
  • Supplementary — cognitive processing. Learned strategies, planned goals, meta-cognitive reflections, social norms. This is System 2 — the part that goes offline under pressure.

One scalar controls the threshold. Each character has a personalityDominance value between 0 and 1, derived from their formation memories. HC’s value is approximately 0.9. PP’s is around 0.55. The scalar determines the arousal level at which supplementary and contextual tiers shut off. HC’s supplementary tier activates only when arousal is below 0.1 — almost never. PP’s activates below 0.5 — moderate stress suppresses it, calm allows it.

Binary activation — no gradual condensation. A tier is on or off. I considered gradual condensation (summarising sections at medium arousal before fully suppressing them at high arousal) but the empirical evidence was clear: partial rendering didn’t help. The signal-to-noise ratio was the problem, and the fix was reducing signal count, not signal volume. Under high arousal, the character falls back to body-level personality and relationship instincts. Under low arousal, all tiers render — the character has cognitive bandwidth for norms, plans, and beliefs.

Deriving the scalar from memories — no configuration needed

The most satisfying part of the design: the personalityDominance scalar isn’t configured. It’s derived from the same formation memories that produce everything else about the character.

The computation uses PAD geometry. Every formation memory carries pleasure, arousal, and dominance values. The scalar is the dominance-weighted average of positive-pleasure memories:

ratio = Σ(max(0, pleasure) × dominance) / Σ(max(0, pleasure))
scalar = clamp((ratio + 1) / 2, 0, 1)

The insight: you don’t need to classify memories as “personality-driven” versus “learned behaviour.” The PAD data carries the signal. Pleasure co-occurring with high dominance (control, mastery, self-expression) indicates personality-driven reward. Pleasure without dominance (acceptance, compliance, fitting in) indicates socially-mediated reward.

HC’s formation memories — manipulation at age 12, scheming at 18 — show high pleasure and high dominance. The only things that ever produced genuine satisfaction were personality-driven. Social behaviour never produced reward. The scalar reflects this: personality dominates, cognitive norms are performance.

PP’s memories are mixed. Protecting someone at 16 produced high pleasure and high dominance — instinct. But cooking dinner at 13 and following a father’s teaching at 8 also produced pleasure, with lower or negative dominance. Both personality and learned behaviour produce genuine satisfaction. The scalar reflects this: integrated, neither dominates.

Why this matters for anyone building agentic characters

If you’re building AI characters — for games, interactive fiction, virtual companions, or agent-based simulations — the core problem is universal: explicit instructions override implicit personality. Every system that gives an LLM both a personality description and specific behavioural directives will hit this. The personality becomes wallpaper.

The solution doesn’t require our specific cognitive architecture. The principle generalises: categorise your character’s context into somatic (core identity), relational (social awareness), and cognitive (deliberative reasoning). Gate the cognitive tier by emotional intensity. Under calm conditions, the full picture renders. Under stress, strip back to body-level identity and relationships.

The scalar derivation also generalises. Any system that stores character memories with emotional tags can compute a personality-cognition balance from the reward patterns. You don’t need to hand-tune it — the memories contain the signal.

The implementation adds a FormationPadSummary record to carry pre-aggregated PAD statistics, a 10th derivation pathway in CognitiveDerivationEngine to compute the scalar, a TierFilterCustomizer that plugs into the existing section customiser chain, and a configureTierFilter() method on CognitionCore that wires everything together. The tier map is static — section-to-tier assignment is by nature, not per-character. What varies per character is where the arousal thresholds sit.

The next step is experimental validation — running HC, PP, and Mob through the arousal sweep to verify the tiered rendering produces the same quality of emergence that the manual experiments showed. The infrastructure is in place. The characters are waiting.