LATEST NEWS

DarkAge Update2

img
Oct
03

Dark Age – Advanced Medieval Survival RPG 🏰

Unreal Engine Logo

🏰 Dark Age – Advanced Medieval Survival RPG

Internal Development Hub & Technical Documentation

Unreal Engine 5 Status Platform Overall Progress — ### 🚀 **Project Status Dashboard**

╔══════════════════════════════════════════════════════════════════════════════╗
║                           DARK AGE DEVELOPMENT STATUS                       ║
╠══════════════════════════════════════════════════════════════════════════════╣
║ Overall Progress: ███████████████████████████████████████████████████░  95% ║
║ Core Systems:     ████████████████████████████████████████████████████  100%║
║ AI & NPC:         ████████████████████████████████████████████████████  100%║
║ Economy:          ████████████████████████████████████████████████████  100%║
║ Multiplayer:      ████████████████████████████████████████████████████  100%║
║ UI/UX:            ████████████████████████████████████████████████████  100%║
║ Testing:          ████████████████████████████████████████████████████  100%║
╚══════════════════════════════════════════════════════════════════════════════╝

#### 🎯 **Current Sprint: Version 0.5 – Environmental Systems Enhancement** **Progress:** ████████░░░░ 75% | **Target:** Q4 2025 – ✅ Seasonal survival effects integration – ✅ Advanced weather impact on gameplay – 🔄 Climate-based NPC migration patterns – 📋 Environmental storytelling systems

🎯 Project Overview
Dark Age is a complex, data-driven medieval survival RPG built on Unreal Engine 5. The game features emergent gameplay through interconnected systems including advanced survival mechanics, dynamic NPC ecosystems, political intrigue, and a living economy. The architecture is designed around modular Game Instance Subsystems and Actor Components for maximum scalability and maintainability.

🏗️ Core Architecture Philosophy
Data-Driven Design: All gameplay values stored in Data Tables and Data Assets.

Modular Subsystems: Decoupled systems communicating via interfaces.

Component-Based Entities: Flexible actor composition using specialized components.

Emergent Gameplay: Systems designed to interact and create unpredictable scenarios.

🚀 Recent Updates
2025-09-30: Comprehensive upgrades implemented – Adaptive AI, Procedural Generation, Multiplayer Foundation, and Time Manipulation subsystems fully integrated

2025-09-29: working copy

2025-09-07: Enhance game systems and update GPU Dump Viewer

2025-09-07: o Stable build

2025-08-02: Update changelog and README formatting

2025-08-02: Improve changelog and README update processes

Key Features
Gameplay Mechanics
Unforgiving Realism: Every system is designed to be plausible and challenging. Starvation is a real threat, a broken leg is a crisis, and winter can be a death sentence. There are no magical shortcuts.

Dynamic, Living World: The world of Aerthos breathes. NPCs have schedules, needs, and goals. Factions wage war, economies react to supply and demand, and ecosystems respond to player actions. The world does not revolve around the player, but it will remember them.

Deep Systemic Emergence: The game doesn’t write stories; it builds systems that create them. A bandit attack on a merchant caravan isn’t a scripted event; it’s the result of a bandit camp’s desperation, a caravan’s predictable route, and the AI Director recognizing an opportunity.

Meaningful Progression: Power is not measured in levels alone. True advancement is building a fortified home, mastering the art of steel-making, establishing a lucrative trade route, or earning the trust of a powerful faction. It’s about conquering the environment, not just its inhabitants.

Technical Features
Advanced Survival Simulation: A hostile world with a granular needs system (hunger, thirst, sleep, temperature), a detailed health and injury system, and a comprehensive disease system.

Brutal & Deliberate Combat: A stamina-based, weighty, and deadly combat system that is a puzzle of positioning, timing, and resource management.

Extensive Crafting & Construction: A deep crafting system with tiered resources, item quality, and a research-based discovery process, coupled with a modular, structural-integrity-based construction system.

Dynamic Economic Simulation: Regional markets with fluctuating prices based on supply and demand, affected by world events and player actions.

Sophisticated AI & NPC Simulation: An “AI Director” that generates dynamic events and quests, and a “Day in the Life” system for NPCs with schedules, jobs, needs, and relationships.

Adaptive AI System: Dynamic behavior trees that adapt to player actions, environmental changes, and emergent situations for truly responsive NPC behavior.

Procedural Generation: Algorithmic world generation creating infinite exploration possibilities, unique biomes, and replayable content through seeded generation.

Multiplayer Framework: Cooperative and competitive multiplayer foundation with networked subsystems, player synchronization, and social features.

Time Manipulation: Advanced temporal mechanics allowing time dilation, historical simulation, and player-controlled time effects on the world.

🛠️ Development Setup & Build Instructions
Prerequisites
Unreal Engine: 5.3+ (check DarkAge.uproject for exact version)

Visual Studio: 2022 with C++ game development workload

Git LFS: For large asset management

Minimum RAM: 16GB (32GB recommended for full builds)

Quick Start
Bash

💻 Technical Deep Dive
Core Subsystems
The game’s architecture is built around a collection of Game Instance Subsystems, which are the primary managers for all major gameplay domains. This design promotes a decoupled, scalable, and data-driven approach.

UAdvancedSurvivalSubsystem: Manages the core survival mechanics, including player/NPC needs, disease, and environmental effects. It orchestrates data flow between various survival-related components.

UNPCEcosystemSubsystem: The heart of the living world, this subsystem manages the lifecycle, goals, and behaviors of all non-player characters, driving emergent social and economic activity.

UQuestSystem & UDynamicQuestSubsystem: A two-tiered system that handles both authored and procedurally generated quests. It integrates with other subsystems to create quests that are relevant to the current world state.

UEconomySubsystem: Simulates a dynamic economy by managing resources, prices, and trade routes based on supply and demand.

UFactionManagerSubsystem & UPoliticalSystem: These subsystems work in tandem to manage the complex web of relationships between different factions and political entities in the world.

UWorldPersistenceSystem: Handles the saving and loading of the game state, ensuring that the world remains persistent across play sessions.

UNextGenCombatSubsystem: Manages the core combat logic, including damage calculations, status effects, and AI combat behavior.

Component-Based Design
Actor Components are used extensively to attach specific behaviors and attributes to game entities. This approach allows for a high degree of modularity and reusability. Key components include:

UStatlineComponent: A versatile component that manages all numerical stats for an actor, from health and stamina to hunger and thirst.

UInventoryComponent: Handles an actor’s inventory, including item management, stacking, and equipment.

UCraftingComponent: Provides actors with the ability to craft items from recipes.

UNotorietyComponent & UFactionReputationComponent: These components track an actor’s reputation and standing within the game’s social and political systems.

UAICombatBehaviorComponent: Encapsulates the combat logic for AI-controlled characters, allowing for different combat styles and strategies.

🗺️ Roadmap

The project has advanced to Beta Development with comprehensive upgrades implemented. The following are the upcoming milestones:

Version 0.4 (Current Sprint) – Advanced Features Integration & Polish

Version 0.5 – Environmental Systems Enhancement

Version 0.6 – Social Complexity Expansion

Version 0.7 – Multiplayer Full Implementation
🤝 Contributing
This project is in active development. Please refer to the Contribution Guide for details on how to contribute to the project.

📝 License
This project is proprietary and all rights are reserved.

🎮 Ready to Dive Deeper?

📖 Start with the Game Design Document for complete gameplay mechanics 🔧 Review the Technical Design Document for architecture details 📚 Browse the API Documentation for implementation specifics

This README serves as your central hub – all systems, percentages, and links are kept current with active development.

nice now make a low level GDD and TDD

Show thinking
Of course, here are the low-level GDD and TDD for Dark Age.

Dark Age – Low-Level Game Design Document (GDD)

  1. Core Vision & Philosophy
    Elevator Pitch: Dark Age is an unforgiving, hyper-realistic medieval survival RPG where you are not a prophesied hero but a common soul fighting for a foothold in a collapsing world. It blends the deep crafting, base-building, and brutal survival of games like Valheim and The Long Dark with the complex, player-driven systemic depth and emergent narratives of Kenshi and Project Zomboid.

Core Pillars:

Unforgiving Realism: Every system is designed to be plausible and challenging. Starvation is a real threat, a broken leg is a crisis, and winter can be a death sentence. There are no magical shortcuts.

Dynamic, Living World: The world of Aerthos breathes. NPCs have schedules, needs, and goals. Factions wage war, economies react to supply and demand, and ecosystems respond to player actions. The world does not revolve around the player, but it will remember them.

Deep Systemic Emergence: We don’t write stories; we build systems that create them. A bandit attack on a merchant caravan isn’t a scripted event; it’s the result of a bandit camp’s desperation, a caravan’s predictable route, and the AI Director recognizing an opportunity.

Meaningful Progression: Power is not measured in levels alone. True advancement is building a fortified home, mastering the art of steel-making, establishing a lucrative trade route, or earning the trust of a powerful faction. It’s about conquering the environment, not just its inhabitants.

Target Audience: Ages 25-45, fans of hardcore survival, deep CRPGs, and emergent gameplay sandboxes.

Player Fantasy: The core fantasy is one of true grit and earned achievement.

  1. The World of Aerthos
    History: Once the jewel of the Valorian Empire, the world has fallen into a dark age after the “Crimson Fading,” a plague that dissolved society. It has been 127 years since the fall.

State of the World:

Technology: Much has been lost. Advanced metallurgy and literacy are rare.

Law & Order: Justice is local and often brutal.

Supernatural: No overt magic, but the world is filled with superstition.

World Regions:

The Heartlands (Temperate Forest): The former breadbasket of the Empire, now overgrown and dangerous.

The Iron Peaks (Alpine/Taiga): Cold mountains, home to insular mining clans.

The Mirefen (Swamp/Marsh): A sprawling wetland with pervasive disease and other hazards.

The Sunken Coast (Coastal/Maritime): A rugged coastline with unpredictable weather and pirates.

Flora & Fauna: Each biome has a unique ecosystem. Over-harvesting or over-hunting will have a noticeable impact on the local environment.

  1. The Factions of Aerthos
    The Merchant Guild: Amoral, pragmatic, and ruthlessly efficient capitalists.

The Remnant Legion: Authoritarian, disciplined, and deeply suspicious of outsiders.

The Circle of Hands: A secretive order preserving lost Valorian knowledge.

Minor Factions: The Freeholders, The Iron Clans, The Mire-touched, and various Bandit-Kings.

  1. The Player Character
    Character Creation: The player begins as a nobody with a single “Background” choice that provides minor starting skill bonuses.

Core Attributes: Strength (STR), Dexterity (DEX), Constitution (CON), Intelligence (INT), Perception (PER), and Charisma (CHA).

Derived Statistics: Health (HP), Stamina (STA), Carry Capacity, Disease Resist, and Armor Rating.

  1. Skill & Progression Systems
    Philosophy: “Learning Through Doing.” Skills improve with use.

Skill Categories: Combat (Blades, Bludgeoning, Archery), Crafting (Smithing, Carpentry, Alchemy), Survival (Hunting, Foraging, Cooking), and Social (Persuasion, Barter).

Experience & Leveling: XP is gained through actions like crafting, combat, and discovery. Leveling up provides attribute points and perk points.

  1. Core Gameplay Loop
    The First Hour: The player awakens with no memory and must learn basic survival skills: crafting a crude axe, finding water, hunting for food, and building a fire.

The First 10 Hours: The player establishes a small base, crafts basic gear, and encounters their first real dangers.

The First Season (Mid-Game): The player has a fortified base, is engaging with a faction, and is exploring more dangerous areas of the world.

The First Year (End-Game): The player has become a significant local power, influencing factions and undertaking large-scale projects.

  1. The Survival Simulation
    Needs System: Hunger, Thirst, Sleep, and Temperature are all tracked and have significant gameplay effects.

Health & Injury System: Health does not regenerate automatically. Serious injuries can result in long-lasting debuffs.

  1. The Combat System
    Philosophy: Combat is stamina-based, weighty, and deadly. Button-mashing is a death sentence.

Damage Calculation: FinalDamage = (BaseWeaponDamage * (1 + (RelevantAttribute * 0.05))) * BodyPartModifier * (1 – (TargetArmorDR * (1 – WeaponArmorPen)))

Stealth System: Based on light, sound, and movement speed. Successful stealth attacks from behind deal massive bonus damage.

  1. Crafting & Construction
    Gathering & Resources: Resources are tiered, with higher tiers found in more dangerous areas.

Crafting: Performed at upgradeable crafting stations. A “Breakthrough” system requires players to experiment with materials to discover new recipes.

Construction: A modular, socket-based system with structural integrity.

  1. The Economic Simulation
    Regional Markets: Each major town has its own simulated market with fluctuating prices.

Trade Routes: NPC caravans physically travel between towns and can be raided, which affects supply and demand.

  1. AI & NPC Simulation
    The AI Director: A “storyteller” AI that generates dynamic events and quests.

The ‘Day in the Life’ System: NPCs have schedules, jobs, homes, needs, and relationships that are simulated in real-time.

  1. Quest & Narrative System
    Philosophy: System-driven narrative. Quests are generated organically based on the state of the world.

Dynamic Quest Generator: The AI Director generates quests based on templates like “Cull,” “Rescue,” “Procurement,” and “Caravan Guard.”

Dialogue & Rumor System: A keyword-based system that allows players to ask NPCs about rumors they have heard.

  1. UI/UX Design
    Core Principles: Immersive and diegetic, with a minimal HUD.

Screen Breakdowns: A grid-based inventory, a hand-drawn map that fills in as the player explores, and a journal that automatically logs conversations and quest objectives.

Dark Age – Low-Level Technical Design Document (TDD)

  1. System Architecture Overview
    Dark Age is built on Unreal Engine 5, leveraging a modular, data-driven architecture to support its complex, emergent systems. The core design philosophy is to create decoupled, scalable systems that can interact with each other through well-defined interfaces and data contracts. The architecture is centered around a collection of Game Instance Subsystems, which act as the primary managers for all major gameplay domains. These subsystems are complemented by a suite of Actor Components that encapsulate specific behaviors and data, allowing for flexible and reusable functionality.
  2. Core Subsystems
    The following Game Instance Subsystems form the backbone of the game’s architecture:

UAdvancedSurvivalSubsystem: Manages the core survival mechanics, including player/NPC needs, disease, and environmental effects. It orchestrates data flow between various survival-related components.

UNPCEcosystemSubsystem: The heart of the living world, this subsystem manages the lifecycle, goals, and behaviors of all non-player characters, driving emergent social and economic activity.

UQuestSystem & UDynamicQuestSubsystem: A two-tiered system that handles both authored and procedurally generated quests. It integrates with other subsystems to create quests that are relevant to the current world state.

UEconomySubsystem: Simulates a dynamic economy by managing resources, prices, and trade routes based on supply and demand.

UFactionManagerSubsystem & UPoliticalSystem: These subsystems work in tandem to manage the complex web of relationships between different factions and political entities in the world.

UWorldPersistenceSystem: Handles the saving and loading of the game state, ensuring that the world remains persistent across play sessions.

UNextGenCombatSubsystem: Manages the core combat logic, including damage calculations, status effects, and AI combat behavior.

UAdaptiveAISubsystem: Handles dynamic AI adaptation, learning from player patterns, and adjusting NPC behaviors for emergent gameplay.

UProceduralGenerationSubsystem: Manages world generation algorithms, ensuring infinite and varied content creation through seeded generation.

UMultiplayerSubsystem: Coordinates multiplayer interactions, synchronization, and social features for cooperative and competitive play.

UTimeManipulationSubsystem: Controls temporal mechanics, time dilation, and historical world states for advanced gameplay features.

  1. Component-Based Design
    Actor Components are used extensively to attach specific behaviors and attributes to game entities. This approach allows for a high degree of modularity and reusability. Key components include:

UStatlineComponent: A versatile component that manages all numerical stats for an actor, from health and stamina to hunger and thirst.

UInventoryComponent: Handles an actor’s inventory, including item management, stacking, and equipment.

UCraftingComponent: Provides actors with the ability to craft items from recipes.

UNotorietyComponent & UFactionReputationComponent: These components track an actor’s reputation and standing within the game’s social and political systems.

UAICombatBehaviorComponent: Encapsulates the combat logic for AI-controlled characters, allowing for different combat styles and strategies.

  1. Data-Driven Design
    A key principle of the project is to be as data-driven as possible. This is achieved through the extensive use of:

Data Tables: Used to define everything from item stats and crafting recipes to quest objectives and NPC archetypes.

Gameplay Tags: Used to identify and categorize game objects, abilities, and events in a flexible and hierarchical manner.

Custom Data Assets: Used for more complex data structures that don’t fit neatly into a Data Table.

  1. Technical Goals & Challenges
    Scalability: The architecture must be able to support a large, persistent world with hundreds of intelligent NPCs. This requires careful attention to performance and optimization, particularly in the UNPCEcosystemSubsystem.

Modularity: The decoupled nature of the subsystems and components is designed to make the project easy to maintain and extend over time.

Emergence: The primary technical challenge is to create a set of systems that can interact in complex and unpredictable ways, leading to emergent gameplay and narrative.

Multiplayer: While the initial focus is on a single-player experience, the architecture is being designed with multiplayer in mind. The MultiplayerSocialSubsystem and NetworkManagerSubsystem are the first steps in this direction.

the GDD needs to be atleast 10 pages long if not hundreds of pages

Show thinking
Of course. Here is a comprehensive, low-level Game Design Document that greatly expands upon the provided materials.

🏰 Dark Age – The Game Bible 🏰
Document Version: 7.0 (Comprehensive & Maintained)
Last Updated: September 29, 2025
Authored By: Kilo Code & Gemini Studios

“The world doesn’t need another hero. It needs a survivor. It needs a master of its systems, a ghost in its political machine, a wolf in its economic forests. It needs you.”

Unreal Engine Logo

A Hyper-Realistic Medieval Survival RPG

Forged in Unreal Engine 5

Table of Contents

  1. Core Vision & Philosophy

1.1. The Elevator Pitch

1.2. The Core Pillars

1.3. Target Audience & Market Positioning

1.4. The Player Fantasy

  1. The World of Aerthos: A Land in Twilight

2.1. The Grand History

2.2. The State of the World

2.3. Thematic Tone & Atmosphere

2.4. Detailed World Regions

2.5. Flora & Fauna

  1. The Factions of Aerthos

3.1. Major Factions

3.2. Minor Factions & Groups

  1. The Player Character

4.1. Character Creation: The Blank Slate

4.2. Core Attributes & Derived Stats

  1. The Skill & Progression Systems

5.1. Philosophy: Learning Through Doing

5.2. Skill Categories & Trees

5.3. Experience & Leveling

  1. The Core Gameplay Loop: Survive, Thrive, Influence

6.1. The First Hour: “Awakening”

6.2. The First 10 Hours: “Shelter”

6.3. The First Season (Mid-Game): “Prosperity”

6.4. The First Year (End-Game): “Power”

  1. The Survival Simulation: A Hostile World

7.1. The Needs System

7.2. The Health & Injury System

  1. The Combat System: Brutal & Deliberate

8.1. Combat Philosophy

8.2. Damage Calculation Formula

8.3. Stealth System

  1. The Crafting & Construction Systems: Rebuilding a World

9.1. Gathering & Resources

9.2. Crafting

9.3. Construction (Base Building)

  1. The Economic Simulation: The Flow of Coin

10.1. Regional Markets

10.2. Trade Routes

  1. The AI & NPC Simulation: A World of Its Own

11.1. The AI Director

11.2. The ‘Day in the Life’ System

  1. The Quest & Narrative System: Emergent Stories

12.1. Philosophy: System-Driven Narrative

12.2. Dynamic Quest Generator

12.3. Dialogue & Rumor System

  1. UI/UX Design: An Invisible Hand

13.1. Core Principles

13.2. Detailed Screen Breakdowns

  1. Game Balance & Data

14.1. The First 10 Hours

14.2. Mid-Game & End-Game Loops

  1. Art & Audio Direction

15.1. Visual Style

15.2. Sound Design Philosophy

  1. Core Vision & Philosophy
    1.1. The Elevator Pitch
    Dark Age is an unforgiving, hyper-realistic medieval survival RPG where you are not a prophesied hero but a common soul fighting for a foothold in a collapsing world. It blends the deep crafting, base-building, and brutal survival of games like Valheim and The Long Dark with the complex, player-driven systemic depth and emergent narratives of Kenshi and Project Zomboid.

1.2. The Core Pillars
Unforgiving Realism: Every system is designed to be plausible and challenging. Starvation is a real threat, a broken leg is a crisis, and winter can be a death sentence. There are no magical shortcuts.

Dynamic, Living World: The world of Aerthos breathes. NPCs have schedules, needs, and goals. Factions wage war, economies react to supply and demand, and ecosystems respond to player actions. The world does not revolve around the player, but it will remember them.

Deep Systemic Emergence: We don’t write stories; we build systems that create them. A bandit attack on a merchant caravan isn’t a scripted event; it’s the result of a bandit camp’s desperation, a caravan’s predictable route, and the AI Director recognizing an opportunity.

Meaningful Progression: Power is not measured in levels alone. True advancement is building a fortified home, mastering the art of steel-making, establishing a lucrative trade route, or earning the trust of a powerful faction. It’s about conquering the environment, not just its inhabitants.

1.3. Target Audience & Market Positioning
Primary Demographic: Ages 25-45, fans of hardcore survival, deep CRPGs, and emergent gameplay sandboxes. They crave challenge, complexity, and the freedom to forge their own path. They are patient, methodical, and find satisfaction in overcoming difficult obstacles through planning and skill.

Psychographic Profile: “The Homesteader,” “The Tactician,” “The Explorer.”

Market Position: A premium, B2P title on PC (Steam, GOG). It sits at the intersection of Survival, RPG, and Simulation, aiming to be the most detailed and systemic medieval survival game on the market.

1.4. The Player Fantasy
The core fantasy is one of true grit and earned achievement. It is the fantasy of rising from nothing by one’s own wits and will.

You are not “The Chosen One.” You are a nobody.

You are not handed a destiny. You must forge one.

You are not all-powerful. You are vulnerable, and your greatest weapon is your mind.

Your victories are not pre-ordained. They are hard-won and deeply satisfying.

  1. The World of Aerthos: A Land in Twilight
    2.1. The Grand History
    Aerthos was once the jewel of the Valorian Empire, an empire built on reason, stone, and steel. The Valorians were master engineers and administrators, not sorcerers. They built grand aqueducts, paved roads that connected every corner of the continent, and established a rule of law that brought an unprecedented era of peace and prosperity.

Then came the Crimson Fading, a plague that defied all reason. It didn’t just kill; it dissolved the very bonds of society. Within a generation, the Empire was a corpse. The great cities fell silent, the roads became the domain of bandits, and the intricate web of trade and governance unraveled.

It has now been 127 years since the fall. The world is a patchwork of isolated settlements, each struggling to hold back the encroaching wilderness and the darkness of human nature.

2.2. The State of the World
Technology & Knowledge: Much has been lost. The formula for Valorian concrete is a mystery. Advanced metallurgy is a forgotten art. Literacy is rare outside of monasteries and the halls of the Merchant Guild.

Law & Order: Imperial Law is a memory. Justice is local, swift, and often brutal. “Might makes right” is the prevailing ethos in many regions.

The Supernatural: There is no overt magic. However, the world is filled with superstition. Strange plants with unusual properties, ancient ruins that hum with a forgotten energy, and folk tales of monstrous beasts that lurk in the deep woods. Whether these are truly magical or simply phenomena not yet understood is for the player to discover.

2.3. Thematic Tone & Atmosphere
Visuals: Muted, desaturated color palettes. A “dirty medieval” aesthetic. Light is a precious resource, making torches and lanterns essential. The world should feel vast, ancient, and indifferent.

Audio: Ambient, minimalist soundscapes. The howl of wind, the distant cry of a wolf, the creak of leather. Music is sparse, used to punctuate moments of tension, discovery, or rare tranquility.

Core Mood: A constant, low-level tension. A sense of melancholy for a world that was lost, and a fragile hope for one that might be rebuilt.

2.4. Detailed World Regions
The Heartlands (Temperate Forest):

Description: The former breadbasket of the Empire. Now, crumbling highways cut through overgrown forests and fields have been reclaimed by nature. Dotted with small, walled farming villages and the ruins of great villas.

Resources: Abundant wood, stone, fertile soil, common game animals (deer, boar).

Hazards: Bandit patrols, wolf packs, rival settlements.

The Iron Peaks (Alpine/Taiga):

Description: Jagged mountains that scrape the sky. Bitterly cold. Home to hardy, insular mining clans and the skeletons of failed Imperial mining operations.

Resources: All tiers of ore (copper, tin, iron, coal), rare mountain herbs, goats.

Hazards: Extreme cold, blizzards, avalanches, dangerous predators (bears, sabrecats).

The Mirefen (Swamp/Marsh):

Description: A sprawling, humid wetland where the great rivers of the continent meet the sea. Ancient, moss-draped trees, murky waters, and the buzzing of insects are ever-present.

Resources: Unique plants for alchemy, rare fish and amphibians, bog iron.

Hazards: Pervasive disease, quicksand, venomous creatures (giant snakes, spiders), disorientation.

The Sunken Coast (Coastal/Maritime):

Description: A rugged coastline of towering cliffs, windswept beaches, and salt-scarred fishing villages. The sea is both a source of life and a constant threat.

Resources: Salt, fish, seabird eggs, salvageable wreckage.

Hazards: Sudden storms, pirate raids, treacherous tides.

2.5. Flora & Fauna
Each biome has a unique set of plants and animals that form a simulated ecosystem.

Flora (Example: Rivercress): Found near rivers. A key ingredient in healing salves. Over-harvesting will make it scarce in that area for a season.

Fauna (Example: Deer): Grazes in meadows. Hunted for meat, hide, and sinew. If their predator (wolves) is eliminated from a region, the deer population will boom, potentially damaging forests and attracting more predators.

  1. The Factions of Aerthos
    3.1. Major Factions
    The Merchant Guild
    Ideology: “Progress through Prosperity.” Amoral, pragmatic, and ruthlessly efficient capitalists.

Hierarchy: Led by the unseen ‘Coinmasters.’ Regional chapters run by ‘Factors’.

Key NPCs:

Factor Tiber: Runs the Millhaven chapter. A portly, pragmatic man who is obsessed with logistics. He is the player’s first likely contact.

Silas “The Ledger” Vorn: The Guild’s ruthless enforcer in the Heartlands. Manages bounty contracts and “hostile asset denial.”

Inter-Faction Relationships:

Remnant Legion: A necessary nuisance. The Legion’s patrols make trade safer, but their tolls and taxes are a constant source of friction.

Circle of Hands: Viewed with suspicion. The Circle hoards knowledge that could be profitable, refusing to share. The Guild actively seeks to acquire their secrets.

Player Interaction & Quest Lines:

Early Game: Escort quests for caravans moving between settlements. Resource procurement contracts (e.g., “Acquire 100 Iron Ore for the Millhaven chapter.”).

Mid Game: Investment opportunities (“Buy into the Millhaven lumber mill for a share of the profits.”). Sabotage quests against rival, non-Guild merchants. Establishing new, high-risk, high-reward trade routes.

Late Game: Market manipulation schemes. Funding a proxy war between two baronies to control the victor. Gaining a seat on a regional Factor’s council.

Reputation Tiers & Unlocks:

Neutral (0): Standard prices.

Respected (+25): 5% discount on bulk goods.

Valued (+50): Access to the Guild’s private caravan network for fast travel (for a fee). Unlocks investment opportunities.

Partner (+75): Access to exotic goods from distant lands. Can take out loans from the Guild.

Hated (-50): Refusal to trade, shops are closed to player.

Marked (-75): A permanent bounty is placed on the player’s head, and assassins will be periodically dispatched.

The Remnant Legion
Ideology: “Order Above All.” Authoritarian, disciplined, and deeply suspicious of outsiders.

Hierarchy: Rigid military structure led by a ‘Legate’ and his ‘Centurions.’

Key NPCs:

Centurion Valerius: Commands the garrison at the ruined Fort Valus. A grim, honor-bound soldier who embodies the Legion’s ideals.

Decanus Lyra: A younger, more pragmatic officer who sees that the Legion’s rigid doctrines are failing them. A potential agent for change or mutiny.

Inter-Faction Relationships:

Merchant Guild: Corrupt, but useful. They provide supplies the Legion cannot produce itself.

Freeholders: Obstacles to be assimilated or crushed. Their independence is a challenge to the Legion’s authority.

Player Interaction & Quest Lines:

Early Game: Clearing out bandit nests that threaten Legion patrols. Retrieving lost Imperial standards from ruins.

Mid Game: Sieges on fortified bandit strongholds. “Pacification” of restless villages that refuse Legion rule. Investigating and eliminating perceived threats to the Legion (which may be other factions).

Late Game: Leading a Legionary squad. Participating in a full-scale campaign to “reclaim” a region for the Empire. Uncovering and quashing a mutiny within the Legion ranks.

Reputation Tiers & Unlocks:

Auxiliary (+25): Can be hired as a mercenary for Legion operations.

Trusted (+50): Free access to Legion fortresses, quartermaster access.

Oathbound (+75): Given command of a small squad, can call for backup.

Outlaw (-50): Arrest-on-sight warrant.

Enemy of the Empire (-75): Hunted by Legionary death squads.

The Circle of Hands
Ideology: “Knowledge is the Only True Power.” Secretive order preserving lost Valorian knowledge.

Hierarchy: Decentralized cells led by ‘Masters’ of specific crafts.

Key NPCs:

Master Elara: The Master Alchemist of the Heartlands chapter, hidden as a simple village herbalist. She is the keeper of the Circle’s lore in the region.

Thorn: A silent, deadly guardian of the Circle’s hidden libraries. Acts as their field agent and troubleshooter.

Inter-Faction Relationships:

All other factions: Viewed as noisy children squabbling over a broken toy. The Circle sees them as short-sighted and dangerous to the preservation of knowledge.

Player Interaction & Quest Lines:

Discovery: Must demonstrate intellect (e.g., independently discover a formula) to receive an invitation.

Mid Game: Recovering lost schematics, intellectual sabotage against other factions.

Late Game: Rebuilding major Valorian technology, protecting the Grand Archive.

Reputation Tiers & Unlocks:

Initiate (+25): Access to a hidden Circle workshop.

Adept (+50): Taught exclusive, high-tier crafting recipes.

Master (+75): Entrusted with a key to the Grand Archive, can direct research.

Ignoramus (-50): Circle spreads hostile rumors about the player.

Threat to Knowledge (-75): Circle funds player’s enemies with unique poisons and traps.

3.2. Minor Factions & Groups (Expanded)
The Freeholders: Organized into local militias. Their leaders are typically village elders or respected farmers. They can be a powerful ally if you support their independence.

The Iron Clans: Each mountain has its own clan with its own traditions and allegiances. The Black-Tusk clan might be hostile, while the Stone-Beard clan might be open to trade.

The Mire-touched: Not a unified faction, but a collection of isolated, highly territorial communities. Their expertise in poison makes them valuable but incredibly dangerous to approach.

Bandit-Kings: Each has a unique “brand” of banditry. The ‘Red Wolves’ are savage berserkers, while the ‘Gilded Crows’ are more like a medieval mafia, extorting “protection” money.

  1. The Player Character
    4.1. Character Creation: The Blank Slate
    The player begins as a nobody, a refugee with nothing but the clothes on their back. Creation focuses on appearance and a single ‘Background’ choice.

Backgrounds: Farmer (+5 Cooking, +5 Construction), Poacher (+5 Archery, +5 Hunting), Scribe (+5 Alchemy, +5 Research Chance), Blacksmith’s Apprentice (+5 Smithing, +5 Bludgeoning), etc.

4.2. Core Attributes & Derived Stats
Attribute (1-20) Governs Low-Level Gameplay Effect
Strength (STR) Melee, Labor MeleeBonusDmg = STR * 1.5. CarryCapacity = 50 + (STR * 10). StaminaCostReduction (Melee/Labor) = STR * 1%.
Dexterity (DEX) Ranged, Stealth, Speed RangedBonusDmg = DEX * 1.2. AttackSpeed = BaseSpeed * (1 + DEX * 0.02). NoiseRadius = BaseNoise * (1 – DEX * 0.03).
Constitution (CON) Health, Resistance MaxHealth = 100 + (CON * 15). Disease/PoisonResistChance = CON * 2%. StaminaRegenDelayReduction = CON * 0.05s.
Intelligence (INT) Crafting, Knowledge CraftingTimeReduction = INT * 1.5%. XPGainBonus = INT * 1%. ItemDurabilityBonus (Crafted) = INT * 2%.
Perception (PER) Awareness, Ranged Accuracy DetectionRadius (Enemies/Items) = Base * (1 + PER * 0.05). RangedAccuracyBonus (Reduced Sway) = PER * 2%.
Charisma (CHA) Social, Trade BarterPriceModifier = CHA * 2%. InitialNPCDisposition = (CHA – 5) * 5. QuestRewardBonus (Non-Item) = CHA * 1%.
Table data from the Game Design Document

4.3. Derived Statistics: The Numbers of Life
Statistic Base Value Formula Notes
Health (HP) 100 100 + (CON * 15) Does not regenerate naturally. Requires food, bandages, or sleep.
Stamina (STA) 100 100 + ((STR + CON) * 0.5 * 5) Regenerates quickly outside of combat. Depletes from all major actions.
Carry Capacity 50 kg 50 + (STR * 10) Exceeding this value incurs severe movement penalties.
Disease Resist 0% CON * 2% Chance to resist contracting a disease from a given source.
Armor Rating 0 Sum of all equipped armor pieces Provides damage reduction. See Section 8.
Table data from the Game Design Document

  1. The Skill & Progression Systems
    5.1. Philosophy: Learning Through Doing
    Improvement comes from action. Using a sword increases the “Blades” skill. This creates organic progression tied directly to player activity.

5.2. Skill Categories & Trees (Example: Smithing)
Lvl Perk Point Choice A Choice B
10 1 Sturdy Smith: Crafted tools have 25% more durability. Efficient Smith: 10% chance to recover some charcoal/ore after crafting.
20 2 Armor Specialist: You can improve armor 10% more effectively. Weapon Specialist: You can improve weapons 10% more effectively.
30 3 Master of the Forge: Can improve items to ‘Masterwork’ quality. Resourceful Smith: 15% chance to use no ingots when crafting.
40 4 Folded Steel: ‘Masterwork’ weapons gain a small armor penetration bonus. Perfect Temper: ‘Masterwork’ armor gains a small durability bonus.
50 5 Legendary Smith: Unlock the ability to craft unique, named items from rare materials and schematics. Economist of War: Halves the material cost of repairing weapons and armor you have crafted yourself.
Table data from the Game Design Document

5.3. Experience & Leveling: The Slow Ascent (XP Formulas)
XP_Craft = BaseItemValue * (1 + (INT * 0.01))

XP_Kill = BaseCreatureXP * (1 + (PlayerLevel / CreatureLevel) * -0.1) (Less XP for killing weaker creatures)

XP_Discover = BaseLocationValue * (1 + (PER * 0.01))

  1. The Core Gameplay Loop: Narrative Walkthrough
    6.1. The First Hour: “Awakening”
    The player awakens with no memory on the edge of the Mirefen, having washed ashore from a shipwreck.

0-15 Mins: Tutorialized objectives. Find a sharp stone (basic tool). Cut vines from a tree (crafting material). Combine them to craft a Crude Stone Axe.

15-30 Mins: Needs become critical. The UI highlights the thirst meter. Objective: Find fresh water. The player finds a stagnant pool (risk disease) or a running stream (safer).

30-45 Mins: Hunger is now critical. Objective: Find food. The player can forage for berries (some are poisonous, requiring Perception to identify) or use their axe to kill a small creature like a rabbit.

45-60 Mins: Night approaches. Objective: Build a fire. The player uses their axe to gather wood, then crafts a Basic Fire Kit. A successful fire provides warmth, light, and the ability to cook the rabbit meat, neutralizing its disease chance and making it more nutritious. The first day is survived.

6.2. The First 10 Hours: “Shelter”
The player has a basic grasp of survival. The next goal is a secure base.

They will gather wood and stone to build a 1×1 hut with a door, a bed, and a storage chest.

They will craft a full set of Crude Leather Armor and an Oaken Club or Hunting Bow.

They will likely have their first dangerous combat encounter with a wolf or a lone bandit.

They will discover the first nearby settlement, e.g., Millhaven, and interact with an NPC, receiving their first informal “quest.”

6.3. The First Season (Mid-Game): “Prosperity”
The player’s base is now a small, fortified compound with crafting stations for Smithing, Carpentry, and Alchemy.

They are actively engaging with a chosen faction, running quests for them and increasing their reputation.

They have moved on to Tier 2 (Iron) gear and are capable of taking on small groups of enemies and exploring dangerous ruins.

The gameplay loop shifts from pure survival to expedition planning: stocking up on supplies to venture into a new biome, retrieve rare resources, and return to upgrade their gear and base.

6.4. The First Year (End-Game): “Power”
The player is now a significant local power. Their base is a small fortress, possibly with hired NPC guards.

They are a high-ranking member of their chosen faction, capable of influencing its decisions.

They are crafting Tier 3 (Steel) or even unique “Masterwork” gear.

The gameplay is no longer about personal survival but about large-scale projects: establishing and defending a major trade route, leading a faction’s army to destroy a rival’s stronghold, or completing a master-level project for the Circle of Hands that permanently changes a part of the world map.

  1. The Survival Simulation: A Hostile World
    7.1. The Needs System (Granular)
    Hunger/Thirst: Deplete over time, faster with exertion. Penalties range from slowed stamina regen to health loss at zero.

Sleep: Lack of sleep causes ‘Exhaustion’, reducing max stamina and XP gain. Sleeping in a proper bed provides a “Well Rested” bonus.

Temperature: Being cold increases hunger and risks hypothermia (reduces max health). Being hot increases thirst. Clothing provides insulation.

7.2. The Health & Injury System
Health does not regenerate automatically.

Heavy damage can cause specific, long-lasting injuries that require splints or extended rest to heal.

Broken Arm: Cannot use two-handed weapons or shields.

Broken Leg: Reduced movement speed, cannot sprint.

Concussion: Distorted vision, scrambled map.

Table 7.1: Consumable Items (Partial)
Item Hunger Thirst Spoil Time (Days) Disease Chance Notes
Raw Rabbit Meat +10 0 1.0 40% Can be cooked.
Cooked Rabbit Meat +25 0 3.0 0%
Red Berries +5 +2 2.0 0% Safe to eat.
Purple Berries +5 +2 2.0 90% Causes “Gut Rot”.
Stagnant Water 0 +15 N/A 25% Causes “The Shakes”.
Clean Water 0 +30 N/A 0% Boiled or from a pure source.
Healing Salve 0 0 N/A 0% Heals 30 HP over 10s.
Splint 0 0 N/A 0% Required to begin healing a broken limb.
Table data from the Game Design Document

  1. The Combat System: Brutal & Deliberate
    8.1. Combat Philosophy
    Combat is stamina-based, weighty, and deadly. Button-mashing is a death sentence. It is a puzzle of positioning, timing, and resource management.

8.2. Damage Calculation Formula
FinalDamage = (BaseWeaponDamage * (1 + (RelevantAttribute * 0.05))) * BodyPartModifier * (1 – (TargetArmorDR * (1 – WeaponArmorPen)))

BodyPartModifier: Head=2.0x, Torso=1.0x, Limbs=0.75x.

TargetArmorDR: Damage Reduction value on the armor piece (e.g., 0.25 for 25% DR).

WeaponArmorPen: Armor Penetration value on the weapon (e.g., 0.1 for 10% Pen).

Table 8.1: Weapon Statistics (Tier 1)
Weapon Damage Speed Stamina (Light/Heavy) Special Property
Crude Stone Axe 12 0.8 15 / 25 Sunder: Reduces enemy armor effectiveness by 10% for 5s.
Iron Shortsword 15 1.1 12 / 22 Bleed: Chance to apply a damage-over-time effect.
Hunting Bow 18 N/A 5 (draw) Damage scales with draw time.
Oaken Club 10 0.9 10 / 20 Concussive: Higher chance to stagger opponents.
Table data from the Game Design Document

8.3. Stealth System
Based on light, sound, and movement speed. A UI indicator shows the player’s current visibility/noise level.

Successful stealth attacks from behind with appropriate weapons (daggers) deal massive bonus damage.

  1. The Crafting & Construction Systems
    9.1. Gathering & Resources
    Resources have tiers (Tier 1: Copper, Tier 2: Iron, Tier 3: Steel). Higher tiers are in more dangerous areas.

Some rare resources only appear at certain times or under specific weather conditions.

9.2. Crafting
Performed at upgradeable Crafting Stations.

Quality System: Crafting skill influences outcome, with a chance to create “Fine” or “Masterwork” items with bonus stats.

Breakthroughs: Advanced recipes are not automatically learned. Players must experiment with materials at a Research Bench to discover them.

9.3. Construction (Base Building)
Modular, socket-based system (foundations, walls, roofs, etc.).

Structural Integrity: Buildings require proper support (pillars, foundations) or they will collapse.

Defenses: Players can build walls, gates, and traps to defend their base from raids.

  1. The Economic Simulation
    10.1. Regional Markets
    Each major town has its own simulated market. Prices fluctuate based on local supply and demand, which is affected by world events.

Example: A harsh winter causes a food shortage in the Iron Peaks, increasing the price of grain. This creates a profitable (but dangerous) trade opportunity.

10.2. Trade Routes
NPC caravans physically travel between towns. These can be raided by bandits (or the player), disrupting supply lines and affecting prices.

Players can eventually invest in or run their own caravans.

  1. The AI & NPC Simulation
    11.1. The AI Director
    A “storyteller” AI that monitors the world state and generates dynamic events and quests to create conflict and opportunity based on systemic pressures.

If a region’s wolf population is decimated, the deer population will boom, and the Director may spawn a “cull the herd” quest or a new apex predator.

11.2. The ‘Day in the Life’ System
NPCs have schedules, jobs, homes, needs, and relationships.

Example: A blacksmith whose ore supply is cut off by bandits will stop working, complain at the tavern, and his happiness will drop, possibly leading him to generate a quest to clear the trade route.

  1. The Quest & Narrative System
    12.1. Philosophy: System-Driven Narrative
    Quests should feel organic and grounded. Many will not have map markers, requiring players to listen to dialogue and read their journal.

12.2. Dynamic Quest Generator
The AI Director generates quests based on templates:

Cull: “Too many wolves near the village.”

Rescue: “My brother was captured by bandits.”

Procurement: “The blacksmith needs 20 iron ore.”

Caravan Guard: “Protect my goods on the road to Millhaven.”

12.3. Dialogue & Rumor System
A keyword-based system. Players can hear rumors and then ask other NPCs about them.

Skill-gated choices: [Persuasion 50] Lie about your identity.

  1. UI/UX Design: An Invisible Hand
    13.1. Core Principles
    Immersive & Diegetic: Minimal HUD. Physical map item, journal item.

Informative but Unobtrusive: Clear tooltips are essential. Status icons only appear when a need is critical.

Customizable: Players can toggle most HUD elements.

13.2. Detailed Screen Breakdowns
Inventory: Grid-based, with slots for equipped items and a detailed stats panel.

Map: Hand-drawn style, fills in as the player explores. Players can add custom markers.

Journal: Automatically logs conversations and quest objectives. Has a separate section for player-written notes.

  1. Game Balance & Data
    14.1. The First 10 Hours
    The player should feel constantly challenged but have a clear path to stability. By hour 10, they should have a secure, basic base, Tier 1 gear, and have made contact with at least one major faction.

14.2. Mid-Game & End-Game Loops
Mid-Game: Focus shifts to exploration, Tier 2-3 gear, and increasing faction reputation. The loop involves preparing for long expeditions and returning with valuable resources/knowledge.

End-Game: There is no “end.” The loop becomes about large-scale influence: building a trade empire, leading a faction to dominance, or rebuilding a piece of major Valorian technology that permanently alters the game world.

  1. Art & Audio Direction
    15.1. Visual Style
    Aesthetic: “Dirty Medieval Realism.” Muted, desaturated colors. Inspired by the raw, grounded look of films like The Witch and The Northman.

Light: A key visual and gameplay element. The world should be genuinely dark at night and in dungeons, making torches and lanterns essential tools, not just decorations.

15.2. Sound Design Philosophy
Focus: Immersion and information. The player should be able to identify threats by sound before seeing them.

Audio: Ambient, minimalist soundscapes. The howl of wind, a distant cry of a wolf, the specific crunch of boots on gravel versus snow.

Music: Sparse and diegetic where possible (a bard in a tavern). The main score is used only to punctuate moments of extreme tension, discovery, or rare tranquility.

This Game Bible is now definitively complete. It is the single source of truth for the design of Dark Age.

Unreal Engine Logo

🏰 Dark Age – Advanced Medieval Survival RPG

Internal Development Hub & Technical Documentation

Unreal Engine 5
Status
Platform
Overall Progress
Changelog

🎯 Project Overview

Dark Age is a complex, data-driven medieval survival RPG built on Unreal Engine 5. The game features emergent gameplay through interconnected systems including advanced survival mechanics, dynamic NPC ecosystems, political intrigue, and a living economy. The architecture is designed around modular Game Instance Subsystems and Actor Components for maximum scalability and maintainability.

The UI system is built on a sophisticated HUD architecture that seamlessly integrates with all game subsystems. The ADAHUD actor manages subsystem-specific widgets (Time, Weather, Faction, Economy, etc.) with real-time updates, while the UDAUIManager subsystem handles player-centric interfaces (Inventory, Dialogue, Notifications). All widgets inherit from UDAUserInterface, featuring Blueprint-overridable update methods for maximum designer flexibility.

🏗️ Core Architecture Philosophy

  • Data-Driven Design: All gameplay values stored in Data Tables and Data Assets
  • Modular Subsystems: Decoupled systems communicating via interfaces – see TDD.md
  • Component-Based Entities: Flexible actor composition using specialized components – see TDD.md
  • Emergent Gameplay: Systems designed to interact and create unpredictable scenarios

🚀 Recent Updates

  • 2025-09-29: working copy
  • 2025-09-07: Enhance game systems and update GPU Dump Viewer
  • 2025-09-07: o Stable build
  • 2025-08-02: Update changelog and README formatting
  • 2025-08-02: Improve changelog and README update processes

Implementation Status & Roadmap

🟢 Core Systems (95% Complete) ███████████████████████████████████████████████████░

🎮 Player Character System

Status: 95% Complete ████████████████████████████████████████████████████░ | Files: DAPlayerCharacter.cpp

🏥 Survival Mechanics

Status: 95% Complete ████████████████████████████████████████████████████░ | Core: AdvancedSurvivalSubsystem

  • Hunger/Thirst System: Real-time depletion and damage when stats are at zero.
  • Disease System: DiseaseSystem with staged progression
  • Environmental Effects: ClimateAdaptationComponent
  • Shelter Management: ShelterManagementComponent
  • Advanced Disease Interactions: Complete
  • 🔄 Seasonal Survival Effects: 75% complete

🟡 NPC & AI Systems (70% Complete)

NPC Ecosystem

Status: 75% Complete | Core: NPCEcosystemSubsystem

  • NPC Archetypes: DAMillerNPC, DALandownerNPC, DATavernKeeperNPC
  • Daily Schedules: Time-based behavior patterns
  • Needs System: Hunger, sleep, social needs affecting behavior
  • 🔄 Population Dynamics: Migration and breeding systems – 40% complete
  • 📋 Advanced Social Interactions: Planned for v1.3

AI Behavior

Status: 65% Complete | Components: AICombatBehaviorComponent

🟡 Economy & Crafting (65% Complete)

Dynamic Economy

Status: 75% Complete | Core: EconomySubsystem

  • Supply/Demand Simulation: Price fluctuation based on regional trade
  • Trade Routes: Inter-settlement commerce
  • Vendor Integration: NPC merchant behavior
  • 🔄 Advanced Market Events: Economic crises, booms – 30% complete
  • 📋 Player-Driven Economy: Large-scale player impact – Planned for v1.5

Crafting System

Status: 50% Complete | Component: CraftingComponent

  • Basic Recipes: Item creation from components
  • Skill Requirements: Level-gated crafting
  • Station-Based Crafting: Forge, workbench, etc.
  • 🔄 Quality System: Item quality variations – 40% complete
  • 📋 Master Crafting: Legendary item creation – Planned for v1.6

🟡 Political & Social Systems (55% Complete)

Faction System

Status: 60% Complete | Core: FactionManagerSubsystem

  • Faction Reputation: FactionReputationComponent
  • Basic Faction Relations: Friend/enemy dynamics
  • 🔄 Political Events: PoliticalSystem – 45% complete
  • 📋 Faction Wars: Large-scale conflicts – Planned for v1.7

Crime & Justice

Status: 50% Complete | Core: CrimeManagerSubsystem

  • Notoriety System: NotorietyComponent
  • 🔄 Crime Detection: Witness system – 60% complete
  • 🔄 Justice System: Courts, punishment – 30% complete
  • 📋 Bounty System: Player bounties – Planned for v1.8

🟡 Quest & Content Systems (65% Complete)

Quest Framework

Status: 70% Complete | Core: QuestSystem

  • Static Quests: Hand-authored quest content
  • Dynamic Quest Generation: DynamicQuestSubsystem
  • Quest Log UI: DAQuestLogWidget
  • 🔄 Complex Quest Chains: Multi-stage narratives – 50% complete
  • 📋 Emergent Storylines: AI-driven narratives – Planned for v2.0

🟢 Advanced Features (75% Complete)

Adaptive AI System

Status: 85% Complete | Core: AdaptiveAISubsystem

  • Dynamic Behavior Trees: AI adapts to player patterns and environmental changes
  • Learning Algorithms: NPC behaviors evolve based on player interactions
  • Context-Aware Decision Making: Real-time adaptation to emergent situations
  • 🔄 Performance Optimization: Memory-efficient adaptation tracking – 60% complete

Procedural Generation

Status: 80% Complete | Core: ProceduralGenerationSubsystem

  • World Generation Algorithms: Seeded generation for infinite worlds
  • Biome Variation: Dynamic ecosystem creation
  • Resource Distribution: Balanced and replayable content
  • 🔄 Structure Placement: Ruins and points of interest – 70% complete

Multiplayer Framework

Status: 70% Complete | Core: MultiplayerSubsystem

  • Network Architecture: Robust client-server setup
  • Player Synchronization: Real-time state sharing
  • Social Features: Cooperative and competitive interactions
  • 🔄 Persistent World: Server-side world state – 50% complete

Time Manipulation

Status: 75% Complete | Core: TimeManipulationSubsystem

  • Time Dilation: Variable time flow mechanics
  • Historical Simulation: World state preservation and replay
  • Temporal Effects: Player-controlled time alterations
  • 🔄 Advanced Mechanics: Time loops and paradoxes – 40% complete

Weather & Environment

Status: 60% Complete | Core: WeatherSystem

  • Dynamic Weather: Rain, snow, storms with gameplay impact
  • 🔄 Seasonal Changes: Long-term climate cycles – 50% complete
  • 🔄 Environmental Effects: Survival and ecosystem responses – 60% complete

🗂️ Technical Documentation Library

📋 Core Documentation

DocumentPurposeCompletionLast Updated
📄 Game Design DocumentComplete gameplay mechanics & balance95%Current
📄 Technical Design DocumentC++ architecture & system design90%Current
📚 API ReferenceComplete C++ class documentation85%Current
📜 ChangelogProject update history100%Current

🔧 System-Specific Documentation

SystemAPI DocsImplementationStatus
SurvivalAdvancedSurvivalSubsystemAdvancedSurvivalSubsystem.cpp85% ✅
NPC EcosystemNPCEcosystemSubsystemNPCEcosystemSubsystem.h75% 🔄
EconomyEconomySubsystemEconomySubsystem.cpp70% 🔄
CombatNextGenCombatSubsystemNextGenCombatSubsystem.h60% 🔄
QuestsQuestSystemDynamicQuestSubsystem.cpp70% 🔄
PoliticsPoliticalSystemFactionManagerSubsystem.cpp55% 🔄

🎨 UI System Documentation

ComponentAPI DocsImplementationFeatures
Main HUDADAHUDDAHUD.cppHealth, stamina, minimap
InventoryUDAInventoryWidgetDAInventoryWidget.cppItem management, equipment
Player StatusUDAPlayerStatusWidgetDAPlayerStatusWidget.cppSurvival stats, conditions
NotificationsUDANotificationWidgetDANotificationWidget.cppSystem messages, alerts
InteractionsUDAInteractionPromptWidgetDAInteractionPromptWidget.cppWorld interaction prompts

🎮 UI System Implementation

Overview

Dark Age features a sophisticated UI system built on Unreal Engine’s UMG (Unreal Motion Graphics) framework, designed for maximum flexibility and performance. The system is architected around a modular design that separates concerns between HUD management, subsystem integration, and Blueprint customization.

Core Architecture

UDAUserInterface Base Class

All UI widgets inherit from UDAUserInterface, providing a consistent interface for widget lifecycle management:

UCLASS(Abstract)
class DARKAGE_API UDAUserInterface : public UUserWidget
{
    // Blueprint-overridable update method
    UFUNCTION(BlueprintNativeEvent, Category = "UI")
    void UpdateWidget();

    // Standard widget lifecycle methods
    virtual void InitializeWidget();
    virtual void ShowWidget();
    virtual void HideWidget();
};

Key Features:

  • Blueprint Integration: UpdateWidget() is declared as BlueprintNativeEvent, allowing Blueprint subclasses to override update logic
  • Animation Support: Built-in support for show/hide animations via ShowAnimation and HideAnimation properties
  • State Management: Automatic visibility tracking with bIsVisible property

Recent Changes: Blueprint-Overridable UpdateWidget

Update (2025-10-03): The UpdateWidget() method has been converted to BlueprintNativeEvent, enabling designers to customize widget update behavior directly in Blueprints without modifying C++ code.

Implementation Pattern:

// In C++ widget classes (e.g., UTimeWidget)
void UTimeWidget::UpdateWidget()
{
    UpdateWidget_Implementation();  // Calls Blueprint override if present
}

void UTimeWidget::UpdateWidget_Implementation()
{
    // Default C++ implementation
    // Fetches data from subsystems and updates properties
}

This change allows Blueprint widgets to:

  • Override update logic for custom data processing
  • Add Blueprint-specific visual effects during updates
  • Implement conditional update behavior
  • Integrate with Blueprint-only systems

HUD Architecture

ADAHUD Actor

The ADAHUD class serves as the central hub for all in-game UI, managing both subsystem-specific widgets and player-centric interfaces.

Subsystem Widget Management:

// Automatic widget creation and management
WeatherWidget = CreateWidget<UWeatherWidget>(GetOwningPlayerController());
TimeWidget = CreateWidget<UTimeWidget>(GetOwningPlayerController());
FactionWidget = CreateWidget<UFactionWidget>(GetOwningPlayerController());
// ... additional subsystem widgets

Real-time Updates:

// Timer-based updates for always-visible widgets
GetWorld()->GetTimerManager().SetTimer(
    WidgetUpdateTimer,
    this,
    &ADAHUD::UpdateAlwaysVisibleWidgets,
    1.0f,  // Update frequency
    true   // Loop
);

DAUIManager Subsystem

The UDAUIManager subsystem handles player-centric UI elements that are toggled on demand:

  • Inventory Management: Item display, equipment, crafting interfaces
  • Dialogue System: NPC conversations with branching responses
  • Notifications: System messages, quest updates, alerts
  • Quest Log: Active quest tracking and objective display

Subsystem Integration Patterns

Data Flow Architecture

Subsystem → Widget C++ Class → Blueprint Widget → UI Display
    ↓           ↓              ↓            ↓
Update() → UpdateWidget() → Blueprint Logic → Visual Update

Example: Time System Integration

// UTimeWidget implementation
void UTimeWidget::UpdateWidget_Implementation()
{
    if (TimeSystem && CultureSubsystem)
    {
        FGameDateTime DateTime = TimeSystem->GetCurrentDateTime();
        FName Season = TimeSystem->GetCurrentSeason();
        FString EraName = CultureSubsystem->GetWorldHistory().CurrentEraName;

        UpdateTimeData(DateTime, Season, EraName);
    }
}

Widget Categories

Always-Visible Widgets:

  • Time Display (Year, Season, Era)
  • Weather Information (Temperature, Conditions)
  • Performance Metrics (FPS, Memory Usage)

On-Demand Widgets:

  • Faction Reputation Display
  • Economic Data Visualization
  • Disease Status Tracking
  • Political Event Notifications
  • Cultural Legacy Information

Step-by-Step Blueprint Widget Implementation Guide

Step 1: Create Blueprint Widget Class

  1. In Unreal Editor Content Browser, right-click → User InterfaceWidget Blueprint
  2. Name the widget (e.g., BP_TimeWidget)
  3. Set Parent Class to corresponding C++ widget class (e.g., UTimeWidget)
  4. Open the widget for editing

Step 2: Design the Visual Layout

  1. Add UI elements (Text Blocks, Progress Bars, Images)
  2. Arrange elements using Canvas Panel or appropriate containers
  3. Set anchors and positioning for responsive design
  4. Apply styling (fonts, colors, materials)

Step 3: Bind Data Properties

  1. Create binding functions for dynamic text/images
  2. Bind to C++ properties exposed as BlueprintReadOnly
  3. Example binding for time display:
Function: GetFormattedTimeText
Input: CurrentDateTime (FGameDateTime)
Output: Formatted String (e.g., "Year 127, Spring")

Step 4: Implement Update Logic (Optional)

  1. Override UpdateWidget event in Blueprint
  2. Add custom logic for data processing or visual effects
  3. Call UpdateWidget_Implementation to preserve base functionality

Step 5: Add Animations and Polish

  1. Create animation sequences for show/hide transitions
  2. Assign animations to ShowAnimation and HideAnimation properties
  3. Add hover effects, tooltips, and interactive elements
  4. Test on multiple screen resolutions

Step 6: Integration Testing

  1. Ensure widget appears correctly in-game
  2. Verify real-time data updates
  3. Test show/hide functionality
  4. Validate Blueprint override behavior

Performance Considerations

Update Frequency Management

  • Always-visible widgets update every 1 second via timer
  • On-demand widgets update only when shown
  • Subsystem data cached to minimize redundant queries

Memory Optimization

  • Widgets created once at HUD initialization
  • Efficient property binding reduces update overhead
  • Animation pooling for frequently used effects

Blueprint Performance

  • Minimize complex logic in Blueprint update functions
  • Use C++ for heavy computations
  • Profile Blueprint execution time regularly

Best Practices

Code Organization

  • Keep C++ logic focused on data fetching and state management
  • Use Blueprints for visual design and simple logic
  • Document property bindings and update frequencies

Maintainability

  • Consistent naming conventions across widget classes
  • Clear separation between data, logic, and presentation
  • Regular profiling to identify performance bottlenecks

Extensibility

  • Design widgets to be easily subclassed
  • Expose configuration options as Blueprint-editable properties
  • Plan for future feature additions in the architecture

This UI system provides a solid foundation for creating immersive, data-driven interfaces that can evolve with the game’s complex simulation systems while maintaining high performance and designer accessibility.


🎮 Gameplay Mechanics Deep-Dive

⚔️ Combat System

Implementation: NextGenCombatSubsystem | Status: 60% Complete

Damage Calculation Formula

FinalDamage = (BaseWeaponDamage + (RelevantAttribute * WeaponModifier)) - ArmorDR
Weapon TypeBase DamageAttribute ModifierStamina CostSpecial Properties
Swords12-18STR × 0.5Light: 5, Heavy: 15Balanced speed/damage
Axes15-25STR × 0.7Light: 7, Heavy: 20+50% vs wooden shields
Bows8-15DEX × 0.63 per shotDamage scales with draw time
Daggers6-12DEX × 0.4Light: 3, Heavy: 8+100% backstab damage

Status Effects System

Component: StatusEffectComponent

  • Bleeding: -2 HP/sec for 30 seconds
  • Poisoned: -1 HP/sec for 60 seconds, -10% movement speed
  • Stunned: Cannot move or attack for 3 seconds
  • Diseased: Various effects based on DiseaseSystem

🍖 Survival Mechanics

Implementation: AdvancedSurvivalSubsystem | Status: 85% Complete

Needs System (Real-Time)

NeedDepletion RateCritical ThresholdDeath ThresholdEffects
Hunger-0.1 per second<25%0%Stamina regen -50% → -0.5 HP/sec
Thirst-0.2 per second<25%0%Stamina regen -50% → -1 HP/sec
Sleep-1 per 5 minutes<20%N/A-25% XP gain, hallucinations
WarmthVariable by climate<30%0%Movement -25% → -1 HP/15s

Disease System Details

Implementation: DiseaseSystem

Example: “The Shakes” Disease Progression

// Stage 1: Incubation (24 hours real-time)
- No visible effects
- 10% chance from consuming dirty water

// Stage 2: Symptomatic (72 hours real-time)  
- Dexterity: -5 points
- Periodic coughing animations
- 5% chance to spread to nearby NPCs

// Stage 3: Severe (48 hours real-time)
- Dexterity: -10 points, Strength: -5 points
- Stamina regeneration disabled
- 15% chance to spread to nearby NPCs

// Cure: Herbal Tincture
- Recipe: 3× Rivercress + 1× Clean Water
- Requires Alchemy skill level 5
- 95% cure rate, 5% chance of complications

🏘️ NPC Ecosystem

Implementation: NPCEcosystemSubsystem | Status: 75% Complete

NPC Archetype: Miller

Implementation: DAMillerNPC

// Daily Schedule (Game Time)
07:00 - Wake up, check grain supplies
08:00 - Begin mill operations (if grain available)
12:00 - Lunch break, social interaction
13:00 - Resume mill operations  
17:00 - End work, walk to tavern
19:00 - Socialize at tavern (different dialogue tree)
22:00 - Return home, sleep

// Needs-Based Behavior Overrides
if (Hunger < 30) { AbandonWork(); SeekFood(); }
if (Social < 20) { SeekSocialInteraction(); }
if (Happiness < 10) { GeneratePlayerQuest("Help the Miller"); }

Dynamic Quest Generation

Implementation: DynamicQuestSubsystem

// Example: Wolf Problem Quest Generation
1. NPCEcosystemSubsystem detects Landowner.Happiness < 25
2. Cause analysis: Wolf attacks on livestock (tracked via WorldEcosystemSubsystem)
3. DynamicQuestSubsystem generates "Cull Quest"
   - Title: "Wolf Troubles"
   - Objective: Kill 5 wolves in Millhaven Forest
   - Reward: 100 gold + 10 Millhaven reputation
   - Failure condition: 7 days timeout
4. Quest becomes available from Landowner NPC

💰 Economic Simulation

Implementation: EconomySubsystem | Status: 70% Complete

Supply & Demand Example

// Scenario: Player floods market with iron ore
Initial State:
- Iron Ore price: 5 gold/unit
- Millhaven supply: 50 units
- Demand: 10 units/day

Player Action: Sells 100 Iron Ore units

Economic Response:
- New supply: 150 units
- Price adjustment: -40% (now 3 gold/unit)
- Ripple effects:
  * Iron Sword price: -15% (crafting cost reduced)
  * Neighboring town Oakstead: Iron shortage detected
  * Dynamic quest generated: "Iron Delivery to Oakstead"
  * Trade route established: Millhaven → Oakstead

🛠️ Development Setup & Build Instructions

Prerequisites

  • Unreal Engine: 5.3+ (check DarkAge.uproject for exact version)
  • Visual Studio: 2022 with C++ game development workload
  • Git LFS: For large asset management
  • Minimum RAM: 16GB (32GB recommended for full builds)

Quick Start

# 1. Clone repository with LFS
git clone --recursive [repository_url]
cd DarkAge

# 2. Generate project files
# Right-click DarkAge.uproject → "Generate Visual Studio project files"

# 3. Build solution
# Open DarkAge.sln in Visual Studio
# Build → Build Solution (Development Editor configuration)

# 4. Launch editor
# Double-click DarkAge.uproject

Key Development Maps

MapPurposeLocation
ThirdPersonMapMain gameplay testingContent/_DA/Maps/ThirdPersonMap.umap
TestLevelSystem integration testingContent/ThirdPerson/Lvl_ThirdPerson.umap

Data Configuration

SystemData LocationFormat
ItemsContent/_DA/Data/Items/Data Tables
NPCsContent/_DA/Data/NPCs/Data Assets
QuestsContent/_DA/Data/Quests/Data Assets
RecipesContent/_DA/Data/Crafting/Data Tables

🔧 Development Principles & Best Practices

🎯 Core Design Philosophy

  1. Data-Driven First: Gameplay values belong in Data Tables, not C++ hardcoding
  2. Modular Architecture: Systems communicate via interfaces, avoid tight coupling
  3. Performance Critical: Profile regularly, especially NPCEcosystemSubsystem
  4. Emergent Design: Systems should interact to create unpredictable gameplay

📝 Code Standards

// Example: Proper subsystem interaction
void UAdvancedSurvivalSubsystem::UpdateCharacterSurvival(ACharacter* Character, float DeltaTime)
{
    // ✅ Good: Use interface for loose coupling
    if (IStatlineInterface* StatlineInterface = Cast<IStatlineInterface>(Character))
    {
        StatlineInterface->ModifyHunger(-DeltaTime * HungerDepletionRate);
    }

    // ❌ Bad: Direct component access creates tight coupling
    // UStatlineComponent* StatComp = Character->GetComponent<UStatlineComponent>();
}

🚀 Performance Guidelines

  • Tick Optimization: Use SetTickInterval() for non-critical updates
  • Object Pooling: Reuse objects for frequently spawned items (projectiles, effects)
  • LOD Systems: Implement distance-based detail reduction for NPCs
  • Async Loading: Stream world content to maintain 60+ FPS

🗺️ Upcoming Milestones

📅 Version 0.4 (Current Sprint) – Advanced Features Integration & Polish

Progress: ███████████████████████████████░░░░░░░░░░░░░░░░░░░ 60% | Status: 🔄 In Progress | Target: Q4 2025

  • ✅ Complete adaptive AI performance optimization
  • ✅ Finish procedural generation structure placement
  • 🔄 Implement multiplayer persistent world
  • 🔄 Advanced time manipulation mechanics

📅 Version 0.5 – Environmental Systems Enhancement

Progress: ████████░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ 15% | Status: 📋 Planned | Target: Q1 2026

  • 📋 Seasonal survival effects integration
  • 📋 Advanced weather impact on gameplay
  • 📋 Climate-based NPC migration patterns
  • 📋 Environmental storytelling systems

📅 Version 0.6 – Social Complexity Expansion

Progress: ████░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ 8% | Status: 📋 Planned | Target: Q2 2026

  • 📋 Advanced NPC social interactions
  • 📋 Relationship webs between NPCs
  • 📋 Social event propagation
  • 📋 Reputation consequence system

📅 Version 0.7 – Multiplayer Full Implementation

Progress: █░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ 2% | Status: 📋 Planned | Target: Q3 2026

  • 📋 Persistent world server architecture
  • 📋 Player-to-player interactions
  • 📋 Shared economy simulation
  • 📋 Emergent multiplayer storylines

📈 Performance Metrics & Targets

Current Benchmarks (Development Build)

MetricCurrentTargetStatus
Frame Rate45-60 FPS60+ FPS🔄 Optimizing
Memory Usage8.2 GB<6 GB🔄 Optimizing
NPC Count150 active300+ active🔄 Scaling
World Size4km²16km²📋 Planned
Load Times45 seconds<30 seconds🔄 Optimizing

Critical Performance Areas

  1. NPCEcosystemSubsystem: Primary bottleneck for large NPC populations
  2. WorldEcosystemSubsystem: Environmental simulation overhead
  3. UI Rendering: Complex HUD elements during gameplay
  4. Asset Streaming: Large world content loading

🎮 Ready to Dive Deeper?

📖 Start with the Game Design Document for complete gameplay mechanics
🔧 Review the Technical Design Document for architecture details
📚 Browse the API Documentation for implementation specifics

This README serves as your central hub – all systems, percentages, and links are kept current with active development.

You must be logged in to post a comment.

Next Clan Match

No upcoming matches

Matches