Static NPCs repeat the same response. Feelings gives each character emotional state that can change with the player's actions and influence what happens next.
Apply a change to one feeling and related feelings update automatically. A threat can raise Anger, Anger can raise Fear, and those values can drive dialogue, prices, animation, audio, or any other game system.
Build characters that remember
Each character can keep an independent feelings map while sharing the same game-event rules. Use personality profiles to make the same event land differently:
- A calm guard can have a smaller Anger response and a lower maximum value.
- A reactive guard can build Anger faster from the same threat.
- Connected feelings still follow the relationships you define for that character.
Characters can also recover over time. Smooth sudden inputs, dampen repeated events, and return feelings toward a baseline with linear or exponential recovery.
Turn gameplay into emotional responses
Map game events to feelings with reusable stimulus profiles. Give a stimulus a tag and intensity, then let Feelings shape the result through personality, timing, and your feeling map.
Threat event
-> Anger response
-> character personality
-> temporal smoothing
-> connected-feeling cascade
-> Fear response
This keeps emotional logic out of one-off NPC state machines. Configure common responses once, then let each character have its own state and personality.
Create emotion maps your way
Start with a ready-made map or create your own:
- `LoveHateMap` for a simple opposing pair.
- `BasicFeelingsMap` for six core emotions.
- `ComplexFeelingsMap` for a larger 42-feeling system.
- `FeelingsMapDefinition` for Inspector-authored maps and effect ratios.
The custom Inspector shows the relationships as a graph, so designers can see which feelings will change together before they press Play.
Values stay in the -100 to 100 range by default. Add tighter limits for individual feelings when a character needs them. Limits also apply to values reached through connected-feeling cascades.
Save emotional state
Save and restore a character's feelings through the included service API.
Choose Unity JSON, Newtonsoft JSON, or PlayerPrefs, and add optional adapters
for Easy Save 3, Odin Serializer, or Unity Cloud Save when those packages are
already part of your project.
File-based saves stay under Unity's persistent data path by default. Optional
HMAC verification can detect changed save data. Serializer fallback and backup
writes help recover from routine storage failures.
Included samples
- Showcase lets you inspect predefined and authored maps, apply deltas, and watch connected feelings update.
- Simple provides a compact six-emotion UI example.
- Merchants compares honest and dishonest merchant personalities, including emotion-driven pricing.
- Emotion Simulation Demo shows two guards reacting to the same threat with different personality settings. It includes an Edit Mode preview and a
All samples include source code.
Good fit for
- RPG NPC relationships, companions, and quest givers
- Dialogue that responds to a character's history with the player
- Merchant, diplomacy, and reputation systems
- Life and dating simulations
- Strategy-game leaders and rival factions
- Adventure-game characters with changing moods
Description sourced from the Unity Asset Store listing.