Favorite Places
Overview
Elves develop attachment to locations they spend time in. Over repeated visits, a position becomes a favorite place -- a spot the elf feels drawn to and gains comfort from. Each elf can have up to 3 favorite places.
Favorite places interact with the personal time behavior: idle elves occasionally take short breaks to visit a favorite spot or a garden, gaining beauty inspiration and a mood boost.
How It Works
Attachment Formation
The favorite places system runs every 10 ticks. For each stationary elf (no active pathfinding), the system checks whether their current position is "meaningful":
| Position Type | Qualifies? |
|---|---|
| Within 1 tile of a building (Workshop, Garden, Dwelling, etc.) | Yes |
| On scenic terrain (Ancient Forest, Meadow) | Yes |
| Open terrain with no buildings nearby | No |
If the position qualifies, visit ticks accumulate. Once a position reaches the attachment threshold of 20 visit ticks, it becomes a favorite.
Source: src/sim/systems.rs, favorite_places_system; src/sim/components.rs, FavoritePlaces.
Slot Management
Each elf has 3 favorite place slots. Slots are sorted by visit count (most visited first). New positions are added to empty slots. When all 3 slots are full, new positions cannot displace existing favorites -- the elf must continue visiting one of their current 3.
Mood Boost
When an elf is standing at a favorite place, they receive a mood modifier:
| Modifier | Value | Duration | Semantics |
|---|---|---|---|
| "Favorite spot" | +1 | 15 ticks | Replace (no stacking) |
This is a small but steady comfort bonus for elves who spend time in places they've grown attached to.
FavoritePlaceFormed Event
When a new favorite forms (position crosses the 20-tick threshold), a FavoritePlaceFormed event fires with the elf's name and a description of the location (zone name if in a zone, or terrain type with coordinates).
Personal Time
Idle elves have a 5% chance per idle decision to take personal time instead of accepting work. During personal time, the elf paths toward their top favorite place (or a Garden if no favorites exist).
On arrival, the elf receives:
| Benefit | Amount |
|---|---|
| Beauty need | +5 |
| Beauty inspiration | +3 |
| Solitude inspiration | +2 |
| Mood: "Personal time" | +2 for 50 ticks |
After receiving these benefits, the elf returns to Idle and resumes normal behavior.
Personal time is a low-priority behavior -- it is preempted by hunger, exhaustion, and all other urgent needs.
Source: src/sim/systems.rs, personal_time_system, task_decision_system Step 3d.
Interactions
- Needs & Mood -- Favorite spot mood boost contributes to morale; personal time restores beauty need.
- Inspiration -- Personal time adds beauty and solitude inspiration, feeding into composition quality.
- Satisfaction -- Mood improvements from favorite places and personal time contribute to morale, which feeds the satisfaction formula at 0.2 weight.
- Buildings -- Buildings create "meaningful" positions that can become favorites. Gardens are common personal time destinations.
Tips
-
Workshops and Gardens naturally generate favorites. Elves who compose regularly at the same workshop will develop attachment to it.
-
Favorite places are a retention tool. The +1 mood boost is small but persistent. An elf standing at a favorite spot while composing gets a steady morale lift.
-
Personal time is self-regulating. At 5% per idle check, it happens roughly once every 20 idle decisions. You don't need to manage it -- elves take breaks on their own.
-
Scenic terrain matters. Elves near Ancient Forest or Meadow tiles can develop favorites without buildings nearby. Consider settlement placement near scenic areas.