-
Notifications
You must be signed in to change notification settings - Fork 11
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
GEM
toCRYSTAL
) - ✅ Add entirely new types (e.g.,
SCROLL
,TOTEM
,BLOOD
, etc.) - ✅ Create multiple
categories
within a socket type to define variations by rarity or function - ✅ Customize both
empty
andfilled
formats 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
, andformat
section for that category. - Match your new socket type in your gem/rune/etc. item's
target-requirements.socket
setting.
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
empty
andfilled
format.value
. - Missing fields like
tier
orformat.value.filled
will 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 thetiers
section ofengine.yml
and determines the color used for sockets of each rarity.
-
- Sockets are matched with insertable items using the
target-requirements.socket
field. - The actual socketing behavior (e.g., success rates, failure handling, GUI layout) is managed by the socketing module configuration, not this file.