Skip to content

TerritoryArea

TerritoryData files define territory areas: spatial regions within a territory group that contain NPCs, parties, fences, and other gameplay elements. Each area specifies its type, vertical bounds, and optional features like approach prohibitions and dungeon triggers.

VersionStatus
v92Full
v90-
v86-

Entity: territoryAreas Operations: create, update, delete, upsert Key attributes: huntingZoneId, groupId, territoryId (composite key)


spec:
version: "1.0"
schema: v92
territoryAreas:
create:
- huntingZoneId: 400
groupId: 1
territoryId: 1
type: normal
addMaxZ: 999
subtractMinZ: 999
desc: "Field Area"
fences:
- pos: [100.0, 200.0, 0.0]
- pos: [150.0, 200.0, 0.0]
- pos: [150.0, 250.0, 0.0]
spec:
version: "1.0"
schema: v92
territoryAreas:
update:
- huntingZoneId: 400
groupId: 1
territoryId: 1
changes:
type: boss
eventId: 5001
desc: "Boss Arena"
spec:
version: "1.0"
schema: v92
territoryAreas:
delete:
- huntingZoneId: 400
groupId: 1
territoryId: 1
spec:
version: "1.0"
schema: v92
territoryAreas:
upsert:
- huntingZoneId: 400
groupId: 1
territoryId: 1
type: normal
addMaxZ: 999
subtractMinZ: 999
desc: "Upserted Area"

AttributeTypeSinceDescription
huntingZoneIdintv92Hunting zone identifier (used for file partitioning)
groupIdintv92Parent territory group identifier
territoryIdintv92Unique territory area identifier within the group
typeTerritoryTypev92Territory type classification. See TerritoryType.
addMaxZdecimalv92Maximum Z-axis boundary extension
subtractMinZdecimalv92Minimum Z-axis boundary extension
AttributeTypeSinceDescription
descstringv92Territory area description
eventIdintv92Associated event identifier
absoluteFenceZdecimalv92Absolute fence Z-axis boundary
peaceMoveNpcCheckDistdecimalv92NPC movement check distance in peace state
randomPosMinDistdecimalv92Minimum distance for random positioning
AttributeTypeSinceDescription
fenceslist[Fence]v92Boundary fence positions. See Fence.
attributenestedv92Territory attributes. See Attribute.
randomSpawnnestedv92Random spawn configuration. See RandomSpawn.
approachProhibitionnestedv92Approach restriction configuration. See ApproachProhibition.
jumpGearslist[JumpGear]v92Jump gear positions. See JumpGear.
dungeonTriggernestedv92Dungeon trigger configuration. See DungeonTrigger.

Defines boundary vertices for the territory area.

AttributeTypeSinceDescription
posdecimal[]v923D coordinate position [x, y, z]

Territory-level attributes for abnormalities and achievements.

AttributeTypeSinceDescription
abnormalityintv92Abnormality ID applied in this territory
achieveConditionIdintv92Achievement condition ID

Configuration for random spawn points within the territory.

AttributeTypeSinceDescription
fixedPosdecimal[]v92Fixed position for random spawn anchor [x, y, z]

Restricts player approach to specific areas.

AttributeTypeSinceDescription
msgstringv92Message displayed when approaching prohibited area
posdecimal[]v92Position of the prohibition zone [x, y, z]

Defines jump gear teleport locations.

AttributeTypeSinceDescription
idintv92Jump gear entry identifier
jumpGearIdintv92Jump gear type reference
posdecimal[]v92Position coordinates [x, y, z]
continentIdintv92Target continent identifier

Camera configuration for dungeon-specific triggers.

AttributeTypeSinceDescription
cameraCurrentZoomintv92Camera zoom level on trigger
cameraMaxZoomintv92Maximum allowed camera zoom

ValueSince
normalv92
questv92
eventv92
bossv92
racev92
coopv92
fishingv92
pvpv92
gatheringv92
dungeonv92

TerritoryData_{huntingZoneId}.xml
└── TerritoryData (huntingZoneId)
└── TerritoryGroup (id)
└── TerritoryList
└── Territory (id, type, addMaxZ, subtractMinZ) [multiple]
├── Fence (pos) [multiple]
├── Attribute (abnormality, achieveConditionId)
├── RandomSpawn (fixedPos)
├── ApproachProhibition (msg, pos)
├── JumpGear (id, jumpGearId, pos, continentId) [multiple]
├── DungeonTrigger (cameraCurrentZoom, cameraMaxZoom)
├── Party [multiple] → see TerritoryParty
└── Npc [multiple] → see TerritorySpawn

  • Composite key: Territory areas are identified by huntingZoneId, groupId, AND territoryId. All three are required for update and delete operations.

  • Fence replacement: When updating fences via changes, the entire fence list is replaced. Include all fence positions in the update.

  • Type enum casing: Territory type values use lowercase in YAML (normal, boss, quest).