Skip to content

[Feat] War Declaration System #37

Open

Description

@derrickmehaffy

Summary

Implement a formal war declaration system that goes beyond simply setting enemy relations. Wars should be structured events with objectives, victory conditions, costs, and rewards.

Features

War Declaration

  • /f war declare <faction> — Initiate a formal war (requires leader/officer)
  • War declaration fee deducted from treasury (TransactionType.WAR_COST already exists)
  • Target faction receives notification with option to prepare
  • Optional war declaration cooldown (configurable)

War Mechanics

  • Objectives: Configurable victory conditions (e.g., destroy core block, capture territory, reach kill count)
  • Victory conditions: First to complete objectives, or highest score when timer expires
  • War end conditions: Surrender, timer expiration, objectives met, mutual agreement
  • War costs: Initial declaration fee, ongoing resource drain (optional)

War Statistics

  • Track kills, deaths, territory captured/lost during war
  • War history log per faction
  • Display active wars in faction info/GUI

Commands

  • /f war declare <faction> — Start a war
  • /f war surrender — Surrender current war
  • /f war status — View active war details
  • /f war history — View past wars

GUI

  • War page in Modules section (currently shows "Coming Soon" placeholder)
  • Active war dashboard with live stats
  • War history browser

Existing Infrastructure

  • TransactionType.WAR_COST — Already defined for war fees
  • RelationType.ENEMY — Already handles enemy relations
  • GUI placeholder in FactionModulesPage

Origin

Roadmap Phase E.5.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions