Skill Data
Overview
Section titled “Overview”SkillData defines combat skills across three YAML sections—npcSkills, userSkills, and commonSkills—sharing a common property model. NPC skills are zone-partitioned by huntingZoneId, while User and Common skills are category-partitioned by class/race combination.
Version Support
Section titled “Version Support”| Version | Status |
|---|---|
| v92 | Supported |
DSL Support
Section titled “DSL Support”| Section | Entity | Key | File Organization |
|---|---|---|---|
npcSkills | NpcSkill | huntingZoneId + templateId + skillId | SkillData_{huntingZoneId}.xml |
userSkills | UserSkill | category + id | UserSkillData_{category}.xml |
commonSkills | CommonSkill | category + id | UserSkillData_{category}.xml |
Supported operations: create, update, delete, upsert
Quick Recipes
Section titled “Quick Recipes”Create NPC Skill
Section titled “Create NPC Skill”npcSkills: create: - huntingZoneId: 456 templateId: 1000 skillId: 10100 name: "Basic Attack" totalAtk: 100 attackRange: 50Create User Skill
Section titled “Create User Skill”userSkills: create: - category: Warrior_Human_M id: 10100 name: "Combo Attack" totalAtk: 150 attackRange: 40Create Common Skill
Section titled “Create Common Skill”commonSkills: create: - category: Common id: 10100 name: "Resurrection"Update
Section titled “Update”npcSkills: update: - huntingZoneId: 456 templateId: 1000 skillId: 10100 changes: totalAtk: 200 attackRange: 60Delete
Section titled “Delete”npcSkills: delete: - huntingZoneId: 456 templateId: 1000 skillId: 10100Upsert
Section titled “Upsert”userSkills: upsert: - category: Warrior_Human_M id: 10100 name: "Combo Attack" totalAtk: 200Top-Level Properties
Section titled “Top-Level Properties”NPC-Only Properties
Section titled “NPC-Only Properties”| Attribute | Type | Since | Description |
|---|---|---|---|
huntingZoneId | int | v92 | Hunting Zone Id |
templateId | int | v92 | Template Id |
Shared Properties
Section titled “Shared Properties”| Attribute | Type | Since | Description |
|---|---|---|---|
abnormalityTargetIsOwner | bool | v92 | Abnormality Target Is Owner |
adjAtkByNpcHp | bool | v92 | Adj Atk By Npc Hp |
adjAtkByTargetHp | string | v92 | Adj Atk By Target Hp |
aiRotateThreshold | int | v92 | Ai Rotate Threshold |
allDirectionDefence | bool | v92 | All Direction Defence |
applyAttackAnimRate | bool | v92 | Apply Attack Anim Rate |
applyDistanceDamageRate | bool | v92 | Apply Distance Damage Rate |
attackRange | int | v92 | Attack Range |
autoUse | bool | v92 | Auto Use |
canUseOnCombatMode | bool | v92 | Can Use On Combat Mode |
canUseOnRide | bool | v92 | Can Use On Ride |
category | string | v92 | Category |
changeDirMethodOnSkillEnd | string | v92 | Change Dir Method On Skill End |
changeDirOnSkillEnd | bool | v92 | Change Dir On Skill End |
changeDirToCenter | bool | v92 | Change Dir To Center |
changeDirection | bool | v92 | Change Direction |
ignoreAir | bool | v92 | Ignore Air |
ignoreDefence | string | v92 | Ignore Defence |
ignoreLos | bool | v92 | Ignore Los |
ignoreShield | bool | v92 | Ignore Shield |
isPlayArmorSound | bool | v92 | Is Play Armor Sound |
name | string | v92 | Name |
needWeapon | bool | v92 | Need Weapon |
nextSkill | string | v92 | Next Skill |
pushtarget | string | v92 | Pushtarget |
switchInfo | string | v92 | Switch Info |
timeRate | decimal | v92 | Time Rate |
totalAtk | int | v92 | Total Atk |
type | string | v92 | Type |
Nested Elements
Section titled “Nested Elements”| Element | Type | Sections | Description | Reference |
|---|---|---|---|---|
actions | list | All | Actions | Action |
aggro | nested | All | Aggro | Aggro |
anger | nested | All | Anger | Anger |
balanceRef | nested | NPC | Balance Ref | BalanceRef |
bullet | nested | All | Bullet | Bullet |
defence | nested | All | Defence | Defence |
direction | nested | All | Direction | Direction |
drain | nested | All | Drain | Drain |
drainBack | nested | All | Drain Back | DrainBack |
precondition | nested | All | Precondition | Precondition |
projectile | nested | All | Projectile | Projectile |
property | nested | All | Property | Property |
resistance | nested | All | Resistance | Resistance |
targetingLists | list | All | Targeting Lists | TargetingList |
teleport | nested | All | Teleport | Teleport |
XML Structure
Section titled “XML Structure”Skill (root)├─ Property├─ Direction├─ Bullet├─ Defence├─ Aggro├─ Anger├─ Resistance├─ Teleport├─ Drain├─ DrainBack├─ Precondition│ ├─ Cost│ └─ ExclusiveAbnormality├─ Projectile├─ BalanceRef (NPC-only)├─ Action [multiple]│ ├─ HitInvincible│ ├─ MoveInvincible│ ├─ NoReaction│ ├─ Pending│ ├─ Cancel│ ├─ ChangeDir│ ├─ CameraType│ └─ Stage [multiple]│ ├─ StageProperty│ ├─ AnimSeq [multiple]│ └─ CameraShake [multiple]└─ TargetingList [multiple] └─ Targeting [multiple] ├─ TargetingCost └─ Area [multiple] ├─ Reaction ├─ HitEffect [multiple] ├─ TargetCondition └─ Effect ├─ HpDiff ├─ MpDiff ├─ AggroDiff ├─ AngerDiff ├─ Rebirth ├─ AbnormalityOnCommon └─ DynamicSpawnEnum Reference
Section titled “Enum Reference”AdjustTargetingPos
Section titled “AdjustTargetingPos”| Value |
|---|
normal |
notUse |
toTarget |
toTargetWithGeo |
AnimControlType
Section titled “AnimControlType”| Value |
|---|
move |
move_with_skill |
normal |
sync_move |
AreaPurpose
Section titled “AreaPurpose”| Value |
|---|
attack |
byType |
notAttack |
CameraShakeStartCondition
Section titled “CameraShakeStartCondition”| Value |
|---|
allHit |
firstHit |
skillEnd |
skillStart |
stageStart |
CameraShakeTargetType
Section titled “CameraShakeTargetType”| Value |
|---|
all |
me |
meAndTarget |
CameraTypeKind
Section titled “CameraTypeKind”| Value |
|---|
none |
delay |
delay_align |
follow_animation |
ChangeDirMethod
Section titled “ChangeDirMethod”| Value |
|---|
dir |
dist |
HitEffectType
Section titled “HitEffectType”| Value |
|---|
animationDamage |
none |
notShow |
notShowAll |
nothing |
noting |
notshow |
notshowall |
onlyAnimation |
show |
PushTarget
Section titled “PushTarget”| Value |
|---|
pass |
push |
pushall |
stop |
ReactionPendingType
Section titled “ReactionPendingType”| Value |
|---|
normal |
allTimeLine |
immediateCancel |
rearCancel |
ReactionType
Section titled “ReactionType”| Value |
|---|
air |
mini |
none |
SelectMethod
Section titled “SelectMethod”| Value |
|---|
Dist |
ReverseDist |
dir |
hpLess |
hpMore |
no |
random |
SkillPendingType
Section titled “SkillPendingType”| Value |
|---|
normal |
allTimeLine |
disable |
hotkeyrearCancelOnly |
immediateCancel |
immediawateCancel |
rearCancel |
rearCancelOnly |
superCancel |
TargetingMethod
Section titled “TargetingMethod”| Value |
|---|
target |
self |
lockOn |
normal |
nomal |
collect |
marked |
autoLockOn |
rangelockon |
real_forward |
spiritAttack |
spiritFollow |
teleport |
WeaponStatus
Section titled “WeaponStatus”| Value |
|---|
@in |
@out |