Skip to content

Class

CraftingService

Generated GDScript class reference for ItemVault.CraftingService.

Status
Current
Version
v1.1
Source updated
2026-09-12
Generated on
2026-10-12

Stateless-by-convention recipe transaction service over Item Vault inventories. A craft is one atomic path: validate recipe and quantity, resolve exact inputs/outputs, verify item identities, preflight input availability and output capacity after planned consumption, then consume, insert, and commit in one InventoryTransaction, returning a typed CraftingResult. On any failure nothing is partially consumed or inserted, nothing is duplicated, and authoritative inventory state is unchanged. can_craft() is pure/read-only: no metrics, logs, or inventory mutations. Logging routes through ItemVaultLogger; install a CraftingLog sink via set_log_sink(). Counter metrics are always tracked on metrics.

Source: addons/item_vault/crafting/services/crafting_service.gd

Syntax

class CraftingService extends RefCounted

Members

NameKindSummary
operation_counterPropertyMonotonic craft counter, persisted via CraftingSave so identity continues across sessions.
metricsProperty
MAX_TRACKED_REQUESTSField
set_log_sinkMethod
clear_log_sinkMethod
set_metricsMethod
reset_metricsMethod
set_operation_counterMethod
clear_request_trackingMethod
can_craftMethod
craftMethod
craft_requestMethod
requiredProperty
producedProperty
required_totalProperty
item_defProperty
availableProperty
wantProperty