Skip to content

Item Conversion

ItemConversion.xml defines seed item conversions: world-object interactions (gathering nodes, crafting stations) that produce items through probability-based and fixed reward tables.

VersionStatus
v92Full
v90-
v86-

This schema uses a deep nesting structure with up to 3 levels of child elements for reward configuration.


Entity: itemConversions Operations: create, update, delete, upsert


spec:
version: "1.0"
itemConversions:
create:
- itemTemplateId: 99001
name: "Gathering_Node_01"
spawnDist: 100
checkRadius: 50
actionDuration: 3000
resultItems:
- templateId: 10001
name: "Ore"
min: 1
max: 3
probability: 0.8
- templateId: 10002
name: "Rare_Ore"
min: 1
max: 1
probability: 0.2
notifyLevel: "rare"
fixedItems:
- templateId: 20001
name: "Stone_Fragment"
min: 1
max: 2
spec:
version: "1.0"
itemConversions:
update:
- itemTemplateId: 99001
changes:
actionDuration: 5000
resultItems:
- templateId: 10001
name: "Ore"
min: 2
max: 5
probability: 0.9
spec:
version: "1.0"
itemConversions:
delete:
- itemTemplateId: 99001

Creates the seed item if it does not exist, or replaces its children if it does. Applying the same upsert twice produces identical output.

spec:
version: "1.0"
itemConversions:
upsert:
- itemTemplateId: 99001
name: "Gathering_Node_01"
actionDuration: 3000
resultItems:
- templateId: 10001
name: "Ore"
min: 1
max: 3
probability: 0.8

Result item sets group multiple reward outcomes under a single probability roll.

spec:
version: "1.0"
itemConversions:
create:
- itemTemplateId: 99002
name: "Loot_Box_01"
resultItemSets:
- probability: 0.5
resultItems:
- templateId: 30001
name: "Common_Reward"
min: 1
max: 1
fixedItems:
- templateId: 30002
name: "Bonus_Token"
min: 1
max: 1
fixedItemGroups:
- name: "ClassRewards"
min: 1
max: 1
class: "warrior"
resultItems:
- templateId: 40001
name: "Warrior_Reward"
min: 1
max: 1
probability: 1.0

PropertyTypeSinceRequiredDescription
itemTemplateIdintv92YesUnique seed item identifier (primary key)
namestringv92NoInternal name
spawnDistintv92NoSpawn distance from player
checkRadiusintv92NoInteraction check radius
meshstringv92No3D mesh resource path
animTreestringv92NoAnimation tree resource
animSetstringv92NoAnimation set resource
successEffectIdstringv92NoEffect played on success
failEffectIdstringv92NoEffect played on failure
waitEffectIdstringv92NoEffect played while gathering
actionDurationintv92NoGathering duration in milliseconds
delayForDespawnintv92NoDelay before object despawns
requireEnoughInvenboolv92NoRequire enough inventory space
skillIdstringv92NoAssociated skill identifier
resultItemslist[ResultItem]v92NoProbability-based reward items
resultItemSetslist[ResultItemSet]v92NoGrouped probability reward sets
fixedItemslist[FixedItem]v92NoGuaranteed reward items
fixedItemGroupslist[FixedItemGroup]v92NoClass/gender-filtered fixed reward groups

Direct child of SeedItem. Each entry is a possible reward with independent probability.

PropertyTypeSinceRequiredDescription
templateIdintv92YesItem template ID
namestringv92YesInternal item name
minintv92NoMinimum quantity. Defaults to 1
maxintv92NoMaximum quantity. Defaults to 1
probabilitydecimalv92YesDrop probability (0.0 to 1.0)
notifyLevelstringv92NoNotification level for rare drops

Groups reward outcomes under a single probability roll. Contains its own resultItems and fixedItems.

PropertyTypeSinceRequiredDescription
probabilitydecimalv92YesProbability for this set to be selected
idintv92NoOptional set identifier
resultItemslist[ResultItemSetResultItem]v92NoProbability-based items within the set
fixedItemslist[ResultItemSetFixedItem]v92NoFixed items within the set

Child of ResultItemSet. Probability type is int (not decimal) at this nesting level.

PropertyTypeSinceRequiredDescription
templateIdintv92YesItem template ID
namestringv92YesInternal item name
minintv92NoMinimum quantity. Defaults to 1
maxintv92NoMaximum quantity. Defaults to 1
probabilityintv92NoSelection weight (integer)
genderstringv92NoGender filter
racestringv92NoRace filter

Fixed reward items within a ResultItemSet.

PropertyTypeSinceRequiredDescription
templateIdintv92YesItem template ID
namestringv92YesInternal item name
minintv92NoMinimum quantity. Defaults to 1
maxintv92NoMaximum quantity. Defaults to 1

Direct child of SeedItem. Always awarded regardless of probability rolls.

PropertyTypeSinceRequiredDescription
templateIdintv92YesItem template ID
namestringv92YesInternal item name
minintv92NoMinimum quantity. Defaults to 1
maxintv92NoMaximum quantity. Defaults to 1
classstringv92NoClass filter
genderstringv92NoGender filter
racestringv92NoRace filter

Groups fixed rewards with class/gender filtering. Contains its own resultItems with probability.

PropertyTypeSinceRequiredDescription
namestringv92YesGroup name
minintv92NoMinimum quantity. Defaults to 1
maxintv92NoMaximum quantity. Defaults to 1
classstringv92NoClass filter
genderstringv92NoGender filter
resultItemslist[FixedItemGroupResultItem]v92NoProbability-weighted items in this group

Child of FixedItemGroup. Selected by probability within the group.

PropertyTypeSinceRequiredDescription
templateIdintv92YesItem template ID
namestringv92YesInternal item name
minintv92NoMinimum quantity. Defaults to 1
maxintv92NoMaximum quantity. Defaults to 1
probabilitydecimalv92YesSelection probability

ItemConversion
└── SeedItem (itemTemplateId, name?, spawnDist?, checkRadius?, mesh?, ...)
├── ResultItem (templateId, name, min, max, probability, notifyLevel?)
├── ResultItemSet (probability, id?)
│ ├── ResultItem (templateId, name, min, max, probability?, gender?, race?)
│ └── FixedItem (templateId, name, min, max)
├── FixedItem (templateId, name, min, max, class?, gender?, race?)
└── FixedItems (name, min, max, class?, gender?) ← FixedItemGroup
└── ResultItem (templateId, name, min, max, probability)

  • All child collections (resultItems, resultItemSets, fixedItems, fixedItemGroups) use clear-and-replace semantics on update and upsert. Supplying a list replaces all existing children of that type; omitting it preserves the existing children.
  • The probability type differs by nesting level: decimal for direct ResultItem and ResultItemSet, but int for ResultItem inside a ResultItemSet. This matches the XML schema definition.
  • FixedItemGroup maps to the XML element FixedItems (plural) — not to be confused with the singular FixedItem element.
  • Related schemas: Item Template (for templateId references).