-
Notifications
You must be signed in to change notification settings - Fork 14
item_stats sockets
goflishMC edited this page Apr 22, 2025
·
2 revisions
This file defines the socket types used by Divinity, allowing items to hold gems, runes, essences, or other customizable inserts. Each socket type can have different visual formatting, tiers, and behavior. Sockets are purely a formatting layer here—logic like insertion success, restrictions, and removal is handled by the socketing module configuration.
GEM:
categories:
common:
tier: common
name: '%TIER_NAME% Gem Socket'
format:
main: '%value%'
value:
empty: '%TIER_COLOR%□ <%name%>'
filled: '%TIER_COLOR%▣ &7%value%'
rare:
tier: rare
name: '%TIER_NAME% Gem Socket'
format:
main: '%value%'
value:
empty: '%TIER_COLOR%□ <%name%>'
filled: '%TIER_COLOR%▣ &7%value%'
RUNE:
categories:
default:
tier: common
name: '%TIER_COLOR%Rune Socket'
format:
main: '%value%'
value:
empty: '%TIER_COLOR%□ <%name%>'
filled: '%TIER_COLOR%▣ &7%value%'
ESSENCE:
categories:
default:
tier: common
name: '%TIER_COLOR%Essence Socket'
format:
main: '%value%'
value:
empty: '%TIER_COLOR%□ <%name%>'
filled: '%TIER_COLOR%▣ &7%value%'| Setting | Description |
|---|---|
tier |
Controls which item tier the socket is associated with. Affects color formatting via %TIER_COLOR%. |
name |
Displayed socket name, supports tier placeholders like %TIER_NAME%. |
format.main |
Defines how the socket displays in the item lore. Usually set to %value%. |
format.value.empty |
Shown when the socket is empty. Supports %name% and %TIER_COLOR%. |
format.value.filled |
Shown when the socket is filled with a gem, rune, or essence. Supports %value%. |
Divinity supports unlimited custom socket types, each with its own logic and display configuration. You can:
- ✅ Rename socket types (e.g., change
GEMtoCRYSTAL) - ✅ Add entirely new types (e.g.,
SCROLL,TOTEM,BLOOD, etc.) - ✅ Create multiple
categorieswithin a socket type to define variations by rarity or function - ✅ Customize both
emptyandfilledformats per category to alter how the socket appears in lore
- Choose a unique key name for your socket type (e.g.,
SCROLL). - Add at least one category under it (e.g.,
default,epic, etc.). - Provide a valid
tier,name, andformatsection for that category. - Match your new socket type in your gem/rune/etc. item's
target-requirements.socketsetting.
Example:
SCROLL:
categories:
default:
tier: rare
name: '%TIER_COLOR%Scroll Slot'
format:
main: '%value%'
value:
empty: '%TIER_COLOR%□ <%name%>'
filled: '%TIER_COLOR%▣ &7%value%'- Every socket type must have at least one
category. - Each category must define both an
emptyandfilledformat.value. - Missing fields like
tierorformat.value.filledwill break lore rendering.
-
%value%is dynamically replaced with the socket content when filled. -
%name%and%TIER_COLOR%are tier-based placeholders used in socket lore.-
%TIER_COLOR%is defined in thetierssection ofengine.ymland determines the color used for sockets of each rarity.
-
- Sockets are matched with insertable items using the
target-requirements.socketfield. - The actual socketing behavior (e.g., success rates, failure handling, GUI layout) is managed by the socketing module configuration, not this file.