Skip to content

Edicts Slice 1: Net-Modifier Engine (enabler) #511

Description

@Quantumheart

Part of #510.

Foundation for negative civilization modifiers. No edicts yet — net behavior matches today, but sub-1.0 multipliers become possible.

Scope

  • New CivilizationNegatives record (mirror of CivilizationBonuses + new cost types).
  • New CivilizationModifierResolver — combines milestone bonuses (positive) + signed edict effects → net per lever, clamped.
  • Rewrite the four > 1.0f apply-site guards to apply the resolver's net multiplier unconditionally: FavorSystem.cs:383 (favor), FavorSystem.cs:424 (prestige), PvPManager.cs:202 and 225 (conquest).
  • Stacking math + clamps: Favor/Prestige floor 0.5 cap 3.0; Conquest floor 0.0 cap 3.0; holy-site cap floor 1; death-favor-loss cap 1.0.

Acceptance

  • Resolver returns net == current values when fed only milestone bonuses (regression).
  • A negative test delta produces a sub-1.0 multiplier that actually applies at the grant site.
  • Unit tests for resolver math + clamps.

Blocks: all other slices.

Activity

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

    Projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions