Infusion Configuration

Define swappable weapon infusions — the tag-gated, socketed "typing / utility" half of the gear-enhancement pools.

An infusion is a swappable enhancement a player slots into a weapon’s socket — the typing / utility half of the gear-enhancement system (its sibling is the affix, a weapon’s intrinsic playstyle shaping). An infusion retypes a weapon’s hits or adds a cross-cutting behavior, and it can be moved between weapons. Which infusions a given weapon can accept is decided by tags: the infusion lists tags, the weapon lists tags, and the infusion is available only where they overlap.

This page defines the catalog of infusions that exist. Which infusion a specific item instance currently carries is per-instance state set at a socketing station, not authored here.


File Location

Register the file in your mod’s manifest (mods/<YourMod>/<YourMod>.yaml):

infusion-config:

Then create the file it points to, relative to your mod’s folder:

mods/<YourMod>/infusion-config.yaml

The file is a single list of infusion entries:

infusions:
  - name: fire
    tags: melee
    damage-type: fire
  - name: blast
    tags: [melee, ranged]
    damage-type: blast

Fields

FieldRequiredDescription
nameyesThe infusion’s name. Mod-qualified automatically (fireYourMod:fire) unless you write an explicit Mod:name. This is the id stored on an item that carries the infusion.
tagsnoA tag or list of tags gating which weapons can accept this infusion. A weapon can accept the infusion only if the weapon’s own tags: (see item-config) share at least one tag. Matched case-insensitively. Omitted or empty → the infusion is available on no weapon (fail-closed).
damage-typenoRetype every hit the weapon lands to this damage type (physical, fire, blast, decay, radiant). When more than one socketed infusion declares a type, the last-socketed one wins. Behavioral infusions (a ward tick, a spreading effect) attach here in a later release.

Tags gate availability, and a typo fails closed

Tags are the same open, un-namespaced registry used everywhere else (tool-types, #tag item references): any word is a valid tag, matched case-insensitively. An infusion tagged melee is offered on every weapon whose tags: include melee. A tag no weapon carries — including a typo like meele — simply makes the infusion available on nothing, rather than erroring or applying everywhere. The server logs a load-time warning naming any enhancement tag no weapon declares, so a typo is visible rather than silent.


Example

A fire infusion available on melee and ranged weapons, plus a warding infusion available only on melee weapons (behavioral effect authored in a later release):

infusions:
  - name: fire
    tags: [melee, ranged]
    damage-type: fire
  - name: ward
    tags: melee

For a weapon to accept either, give it the matching tag in item-config:

items:
  - name: my_sword
    type: weapon
    tags: melee          # can now accept the `fire` and `ward` infusions
    weapon-info:
      type: melee
      damage: 10.0

Last updated