data kit
8 tools. Generated from the plugin source; do not edit by hand.
Guide
The data kit inspects Unreal Data Registries without changing project configuration, registry assets,
or cache contents. Its prefix is data. and every tool requires the optional DataRegistry engine plugin.
Use asset.* for DataTable, CurveTable, StringTable, and DataAsset authoring; use bp.* to wire a
DataTable row node into a Blueprint.
Start here
- Call
data.registry_status {}. Ifinitializedis false, wait for normal project startup or inspect the project's Data Registry settings; the kit never initializes or reconfigures registries itself. - Call
data.list_registries {}to discover active registrytypevalues, rowitemStruct, and source diagnostics. - Choose the returned
type(for example,Weapons) or use a loaded DataRegistry asset path in the following calls. - Call
data.get_registry {"registry":"Weapons"}to inspect its public schema and sources. - Call
data.list_registry_items {"registry":"Weapons","limit":100}. Addcontainsto narrow a large registry. - To inspect a value already in the engine cache, call
data.get_cached_registry_item {"registry":"Weapons","item":"Sword"}. - To sample a curve registry entry already in cache, call
data.evaluate_registry_curve {"registry":"Difficulty","item":"DamageScale","input":0.5,"defaultValue":1}. - To issue a bounded engine acquire, call
data.acquire_registry_item {"registry":"Weapons","item":"Sword","timeoutSeconds":5}. It reportstimeout,does_not_exist, or the callback status instead of treating a cache miss as success.
Tools
| Tool | Use |
|---|---|
data.registry_status | Initialization state and active registry count. |
data.list_registries | All active registries with source availability and schema summaries. |
data.get_registry | One registry's type, item struct, id count, initialization state, and sources. |
data.list_registry_items | Resolvable item names with a case-insensitive filter and limit. |
data.get_cached_registry_item | A cached struct as Unreal text; never queues an async load. |
data.evaluate_registry_curve | A cached curve value, falling back to defaultValue when absent. |
data.acquire_registry_item | Off-thread acquire lifecycle: scheduled/completed state, callback status, and the acquired struct when available. |
Structured asset workflow
- Create or find the backing DataTable with
asset.create_data_table/asset.find. - Inspect its authored columns with
asset.data_table_info. - Edit rows through
asset.data_table_add_row,asset.data_table_set_cell, or bulk CSV/JSON operations inasset.data_table_import_csvandasset.data_table_import_json. - Edit CurveFloat, CurveVector, or CurveLinearColor keys with
asset.curve_add_keyandasset.curve_set_keys; inspect/evaluate them withasset.curve_get_keysandasset.curve_evaluate. - Inspect or update DataAsset properties with
asset.data_asset_getandasset.data_asset_set. - Configure the project registry by your established editor/project workflow, then use
data.*to verify the registry's visible state.
Gotchas
- Data Registry item acquisition is asynchronous. A
cached:falseresponse means no item is presently cached; it does not mean the id is invalid. Usedata.acquire_registry_itemwhen a bounded callback wait is appropriate, or run the game's normal loading path and query again. list_registry_itemslists ids that the registry can resolve. It does not load those entries.evaluate_registry_curvereturnsdefaultValuewithfound:falsewhen the curve is unavailable. Checkfoundbefore treating the returned value as data.valuefromdata.get_cached_registry_itemis Unreal property text for inspection. It is not a generic editing interface; use the owning DataTable or DataAsset tools for mutations.- In a blank project there may be no configured registries. The discovery tools safely return an
empty list.
data.create_registrycreates a DataRegistry asset with a DataTable source (it can create and seed<Name>_TablewithrowNames) and initializes it, so the per-registry tools work on it right away; it is not added to the project scan list (DataRegistrySettings), sodata.list_registriesdoes not show it. - Per-registry tools accept a registry asset path or a registered registry type. Cached reads, curve
evaluation, and
acquire_registry_itemquery the resolved registry directly.
Tools
Legend. risk 0 = read-only, 1 = harmless editor op, 2 = modifies asset, 3 = deletes/replaces asset, 4 = project/config/build op, 5 = potentially destructive (calls above
MaxAutoRiskneed"_confirm": true). mutates = runs in a transaction (edit.undo reverts). requires PIE / requires world = refused without a PIE session / an open level. requires plugin = unavailable while the plugin is disabled. dryRun = honours thedryRunargument. smoke = covered byedit.self_test.
data.acquire_registry_item (risk 0, requires plugin DataRegistry)
Starts one acquire on the resolved registry and waits off-thread for its callback or the caller timeout.
| Argument | Type | Description |
|---|---|---|
timeoutSeconds | number | Maximum wall-clock wait for the async registry callback, from 0.1 through 30 seconds. Default 5.0. |
Returns: itemId, scheduled, completed, acquired, status, itemStruct, value.
data.create_registry (risk 2, mutates, requires plugin DataRegistry, smoke)
Creates a DataRegistry asset backed by a DataTable source (optionally creating the table and seeding rows). The asset is not added to the project-wide scan list.
| Argument | Type | Description |
|---|---|---|
folder | string | required. Destination Content Browser folder under /Game. |
name | string | required. DataRegistry asset name without spaces, slashes, or dots. |
registryType | string | required. Registry type name used in FDataRegistryId (Type:Item); must be unique among the project's registries. |
itemStruct | string | required. Item struct path; must derive from FTableRowBase, e.g. /Script/GameplayTags.GameplayTagTableRow. |
sourceTable | string | Existing DataTable with the same row struct used as the DataTable source; empty creates |
rowNames | array of string | Row names seeded with default values when the DataTable is created by this call. |
initialize | boolean | Initialize the registry and its sources right away so items can be listed and acquired without registering it project-wide. Default true. |
Returns: registry.
data.evaluate_registry_curve (risk 0, requires plugin DataRegistry, smoke)
Evaluates a curve registry item only from the registry cache; non-curve or unavailable items return defaultValue with found=false.
| Argument | Type | Description |
|---|---|---|
registry | string | required. Registered registry type name, or a DataRegistry asset path starting with /. |
item | string | required. Curve item name within the registry. |
input | number | required. Curve input value. |
defaultValue | number | Value returned when the item is not currently cached. Default 0.0f. |
Returns: itemId, found, value.
data.get_cached_registry_item (risk 0, requires plugin DataRegistry, smoke)
Exports an item only when it is already cached; it never starts an asynchronous Data Registry request.
| Argument | Type | Description |
|---|---|---|
registry | string | required. Registered registry type name, or a DataRegistry asset path starting with /. |
item | string | required. Item name within the registry. |
Returns: itemId, cached, itemStruct, value.
data.get_registry (risk 0, requires plugin DataRegistry, smoke)
Returns the schema, initialization state, availability and sources for one Data Registry.
| Argument | Type | Description |
|---|---|---|
registry | string | required. Registered registry type name, or a DataRegistry asset path starting with /. |
Returns: registry.
data.list_registries (risk 0, requires plugin DataRegistry, smoke)
Lists all active Data Registries and their public source summaries.
No arguments.
Returns: registries, count.
data.list_registry_items (risk 0, requires plugin DataRegistry, smoke)
Lists the item ids currently resolved by one Data Registry.
| Argument | Type | Description |
|---|---|---|
registry | string | required. Registered registry type name, or a DataRegistry asset path starting with /. |
contains | string | Only item names containing this text are returned. |
limit | integer | Maximum returned items; zero uses 100. Default 100. |
Returns: registryType, items, total.
data.registry_status (risk 0, requires plugin DataRegistry, smoke)
Reports whether the optional Data Registry subsystem is initialized and how many registries it exposes.
No arguments.
Returns: initialized, registryCount.