Skip to content
ct

Class

CraftingResult

Generated GDScript class reference for ItemVault.CraftingResult.

Status
Current
Version
v1.0
Updated
2026-07-31

Typed result object for craft validation/execution. Every outcome category is a stable [StringName] reason code (use the REASON_ constants, never raw literals). Successful results carry exact consumed/produced facts; rejected results carry a stable reason plus a nested [CraftingInventoryOutcome] preserving Item Vault's typed reason when a mutation was involved.

Source: addons/item_vault/crafting/results/crafting_result.gd

Syntax

class CraftingResult extends RefCounted

Members

NameKindSummary
SCHEMA_VERSIONFieldSchema version of this result shape.
REASON_INVALID_RECIPEField
REASON_INVALID_QUANTITYField
REASON_MISSING_INVENTORYField
REASON_INVALID_INVENTORYField
REASON_ITEM_DEFINITION_UNAVAILABLEField
REASON_MISSING_INGREDIENTField
REASON_INSUFFICIENT_QUANTITYField
REASON_OUTPUT_CAPACITY_UNAVAILABLEField
REASON_TRANSACTION_REJECTEDField
REASON_TRANSACTION_ROLLBACKField
REASON_STALE_STATEField
REASON_DUPLICATE_REQUESTField
REASON_UNSUPPORTED_RECIPE_DATAField
schema_versionPropertySchema version of this result (for persistence/telemetry consumers).
successPropertyAccepted (true) or rejected (false).
recipe_idPropertyRecipe the result refers to.
request_idPropertyRequest identity echoed from the caller (empty when none was supplied).
operation_idPropertyMonotonic craft operation id assigned by the service for this attempt.
requested_quantityPropertyRequested craft quantity (crafts of the recipe, not raw unit counts).
reasonPropertyStable reason code. Empty on success.
detailPropertyStable reason payload (per-item shortages, unsupported ids, ...).
consumedPropertyExact consumed input facts on success.
producedPropertyExact produced output facts on success.
inventory_outcomePropertyNested Item Vault typed outcome when a mutation path produced one.
inventory_fingerprintPropertyInventory state fingerprint captured at completion. Use to detect stale state between a preflight and a commit in your own orchestration.
acceptedMethod
reason_codeMethod
okMethod
failedMethod
resultProperty