{% extends "base.html" %} {% block title %}{{ civ.name }} — df-storyteller{% endblock %} {% block content %}
← Back to Legends
{{ civ.name }}
{{ civ.race | default('Unknown race') }}
{% if sites %}

Sites ({{ sites | length }})

    {% for site in sites %}
  • {{ lore_link("site", site.site_id, site.name) | safe }} ({{ site.site_type }})
  • {% endfor %}
{% endif %} {% if sub_entities %}

Organizations

    {% for org in sub_entities %}
  • {{ org }}
  • {% endfor %}
{% endif %}
{% if leaders %}

Leaders

    {% for leader in leaders %}
  • {{ lore_link("figure", leader.hf_id, leader.name) | safe }}
  • {% endfor %}
{% endif %}

Events

{{ event_count }} recorded events

{% if populations %}

Population

    {% for pop in populations %}
  • {{ pop.race }} ({{ pop.count }})
  • {% endfor %}
{% endif %} {% if honors %}

Honors & Ranks

    {% for honor in honors %}
  • {{ honor.name }} {% if honor.required_skill %} — {{ honor.required_skill }}{% if honor.required_level %} ({{ honor.required_level }}){% endif %} {% endif %} {% if honor.required_battles %} — {{ honor.required_battles }} battle{{ 's' if honor.required_battles != 1 else '' }} required {% endif %}
  • {% endfor %}
{% endif %}
{% if wars %}

Warfare Relations

War Activity

Wars & Conflicts ({{ wars | length }})

{% for war in wars %}
{{ lore_link("war", war.id, war.name) | safe }} {% if war.years %} ({{ war.years }}){% endif %}
{% endfor %}
{% endif %} {% if festivals %} {% set fest_colors = ['#c9a84c', '#8b2500', '#2d5a27', '#4a6fa5', '#c9467a', '#7a6558', '#a83a1a', '#5a4d8b'] %} {% set fest_symbols = ['♦', '♣', '♥', '♠', '★', '◆', '✶', '◈'] %}

Festivals & Calendar

{% for season in ['Spring', 'Summer', 'Autumn', 'Winter'] %}
{{ season }}
{% endfor %} {% for month in ['Granite', 'Slate', 'Felsite', 'Hematite', 'Malachite', 'Galena', 'Limestone', 'Sandstone', 'Timber', 'Moonstone', 'Opal', 'Obsidian'] %} {% set month_fests = [] %} {% for fest in festivals %} {% if fest.month == month %} {% if month_fests.append(loop.index0) %}{% endif %} {% endif %} {% endfor %}
{{ month }} {% for fi in month_fests %} {{ fest_symbols[fi % 8] | safe }} {% endfor %}
{% endfor %}
{% for fest in festivals %} {{ fest_symbols[loop.index0 % 8] | safe }} {{ fest.name }} {% endfor %}
{% for fest in festivals %}
{{ fest_symbols[loop.index0 % 8] | safe }} {{ fest.name }}
{% if fest.date %}{{ fest.date }}{% endif %} {% if fest.held_count %} · Held {{ fest.held_count }} time{{ 's' if fest.held_count != 1 else '' }}{% endif %} {% if fest.site_name %} · at {{ lore_link("site", fest.site_id, fest.site_name) | safe }}{% endif %} {% if fest.first_year and fest.last_year %} · Years {{ fest.first_year }}–{{ fest.last_year }}{% endif %}
{% if fest.schedules %}
Schedule:
    {% for sched in fest.schedules %}
  • · {{ sched.type }}{% if sched.item %} ({{ sched.item }}){% endif %}{% if sched.features %} — {{ sched.features | join(', ') }}{% endif %}
  • {% endfor %}
{% endif %} {% if fest.recent_winners %}
Recent Competition Winners
    {% for winner in fest.recent_winners %}
  • Year {{ winner.year }}: {{ lore_link("figure", winner.hf_id, winner.name) | safe }} — {{ winner.comp_type }}
  • {% endfor %}
{% endif %}
{% endfor %}
{% endif %} {% if civ_event_collections or cultural_summary %}

Notable Events

{% if ec_summary %}

{{ ec_summary }}

{% endif %} {% if cultural_summary %}

Cultural: {{ cultural_summary }} (see Festivals above)

{% endif %} {% for ec in civ_event_collections %}
{% set ec_type_map = {"theft": "theft", "abduction": "abduction", "beast attack": "beast_attack", "site conquered": "site_conquest", "persecution": "persecution", "duel": "duel", "battle": "battle", "war": "war", "purge": "purge", "entity overthrown": "overthrow"} %} {% set link_type = ec_type_map.get(ec.type.lower(), "") %} {% if link_type and ec.id %} {{ lore_link(link_type, ec.id, ec.name) | safe }} {% else %} {{ ec.name }} {% endif %}
{% endfor %}
{% endif %} {% if notable_figures %}

Notable Figures

{% for fig in notable_figures[:20] %}
{{ lore_link("figure", fig.hf_id, fig.name) | safe }} {% if fig.race %} ({{ fig.race }}){% endif %} {% if fig.description %} — {{ fig.description }}{% endif %}
{% endfor %} {% if notable_figures | length > 20 %}

...and {{ notable_figures | length - 20 }} more

{% endif %}
{% endif %}
{% include "lore_sidebar.html" %}
{% endblock %} {% block scripts %} {% endblock %}