Skip to main content
Glama

skill_create_health_system

Creates a complete HealthSystem Blueprint in Unreal Engine: adds Health/MaxHealth variables, a TakeDamage function, and a BeginPlay initialization message via composable atomic tools.

Instructions

Create a complete HealthSystem Blueprint using atomic graph tools.

This skill composes multiple bp_* atomic tools to create a functional Blueprint with health management logic. It is the reference example for how Ghost composes atomic tools into higher-order workflows.

The Blueprint will contain:

  • Variables: Health (Float), MaxHealth (Float), bIsDead (Boolean)

  • Function: TakeDamage(DamageAmount: Float) — subtracts, clamps, sets bIsDead=true when Health ≤ 0, prints damage report

  • EventGraph: BeginPlay → PrintString "[HealthSystem] Initialized..."

All steps use atomic tools (bp_add_variable, bp_add_node, bp_connect_pins, bp_set_pin_default, bp_compile) wherever dedicated tools exist. Operations without dedicated tools (float arithmetic, function params) use exec_python and are listed in outputs.exec_python_steps.

If any step fails, the skill stops immediately and reports which step failed and the structured error from the atomic tool.

Args: blueprint_name: Name of the Blueprint asset. Default 'BP_HealthSystem' blueprint_path: Content Browser folder. Default '/Game/Blueprints' initial_health: Starting Health value. Default 100.0 initial_max_health: Starting MaxHealth value. Default 100.0

Returns: JSON StructuredResult with: outputs.blueprint_path — full content browser path outputs.variables_created — ['Health', 'MaxHealth', 'bIsDead'] outputs.functions_created — ['TakeDamage'] outputs.event_graph_nodes — node count placed in EventGraph outputs.connections_made — total connections made outputs.compile_result — 'clean' or 'errors' outputs.exec_python_steps — steps that used exec_python fallback outputs.steps_completed — ordered list of completed steps outputs.steps_failed — non-empty if any step failed

KB: see knowledge_base/32_AGENT_PLAYABLE_SLICE_RECIPE.md#overview Example: skill_create_health_system()

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
blueprint_nameNoBP_HealthSystem
blueprint_pathNo/Game/Blueprints
initial_healthNo
initial_max_healthNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.0

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full behavioral disclosure burden. It transparently states that it composes multiple atomic tools, uses exec_python fallback for certain operations, and stops on failure with structured error reporting. It also enumerates the exact contents of the generated Blueprint (variables, function, event graph). This goes beyond a simple 'creates' and provides operational transparency. However, it does not explicitly mention side effects like asset creation or project modifications, though these are implied by 'create a Blueprint.' Overall, it is well-disclosed.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is long but well-structured: it opens with a clear one-sentence purpose, then provides bullet points for Blueprint contents, explains the atomic tool composition and error handling, lists arguments with defaults, and enumerates return fields. It is front-loaded with the primary purpose and uses formatting to aid scanning. While some redundancy exists (e.g., repeating defaults in both schema and description), the complexity of the skill justifies the length. It is concise relative to the information needed, so a 4 is fitting.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description is remarkably complete for a complex skill. It specifies the full expected output (variables, function, event graph), the exact return fields (outputs.blueprint_path, variables_created, etc.), references a knowledge base entry, and includes an example call. It also explains the fallback mechanism and error handling. Given that an output schema exists (mentioned as returns), the description does not need to detail return types further. Everything an agent needs to invoke this tool correctly is covered, including parameter semantics and operational behavior. A 5 is justified.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 0% description coverage, so the description must compensate. It does: the Args section lists all four parameters (blueprint_name, blueprint_path, initial_health, initial_max_health) with their defaults and brief explanations (e.g., 'Name of the Blueprint asset. Default 'BP_HealthSystem''). This adds semantic meaning beyond the schema, which only has types and defaults. The description does not elaborate on value constraints or relationships between parameters, but it sufficiently clarifies each parameter's purpose, making a 4 reasonable.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Create a complete HealthSystem Blueprint using atomic graph tools.' It specifies the verb (create), the resource (HealthSystem Blueprint), and the mechanism (atomic graph tools). It distinguishes itself from sibling low-level tools like bp_add_variable or skill_generate_playable_slice by being a higher-order composition skill, and explicitly mentions it is the reference example for composition. This makes its role unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains that it composes atomic tools and is the reference example for higher-order workflows. It also mentions it uses exec_python fallback for operations without dedicated tools, and describes error-handling behavior (stops on failure and reports). While it doesn't explicitly name alternative tools or state when not to use it, the context of being a specific skill for creating health systems is clear. The lack of explicit exclusions is a minor gap, so a 4 is appropriate.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Deploy Server

Other Tools