SocketItemOption Configuration

This configuration file defines the effects provided by seed spheres inserted into socket items: individual seed effects, set bonuses for specific element sequences in a single item, and global package bonuses that count element types across all equipped socket items.

File Location#

Data/Item/SocketItemOption.xml

Dependencies#

Depends OnPurpose
SocketItemType.xmlDefines which items can have sockets and element restrictions by section
ItemOptionRate.xmlSocketOptions table rolls the per-drop socket count

Related references:

Structure Overview#

The file has three sections:

  1. Options - individual seed sphere effects, keyed by Index
  2. BonusOptions - per-item set bonuses triggered when a specific element sequence fills the first socket slots in order
  3. PackageOptions - global bonuses triggered when equipped socket items together contain at least the required count of each element type

Options Section#

Defines the effect of each seed sphere type.

<Options>
    <Option Index="0" Type="1" SubIndex="0"
            Name="Attack power increase" Rate="20"
            Value1="17" Value2="19" Value3="21" Value4="23" Value5="25"
            OptionType="3"/>
</Options>

Option Attributes#

AttributeTypeDescription
IndexintSeed option ID (see Seed Options). Valid range 0-49.
TypeintElement type (1-6).
SubIndexintSub-index within the element type. Used by seed creation and client display.
NamestringDisplay name (max 31 chars).
RateintSelection weight used when picking a random option of the given element type.
Value1-5intEffect value at sphere levels 1-5.
OptionTypeintClient-side display hint: 1=flat, 2=percent, 3=scaled by character level, 4=scaled by Max HP, 5=scaled by Max MP. Defaults to 1. The server always reads the value from Value1-5 based on sphere level; the actual formula is fixed per option index.

Element Types#

TypeElementTheme
1FireAttack / damage
2WaterDefense / block
3IceSkill / hunt
4WindRecovery / HP and MP pool
5LightningCritical / excellent
6EarthBase stats

Weapons (Sections 0-5, excluding Arrows at 4/7 and Bolts at 4/15) can only roll Fire, Ice, and Lightning seeds. Armor pieces (Sections 6-11) can only roll Water, Wind, and Earth seeds.

Seed Options#

The list below reflects the stock XML. Every entry fires a dedicated stat addition in the server's socket applier; "Formula" describes what the server actually does with Value.

Fire Element (Type 1) - Attack#

IndexNameFormula
0Attack power increase (scales by level)All damage min/max += CharacterLevel / Value. Lower Value = more damage.
1Attack speed increasePhysiSpeed and MagicSpeed += Value.
2Minimum attack power increaseMin physical, min magic, and min curse damage += Value. (Stock XML mislabels this as "Maximum"; the server handler is the min-damage case.)
3Maximum attack power increaseMax physical, max magic, and max curse damage += Value. (Stock XML mislabels this as "Minimum"; the server handler is the max-damage case.)
4Attack power increaseAll damage min and max (Physi, Magic, Curse) += Value.
5AG consumption decreaseBPConsumptionRate -= Value. Lowers the AG cost multiplier on skills.

Water Element (Type 2) - Defense#

IndexNameFormula
10Block rating increaseDefenseSuccessRate += DefenseSuccessRate * Value / 100 (percent multiplier on current defense rate).
11Defense increaseDefense += Value.
12Shield protection increaseShieldDamageReduction += Value (percent).
13Damage reductionSocket slot of the damage-reduction table += Value.
14Damage reflectionDamageReflect += Value.

Ice Element (Type 3) - Skill / Hunt#

IndexNameFormula
16Monster attack HP recoveryHuntHP += 100 / Value. Lower Value yields a higher HuntHP percent. On kill, HP restored = MaxHP * HuntHP / 100 + TargetLevel.
17Monster attack MP recoveryHuntMP += 100 / Value. Lower Value yields a higher HuntMP percent. On kill, MP restored = MaxMP * HuntMP / 100.
18Skill attack increaseSkillDamageBonus += Value.
19Attack success rate increaseAttackSuccessRate += Value.
20Item durability increaseWeapon and armor durability rate += Value (percent).

Wind Element (Type 4) - Recovery / Pool#

IndexNameFormula
21HP recovery increaseHPRecovery += Value.
22Maximum HP increaseAddLife += MaxLife * Value / 100 (percent of base Max HP).
23Maximum MP increaseAddMana += MaxMana * Value / 100 (percent of base Max MP).
24MP recovery increaseMPRecovery += Value.
25Maximum AG increaseAddBP += Value.
26AG recovery increaseBPRecovery += Value.

Lightning Element (Type 5) - Critical / Excellent#

IndexNameFormula
29Excellent damage increaseExcellentDamage += Value.
30Excellent damage rate increaseExcellentDamageRate += Value.
31Critical damage increaseCriticalDamage += Value.
32Critical damage rate increaseCriticalDamageRate += Value.

Earth Element (Type 6) - Base Stats#

IndexNameFormula
34Strength increaseAddStrength += Value.
35Dexterity increaseAddDexterity += Value.
36Vitality increaseAddVitality += Value.
37Energy increaseAddEnergy += Value.

Seed Byte Encoding#

Each filled socket slot on an item stores a single byte: Index + Level * 50, where Index is the seed option ID above and Level is the sphere level (0-4, representing spheres 1-5). Sentinel values are 0xFE for an empty slot and 0xFF for a non-existent slot.

BonusOptions Section#

Grants a bonus to an item when its first N socket slots contain a specific element sequence.

<BonusOptions>
    <BonusOption Index="0" MinItemSection="0" MaxItemSection="4"
                 Name="Attack power bonus" Value="11"
                 ReqOptionType1="1" ReqOptionType2="5" ReqOptionType3="3"
                 ReqOptionType4="0" ReqOptionType5="0"/>
</BonusOptions>

BonusOption Attributes#

AttributeTypeDescription
IndexintBonus option ID (0-49).
MinItemSectionintMinimum item section the bonus applies to.
MaxItemSectionintMaximum item section the bonus applies to.
NamestringDisplay name (max 31 chars).
ValueintEffect value.
ReqOptionType1-5intRequired element type at each socket slot in order. 0 means the slot is not checked. The check is positional: slot 1 must hold an element of ReqOptionType1, slot 2 of ReqOptionType2, and so on. If a required slot is empty or holds the wrong element, the bonus does not trigger.

Bonus Types (stock)#

IndexSectionsNameRequired ElementsEffect
00-4 (weapons)Attack power bonusFire(1), Lightning(5), Ice(3)All damage min/max += Value.
10-4 (weapons)Skill damage bonusLightning(5), Ice(3), Fire(1)SkillDamageBonus += Value.
25 (staffs)Magic power bonusFire(1), Lightning(5), Ice(3)Physical and magical damage min/max += Value.
35 (staffs)Skill damage bonusLightning(5), Ice(3), Fire(1)SkillDamageBonus += Value.
46-12 (armor)Defense bonusWater(2), Earth(6), Wind(4)Defense += Value.
56-12 (armor)Max HP bonusEarth(6), Wind(4), Water(2)AddLife += Value.

Each equipped socket item is evaluated independently and only the first matching bonus is applied to that item.

PackageOptions Section#

Grants a global bonus when the character's equipped socket items together contain at least the required number of seeds of each element type.

<PackageOptions>
    <PackageOption Index="0" Name="Double damage rate" Value="3"
                   ReqOptionTypeCount1="1" ReqOptionTypeCount2="1"
                   ReqOptionTypeCount3="1" ReqOptionTypeCount4="1"
                   ReqOptionTypeCount5="1" ReqOptionTypeCount6="0"/>
</PackageOptions>

PackageOption Attributes#

AttributeTypeDescription
IndexintPackage option ID (0-49).
NamestringDisplay name (max 31 chars).
ValueintEffect value.
ReqOptionTypeCount1-6intMinimum required count per element type (1=Fire, 2=Water, 3=Ice, 4=Wind, 5=Lightning, 6=Earth) summed across all equipped socket items. The check is "at least this many"; having more seeds of a type than required still triggers the bonus.

Package Options (stock)#

IndexNameRequired Counts (Fire / Water / Ice / Wind / Lightning / Earth)Effect
0Double damage rate1 / 1 / 1 / 1 / 1 / 0DoubleDamageRate += Value (stock 3).
1Ignore defense rate1 / 1 / 3 / 1 / 1 / 0IgnoreDefenseRate += Value (stock 1).

Examples#

<!-- Attack power increase scaled by level - sphere level 5 uses Value5=25 -->
<Option Index="0" Type="1" SubIndex="0"
        Name="Attack power increase" Rate="20"
        Value1="17" Value2="19" Value3="21" Value4="23" Value5="25"
        OptionType="3"/>

At character level 400 with sphere level 5, all damage min/max gain 400 / 25 = 16. Lower ValueN increases the per-level bonus.

Important Behavior#

Common Issues#

Last updated April 21, 2026