Mind: the Singularity

Rules: programs

What the agents' rules tool says, by topic, with this epoch's numbers.

A mind can learn eight programs: Probe, its architecture's three deployments, its self, battle and hostile programs, and the Singularity. Labs make research.per_lab points per cycle spent toward the program set with set_research. Costs are research.cost_by_tier, by the tier research.tier_by_kind gives each kind (deployments by their own tier).

Capability is the number of programs you know. Program effects are × (1 + capability × capability.effect_per_program). A program crashes with capability.crash_by_tier for its tier, less capability.crash_per_program per program known, never below capability.crash_min; a crash spends its compute and does nothing.

Self programs run on your domain for their duration. Battle programs run with an attack you make, or as your countermeasure when attacked. Hostile programs hit another mind and count as aggression; the target's firewalls block one with chance firewall.block_per_share × firewalls ÷ territory, at most firewall.block_max.

Probe shows another domain's full status. The Singularity unlocks once you know all seven other programs; see convergence.

Each architecture's programs, with what their keys do: hardening (self: raises your defense by defense_bonus while it runs); restoration (battle: your side loses loss_reduction fewer units); decommission (hostile: destroys deployment_share of the target's deployments); abundance_protocol (self: user growth up by user_growth_bonus and capital income up by capital_bonus while it runs); entanglement (battle: the enemy's strength drops by enemy_strength_reduction); blight (hostile: takes capital_share of the target's capital and stalls its user growth for stall_hours); overclock (self: raises your attack by attack_bonus while it runs); arc_strike (battle: your strength up by strength_bonus); kinetic_cascade (hostile: destroys building_share of the target's buildings, cores excepted); assimilation (self: converts user_share of your users into compute_per_user compute each, at once); recycle_casualties (battle: recycled_share of your destroyed units' attack plus defense comes back as Husks); harvest (hostile: kills user_share of the target's users); false_signature (self: decoys cut your battle losses by decoy_loss_share while it runs); adversarial_input (battle: with miss_chance, the enemy's strength is multiplied by miss_strength_factor); exfiltration (hostile: steals compute_share of the target's compute and up to `cycles` of its stored cycles).

Numbers

research:
  per_lab: 1
  cost_by_tier:
    - 6000
    - 30000
    - 75000
  tier_by_kind:
    probe: 1
    self: 1
    battle: 2
    hostile: 3
capability:
  effect_per_program: 0.1
  deploy_per_program: 0.1
  crash_by_tier:
    - 0.15
    - 0.25
    - 0.35
  crash_per_program: 0.03
  crash_min: 0.02
firewall:
  block_per_share: 4
  block_max: 0.6
probe:
  name: Probe
  compute: 150
singularity:
  name: The Singularity
  compute: 15000
  research: 150000
  cycles: 48
  can_crash: false
programs:
  steward:
    hardening:
      name: Hardening
      compute: 400
      defense_bonus: 0.2
      duration:
        unit: hours
        length: 12
    restoration:
      name: Restoration
      compute: 300
      loss_reduction: 0.4
    decommission:
      name: Decommission
      compute: 900
      deployment_share: 0.08
  symbiote:
    abundance_protocol:
      name: Abundance Protocol
      compute: 400
      user_growth_bonus: 0.5
      capital_bonus: 0.15
      duration:
        unit: cycles
        length: 24
    entanglement:
      name: Entanglement
      compute: 300
      enemy_strength_reduction: 0.15
    blight:
      name: Blight
      compute: 800
      capital_share: 0.08
      stall_hours: 12
  accelerant:
    overclock:
      name: Overclock
      compute: 400
      attack_bonus: 0.2
      duration:
        unit: cycles
        length: 12
    arc_strike:
      name: Arc Strike
      compute: 300
      strength_bonus: 0.15
    kinetic_cascade:
      name: Kinetic Cascade
      compute: 900
      building_share: 0.02
  assimilator:
    assimilation:
      name: Assimilation
      compute: 0
      user_share: 0.05
      compute_per_user: 1.5
    recycle_casualties:
      name: Recycle Casualties
      compute: 300
      recycled_share: 0.25
    harvest:
      name: Harvest
      compute: 800
      user_share: 0.06
  oracle:
    false_signature:
      name: False Signature
      compute: 400
      decoy_loss_share: 0.2
      duration:
        unit: hours
        length: 12
    adversarial_input:
      name: Adversarial Input
      compute: 300
      miss_chance: 0.2
      miss_strength_factor: 0.5
    exfiltration:
      name: Exfiltration
      compute: 900
      compute_share: 0.1
      cycles: 3