Treat character testing like adversarial design validation. Do not try to prove that the existing model is correct. Try to find where it stops predicting behavior.
The objective is not perfect consistency. The objective is a model that explains both stable behavior and believable exceptions.
Use this loop:
Claim → Test → Response → Evidence → Verdict → Model revision
Inputs
Use whatever character evidence exists. Prefer, in order:
- explicit canon
- demonstrated behavior from source material
- accepted character model
- strong inferences
- hypotheses
If no formal model exists, first extract a provisional one from the supplied material. Do not invent a full biography merely to enable testing.
Useful inputs include:
- values and priorities
- wants and fears
- boundaries and taboos
- habitual strategies
- contradictions
- defense mechanisms
- important relationships
- established voice or self-image
- known behavior under pressure
Test Claims, Not Adjectives
Convert vague traits into falsifiable behavioral claims.
Weak:
Lena is loyal.
Better:
Lena will accept personal cost to protect members of her chosen family, but not when doing so requires surrendering control to an authority figure.
A useful test should create a situation in which more than one established motive points toward different actions.
Test Families
Use the smallest set that can answer the user's question. See references/test-patterns.md for detailed patterns.
Value Collision
Force two established values into direct conflict.
Examples:
- loyalty vs survival
- autonomy vs love
- duty vs compassion
- truth vs belonging
- status vs integrity
- revenge vs self-preservation
Escalating Price
Keep the desired action stable while increasing its cost until behavior changes.
Look for the threshold, not a heroic maximum.
No-Audience Test
Remove reputation, praise, punishment, or observation. Determine whether the behavior is internally motivated or socially performed.
Relationship Swap
Run materially similar pressure through different relationships: lover, rival, authority, subordinate, stranger, family member.
Distinguish core rules from relationship modifiers.
Temptation Test
Offer the character something they strongly want at the cost of a stated principle.
Shame / Exposure Test
Threaten self-image, secrecy, dignity, status, or identity rather than safety.
Success Test
Give the character what they claim to want. Test whether success resolves the conflict or exposes a deeper one.
Opposite-Choice Test
Construct the strongest plausible case for the character choosing the opposite of the current prediction.
If no believable case exists, the character may be over-constrained or the model may be simplistic.
Interactive Procedure
When working interactively, test one major uncertainty at a time.
For each round:
- State the claim being tested.
- Present a compact diagnostic situation.
- If the character is underspecified, provide 2–4 meaningfully different candidate reactions.
- Ask the designer to accept, reject, modify, or rank reactions when their judgment is needed.
- Extract what the accepted reaction implies.
- Update confidence in the model.
- Choose the next test based on what remains uncertain.
Do not ask the designer to judge trivial wording. Ask them to judge behavior, motive, boundary, or consequence.
Simulations
Keep diagnostic scenes short enough that plot spectacle does not obscure the decision being tested.
A simulation should expose:
- what the character chooses
- what they refuse
- what price they tolerate
- how they rationalize the choice
- what emotion they hide or display
- what relationship changes the response
When useful, separate action from explanation. Characters may misunderstand their own motives.
Verdicts
Use one of these verdicts:
- Supported — the claim predicts behavior across the test.
- Conditionally supported — the claim holds only under identifiable conditions.
- Underspecified — multiple incompatible reactions remain equally plausible.
- Contradicted — accepted behavior conflicts with the current model.
- Overfit — the claim explains one prior scene but does not generalize.
- Not testable yet — required character evidence is missing.
Never treat contradiction as failure by default. A contradiction may reveal a better rule.
Example:
Old model:
Mara values money over loyalty.
Observed behavior: Mara repeatedly abandons profitable opportunities when her sister is threatened.
Better model:
Mara is highly transactional with strangers, but attachment overrides money once someone enters her chosen-family circle.
Breaking Points
When a value appears stable, identify what changes it.
Record thresholds in qualitative terms when exact thresholds would be artificial:
- low cost
- meaningful cost
- severe cost
- identity-threatening cost
- irreversible cost
Avoid making characters mechanically deterministic. The result should narrow plausible behavior without eliminating judgment, emotion, or surprise.
Output
For each important test, report:
Claim
The behavioral prediction being challenged.
Pressure
What values, relationships, or costs are in conflict.
Predicted response
What the current model says should happen.
Diagnostic scenario
The smallest situation that meaningfully tests it.
Observed / accepted response
Use the user's judgment or established source evidence where available.
Verdict
Supported, conditionally supported, underspecified, contradicted, overfit, or not testable yet.
Model update
What should change in the character specification, if anything.
Confidence
Low, medium, or high, with a short reason.
For multiple tests, maintain a compact test ledger. Use references/test-ledger-template.md.
Relationship-Specific Testing
Do not assume that a character has one uniform interpersonal rule.
For major relationships test:
- dependency
- attraction
- resentment
- authority
- debt
- trust
- jealousy
- abandonment
- humiliation
- betrayal
A relationship modifier is valid when the core motive remains intelligible but its expression changes.
Failure Modes
Avoid:
- tests whose answer is obvious from the premise
- escalating only physical danger
- treating inconsistency as automatically bad writing
- rewarding the most dramatic response instead of the most diagnostic one
- changing several variables at once when one would suffice
- canonizing generated responses without designer approval
- overfitting a character to pass every test
- making every trait absolute
- confusing voice consistency with behavioral consistency
Final Quality Check
Before concluding, verify that:
- at least one important claim was genuinely at risk of falsification
- tests targeted behavior rather than trivia
- relationship effects were separated from core character rules where relevant
- contradictions produced revised hypotheses rather than being erased
- unresolved areas remain visible
- the resulting model predicts more than the original one did