These notes describe reusable services that help plugins discover what the current server can support and choose an appropriate fallback when a preferred feature is unavailable.

They also cover shared skill gates and semantic asset selection. Plugins can ask for an outcome by meaning and capability instead of depending on one hard-coded game object or server configuration.

Using a Simpler Capability When Needed

This registry lets local systems request a capability without depending on one exact provider. If the preferred provider is missing, busy, disabled, or unavailable, Brain can choose a simpler permitted provider or report that the capability is unavailable. A fallback may offer less detail, speed, or scope, but it cannot bypass safety, privacy, permission, or ownership rules.

Example: If a detailed analysis provider is unavailable, Brain may select a basic provider that still follows the same permissions.

Character Skills And Action Limits

This service checks if a character can attempt an action. It looks at skill level, success chance, cost, and risk. It does not let characters choose tasks or share private details.

Turn One World Object Into One Actor Safely

This reusable service coordinates effects where a specific placed object is consumed when an actor successfully appears. Plugins choose approved object and actor profiles; the framework handles reservations, placement, population limits, receipts, and uncertain outcomes. This lets many features reuse one safe action instead of each writing custom spawn code.

Finding Assets By Meaning

This service lets code ask for a type of resource without knowing where it is stored. It only picks from approved options and says clearly when an exact match is not available.

Compact Conditions With Safe Combined Effects

ADK is designed to let a plugin describe several checks and intended changes as one compact plan. The framework would evaluate the conditions, prepare the work, and submit the effects only under the plan's declared completion guarantee.

That lets a developer express “if all these checks pass, give the item and change health and stamina” without hand-writing the coordination machinery. A plan is never direct write access: every resulting change would still pass through its normal owner, validation, and mutation boundary.