SocketItemType Configuration
This configuration file lists the items that can carry seed sphere sockets and the maximum number of socket slots each one supports.
Any item type can be a socket item. There is no longer a fixed set of socketable categories - list any Section/Type here and it becomes socketable. The full table is sent to the client at login (game data sync), so the client recognizes exactly the items configured here for socket handling, drag-and-drop, and tooltips, with no client patch required.
File Location#
Data/Item/SocketItemType.xml
Dependencies#
| Depends On | Purpose |
|---|---|
| Item.xml | Item definitions by Section/Type |
| Depended On By | Purpose |
|---|---|
| ItemOptionRate.xml | SocketOptions section picks the actual socket count on drop |
| SocketItemOption.xml | Provides seed, bonus, and package effects for sockets |
How It Works#
- An item rolls a socket count from the SocketOptions table in
ItemOptionRate.xml. - If the item is listed in this file, up to
MaxSocketslots are marked as empty (byte value0xFE). - Slots that are not created stay at
0xFF(no socket). - Each created slot can later hold one seed sphere byte that encodes both the option index and the sphere level.
If the item is not listed here but is a Pentagram item (handled by the Pentagram system), socket slots are still created up to the engine limit of 5 without consulting this file.
Structure#
<SocketItemTypeList>
<Item Section="0" Type="26" MaxSocket="3"/>
<Item Section="0" Type="37" MaxSocket="5"/>
</SocketItemTypeList>
Attributes#
| Attribute | Type | Range | Description |
|---|---|---|---|
Section | int | 0-15 | Item category |
Type | int | 0-511 | Item type index within the category |
MaxSocket | int | 1-5 | Maximum number of sockets for this item |
Item Index Calculation#
ItemIndex = Section * 512 + Type
Section Reference#
| Section | Category |
|---|---|
| 0 | Swords |
| 1 | Axes |
| 2 | Maces / Scepters |
| 3 | Spears |
| 4 | Bows / Crossbows |
| 5 | Staffs / Sticks |
| 6 | Shields |
| 7 | Helms |
| 8 | Armor |
| 9 | Pants |
| 10 | Gloves |
| 11 | Boots |
| 12 | Wings / Orbs / Scrolls |
| 13 | Misc (potions, pets, rings, pendants) |
| 14 | Event / summon items |
| 15 | Quest / misc items |
Element Restriction by Section#
Socket element types are restricted by item section when seeds are generated:
| Item Sections | Allowed Element Types |
|---|---|
| 0-5 (weapons, staffs), excluding arrows/bolts | Fire (1), Ice (3), Lightning (5) |
| 6-11 (shields, armor, pants, gloves, boots) | Water (2), Wind (4), Earth (6) |
See SocketItemOption.xml for the element numbering and per-type effects.
Examples#
<!-- Socket Swords -->
<Item Section="0" Type="26" MaxSocket="3"/>
<Item Section="0" Type="27" MaxSocket="3"/>
<Item Section="0" Type="28" MaxSocket="3"/>
<!-- Socket Staffs -->
<Item Section="5" Type="30" MaxSocket="3"/>
<Item Section="5" Type="31" MaxSocket="3"/>
<Item Section="5" Type="37" MaxSocket="5"/>
<!-- Socket Armor pieces (all MaxSocket=3) -->
<Item Section="7" Type="45" MaxSocket="3"/> <!-- Helm -->
<Item Section="8" Type="45" MaxSocket="3"/> <!-- Armor -->
<Item Section="9" Type="45" MaxSocket="3"/> <!-- Pants -->
<Item Section="10" Type="45" MaxSocket="3"/> <!-- Gloves -->
<Item Section="11" Type="45" MaxSocket="3"/> <!-- Boots -->
<!-- Socket Shields -->
<Item Section="6" Type="17" MaxSocket="3"/>
<Item Section="6" Type="18" MaxSocket="3"/>
<Item Section="6" Type="19" MaxSocket="3"/>