environmental-design
Domain skill for environmental conditions and events extraction.
Entity Types
| Type |
Description |
environment |
General environmental setting or biome |
weather_pattern |
Weather system or meteorological condition |
atmosphere |
Atmospheric condition (fog, pressure, air quality) |
lighting |
Lighting condition (natural or magical) |
time_period |
Time of day or seasonal context |
disaster |
Natural disaster (storm, flood, earthquake) |
cataclysm |
Major catastrophic event |
world_event |
Significant world-scale event |
seasonal_event |
Recurring seasonal occurrence |
plague |
Disease outbreak or epidemic |
Domain Constraints
time_of_day: day, night, dawn, dusk
weather: clear, rainy, stormy, foggy
lighting: bright, dim, dark, magical
Extraction Rules
- Weather: Rain, snow, storms, clear sky — note intensity and duration
- Time: Dawn, noon, dusk, midnight — track progression through text
- Atmosphere: Fog, oppressive heat, crisp air — sensory details
- Disasters: Storms, floods, earthquakes — scale, impact, duration
- World events: Wars, plagues, seasonal celebrations — scope and significance
Output Format
Write to entities/world.json (world-team file):
{
"environments": [
{
"id": 1,
"world_id": 1,
"location_id": 10,
"name": "Stormy Night",
"description": "Dark clouds gathering from the north, storm imminent",
"time_of_day": "night",
"weather": "stormy",
"lighting": "dim",
"temperature": "chilly",
"sounds": "distant thunder",
"smells": "wet earth",
"is_active": true,
"created_at": "2026-02-14T10:00:00+00:00",
"updated_at": "2026-02-14T10:00:00+00:00",
"version": 1
}
],
"weather_patterns": [
{
"id": 2,
"tenant_id": 1,
"name": "Approaching Storm",
"pattern_type": "storm",
"severity": 0.9,
"duration_minutes": 180,
"affected_regions": [10],
"conditions": { "wind": "strong", "precipitation": "heavy" },
"is_active": true,
"created_at": "2026-02-14T10:00:00+00:00",
"updated_at": "2026-02-14T10:00:00+00:00"
}
],
"next_id": 3
}
Key Considerations
- Mood impact: Environment affects narrative tone (storms = tension, dawn = hope)
- Narrative function: Weather often mirrors story events (pathetic fallacy)
- Temporal flow: Track time progression and environmental changes through text
- Cross-references: If needed, track relationships separately in drafts, but final JSON must match
LoreData.from_dict.
1---2name: environmental-design3description: Extract environmental entities from narrative text. Use when analyzing weather, atmosphere, lighting, time periods, natural disasters, cataclysms, plagues, and world events.4---5# environmental-design
6
7Domain skill for environmental conditions and events extraction.
8
9## Entity Types
10
11| Type | Description |
12|------|-------------|
13| `environment` | General environmental setting or biome |
14| `weather_pattern` | Weather system or meteorological condition |
15| `atmosphere` | Atmospheric condition (fog, pressure, air quality) |
16| `lighting` | Lighting condition (natural or magical) |
17| `time_period` | Time of day or seasonal context |
18| `disaster` | Natural disaster (storm, flood, earthquake) |
19| `cataclysm` | Major catastrophic event |
20| `world_event` | Significant world-scale event |
21| `seasonal_event` | Recurring seasonal occurrence |
22| `plague` | Disease outbreak or epidemic |
23
24## Domain Constraints
25
26- `time_of_day`: day, night, dawn, dusk
27- `weather`: clear, rainy, stormy, foggy
28- `lighting`: bright, dim, dark, magical
29
30## Extraction Rules
31
321. **Weather**: Rain, snow, storms, clear sky — note intensity and duration
332. **Time**: Dawn, noon, dusk, midnight — track progression through text
343. **Atmosphere**: Fog, oppressive heat, crisp air — sensory details
354. **Disasters**: Storms, floods, earthquakes — scale, impact, duration
365. **World events**: Wars, plagues, seasonal celebrations — scope and significance
37
38## Output Format
39
40Write to `entities/world.json` (world-team file):
41
42```json
43{
44 "environments": [
45 {
46 "id": 1,
47 "world_id": 1,
48 "location_id": 10,
49 "name": "Stormy Night",
50 "description": "Dark clouds gathering from the north, storm imminent",
51 "time_of_day": "night",
52 "weather": "stormy",
53 "lighting": "dim",
54 "temperature": "chilly",
55 "sounds": "distant thunder",
56 "smells": "wet earth",
57 "is_active": true,
58 "created_at": "2026-02-14T10:00:00+00:00",
59 "updated_at": "2026-02-14T10:00:00+00:00",
60 "version": 1
61 }
62 ],
63 "weather_patterns": [
64 {
65 "id": 2,
66 "tenant_id": 1,
67 "name": "Approaching Storm",
68 "pattern_type": "storm",
69 "severity": 0.9,
70 "duration_minutes": 180,
71 "affected_regions": [10],
72 "conditions": { "wind": "strong", "precipitation": "heavy" },
73 "is_active": true,
74 "created_at": "2026-02-14T10:00:00+00:00",
75 "updated_at": "2026-02-14T10:00:00+00:00"
76 }
77 ],
78 "next_id": 3
79}
80```
81
82## Key Considerations
83
84- **Mood impact**: Environment affects narrative tone (storms = tension, dawn = hope)
85- **Narrative function**: Weather often mirrors story events (pathetic fallacy)
86- **Temporal flow**: Track time progression and environmental changes through text
87- **Cross-references**: If needed, track relationships separately in drafts, but final JSON must match `LoreData.from_dict`.