Skip to content

Collection

The Collection schema defines gatherable resources in the game world such as herbs, ores, and other harvestable nodes. Each entry specifies gathering requirements, proficiency gains, and visual/audio properties.

VersionStatus
v92Full
v90-
v86-
AttributeTypeSinceDescription
collectionIdintv92Unique collection identifier
typeNamestringv92Resource type name (e.g., "herb_rare", "ore_common")
gradeintv92Collection grade/tier
pickSkillTypeintv92Gathering skill type required
neededProficiencyintv92Minimum proficiency to gather
neededPickTimePointdecimalv92Gathering time cost in points
proficiencySuccessIncrementintv92Proficiency gained on success
heightintv92Node height
questCollectionboolv92Whether this is a quest-specific node
abnormalityProbintv92Probability of triggering abnormality effects
plentifulPointintv92Plentiful harvest point threshold
plentifulProbdecimalv92Plentiful harvest probability
AttributeTypeSinceDescription
nameintv92String table reference ID (not a display name)
AttributeTypeSinceDescription
effectstringv92Gathering visual effect name
effectIdintv92Effect ID
guideEffectIdintv92Guide marker effect ID
silhouettestringv92Silhouette mesh asset
showNamePlateboolv92Display nameplate above node
collectingSoundstringv92Sound played during gathering
AttributeTypeSinceDescription
despawnDurationintv92Time before node despawns
despawnEffectIdintv92Effect played on despawn
despawnStartTimeintv92Time when despawn sequence begins
AttributeTypeSinceDescription
abnormalityListlist[int]v92Abnormality IDs applied on gather
extractorCollectionboolv92Extractor-only gathering node
failIncrementintv92Proficiency gained on failure
isOverlapOnboolv92Allow overlapping gather actions
minUserLevelintv92Minimum character level to gather
plentifulGiftNumintv92Number of bonus gifts on plentiful harvest
subFatiguePointintv92Fatigue points consumed per gather
collections:
create:
- collectionId: 90001
typeName: "herb_rare"
grade: 3
pickSkillType: 1
neededProficiency: 200
neededPickTimePoint: 5.0
proficiencySuccessIncrement: 10
height: 100
questCollection: false
abnormalityProb: 0
plentifulPoint: 500
plentifulProb: 0.15
name: 289401
abnormalityList: [701100, 701101]
effect: "EP_Collection_Herb"
showNamePlate: true
collections:
update:
- collectionId: 90001
changes:
neededProficiency: 250
plentifulProb: 0.20
grade: 4
collections:
delete:
- 90001

Creates the entry if it does not exist; updates all data attributes if it does.

collections:
upsert:
- collectionId: 90002
typeName: "ore_common"
grade: 1
pickSkillType: 2
neededProficiency: 0
neededPickTimePoint: 3.5
proficiencySuccessIncrement: 5
height: 80
questCollection: false
abnormalityProb: 0
plentifulPoint: 300
plentifulProb: 0.10

Bulk-update all entries matching a filter. All schema attributes are filterable.

collections:
updateWhere:
- filter:
grade: 3
pickSkillType: 1
changes:
neededProficiency: 300
plentifulProb: 0.25
- filter:
grade: [1, 2, 3]
changes:
questCollection: false

Filter values can be a single value or a list. A list matches any entry whose attribute equals one of the listed values.

  • The name attribute is an integer (string table reference ID), not a text string.
  • abnormalityList is authored as a YAML list of integers (e.g., [701100, 701101]) and serialized to a semicolon-separated string in XML (e.g., "701100;701101").
  • All properties are primitive types; there are no enums for this entity.
  • The XML file is located at CollectionData/Collections.xml (single-file organization).
  • See Operations for general CRUD and upsert semantics.
  • See Filters for filter syntax details used in updateWhere.