Skip to content

Fey Species Extinction During Silent Ages

The Silent Ages (435-1225 AI) saw the extinction of most fey species in Thera, with the notable exception of the Dolo-Dolo. This mass extinction event provides crucial insights into both magical biology and the nature of planar connections.

  1. Baseline Needs

    • Constant magical energy absorption
    • Connection to Feywild patterns
    • Specific magical frequencies
    • Minimum threshold for survival
  2. Adaptation Limitations

    • Unable to process raw Theran magic efficiently
    • Required Ritma or enhancer orb assistance
    • Limited evolutionary timeframe
    • Biological constraints
class FeyViability:
def calculate_survival_chance(self, population, conditions):
"""
Model fey population viability
"""
base_magic = conditions.ambient_magic
orb_support = conditions.enhancer_proximity
human_pressure = conditions.conflict_level
threshold = self.MINIMUM_MAGICAL_REQUIREMENT
current_level = (base_magic * orb_support) - human_pressure
return {
'viable': current_level > threshold,
'decline_rate': threshold - current_level,
'estimated_survival_time': self.project_survival(current_level)
}
  1. Magical Energy Starvation

    • Primary cause of population decline
    • Accelerated by distance from enhancer orbs
    • Systemic failure of biological processes
    • No viable adaptation mechanism
  2. Human Aggression

    • Kalassarian genocide of Kurerans
    • Ahurian campaigns against Dolo-Dolo
    • Competition for orb-proximate territories
    • Disruption of survival strategies
  1. Early Phase (435-500 AI)

    • Initial weakening of magical access
    • Beginning of population stress
    • First local extinctions
    • Migration to orb-proximate areas
  2. Critical Phase (500-600 AI)

    • Mass die-offs in low-magic areas
    • Increased competition for resources
    • Accelerated decline
    • Formation of refugee populations
  3. Terminal Phase (600-700 AI)

    • Most populations extinct
    • Remaining groups isolated
    • Limited to orb-proximate refugia
    • Final extinction events
  1. Geographical

    • Proximity to major enhancer orb deposits
    • Defensible mountain territory
    • Natural barriers to human expansion
    • Stable magical microclimate
  2. Biological

    • Possible adaptations to Theran magic
    • More resilient physiology
    • Successful population maintenance
    • Effective resource management
  3. Cultural

    • Preservation of magical knowledge
    • Adaptive survival strategies
    • Community cohesion
    • Resistance to external pressures
  1. Magical Species Management

    • Critical enhancer orb proximity
    • Population viability thresholds
    • Habitat requirements
    • Protection strategies
  2. Restoration Possibilities

    • Post-Bastion conditions
    • New magical frameworks
    • Population reintroduction
    • Habitat reconstruction
  1. Biological Studies

    • Magical dependency mechanisms
    • Adaptation potential
    • Survival thresholds
    • Population dynamics
  2. Conservation Planning

    • Critical habitat identification
    • Population viability analysis
    • Resource management
    • Protection protocols
  1. Dolo-Dolo

    • Current population status
    • Adaptation success
    • Cultural preservation
    • Future prospects
  2. Potential Other Survivors

    • Unconfirmed populations
    • Possible refugia
    • Post-Bastion emergence
    • Research needs
  1. Recovery Potential

    • Changed magical conditions
    • Habitat availability
    • Population viability
    • Conservation needs
  2. Future Challenges

    • Magical stability
    • Human relations
    • Resource competition
    • Habitat protection
class FeyViability:
def calculate_survival_chance(self, population, conditions):
""" Model fey population viability """
base_magic = conditions.ambient_magic
orb_support = conditions.enhancer_proximity human_pressure =
conditions.conflict_level
threshold = self.MINIMUM_MAGICAL_REQUIREMENT
current_level = (base_magic * orb_support) - human_pressure
return {
'viable': current_level > threshold,
'decline_rate': threshold - current_level,
'estimated_survival_time': self.project_survival(current_level)
}