babylon.engine.actions.attack

ATTACK verb resolver (verb-dispatch engine).

Attack infrastructure (ActionType.ATTACK_INFRASTRUCTURE). The infrastructure decrement on the target is applied by the already-wired layer-3 consequence pass (ooda.layer3._propagate_infrastructure), which fires because this resolver returns an ActionResult carrying an ATTACK_INFRASTRUCTURE action. The resolver’s own material effect is to raise the acting org’s heat (state attention — a round-trip Organization field) and record the collateral backfire in direct_effects.

Note

Layer 3 writes infrastructure onto the target node. That attr is not a Territory model field; the verb-dispatch engine marks it transient in TERRITORY_EXCLUDED_FIELDS so the from_graph round-trip survives.

Functions

resolve_attack(action, org_attrs, graph, ...)

Resolve a player ATTACK action: acting-org heat + layer-3 infra decay.

babylon.engine.actions.attack.resolve_attack(action, org_attrs, graph, services)[source]

Resolve a player ATTACK action: acting-org heat + layer-3 infra decay.

Parameters:
  • action (Action) – The ATTACK action (action_type == ActionType.ATTACK_INFRASTRUCTURE).

  • org_attrs (dict[str, Any]) – Acting organization’s node attributes (unused; heat is read live from the graph so concurrent same-tick writes are respected).

  • graph (BabylonGraph) – World graph (mutated in place on the acting org node).

  • services (ServicesProtocol) – ServicesProtocol (unused; layer 3 sources the infra delta).

Return type:

ActionResult

Returns:

ActionResult carrying the ATTACK action so layer 3 applies the infrastructure decrement to the target.