babylon.engine.actions
Player-verb resolver registry (verb-dispatch engine — Design A).
Maps engine ActionType members to resolver
callables. The uniform signature is:
resolve_<verb>(action, org_attrs, graph, services) -> ActionResult
A missing resolver returns ActionResult(success=False, failure_reason=...)
— loud, never a silent success. The nine canonical player verbs each have a
registered resolver; every other ActionType (NPC/state verbs resolved by the
Feature-032 machinery, or auto-triggered verbs) has none and fails loud if a
player action is ever dispatched for it.
See also
babylon.ooda.action_effects.resolve_action(): the effects machinery
the consciousness-class resolvers (educate / campaign / aid) compose.
Module Attributes
The single source of truth mapping ActionType -> resolver. |
Functions
|
Dispatch one player action to its registered resolver. |
Classes
|
Structural type for a player-verb resolver. |
- babylon.engine.actions.VERB_RESOLVERS: dict[ActionType, VerbResolver] = {ActionType.ATTACK_INFRASTRUCTURE: <function resolve_attack>, ActionType.EDUCATE: <function resolve_educate>, ActionType.MAP_NETWORK: <function resolve_investigate>, ActionType.MOVE: <function resolve_move>, ActionType.PROPAGANDIZE: <function resolve_campaign>, ActionType.PROPOSE_ALLIANCE: <function resolve_negotiate>, ActionType.PROTEST: <function resolve_mobilize>, ActionType.PROVIDE_SERVICE: <function resolve_aid>, ActionType.RECRUIT: <function resolve_reproduce>}
The single source of truth mapping ActionType -> resolver. The web bridge’s
VERB_TO_ACTION_TYPEmaps player verb strings onto exactly these keys; the contract suite pinsset(VERB_TO_ACTION_TYPE.values()) == keys.
- class babylon.engine.actions.VerbResolver(*args, **kwargs)[source]
Bases:
ProtocolStructural type for a player-verb resolver.
- __call__(action, org_attrs, graph, services)[source]
Resolve one player action into an
ActionResult.- Return type:
ActionResult- Parameters:
action (Action)
graph (BabylonGraph)
services (ServicesProtocol)
- __init__(*args, **kwargs)
- babylon.engine.actions.resolve_player_action(action, org_attrs, graph, services)[source]
Dispatch one player action to its registered resolver.
- Parameters:
action (
Action) – The player action to resolve.org_attrs (
dict[str,Any]) – Acting organization’s node attributes.graph (
BabylonGraph) – World graph.services (
ServicesProtocol) – ServicesProtocol providing defines.
- Return type:
ActionResult- Returns:
The resolver’s
ActionResult, or — when no resolver is registered foraction.action_type— a loud failure result (success=Falsewith afailure_reason). Never raises, never silently succeeds.
Modules
AID verb resolver (verb-dispatch engine). |
|
ATTACK verb resolver (verb-dispatch engine). |
|
CAMPAIGN verb resolver (verb-dispatch engine). |
|
EDUCATE verb resolver (verb-dispatch engine). |
|
INVESTIGATE verb resolver (verb-dispatch engine). |
|
MOBILIZE verb resolver (verb-dispatch engine). |
|
MOVE verb resolver (verb-dispatch engine). |
|
NEGOTIATE verb resolver (verb-dispatch engine). |
|
REPRODUCE verb resolver (verb-dispatch engine). |