For a different character, I've decided to repurpose an otherwise useless ring.  I want to add a variety of improvements to this one to play and demonstrate what's possible.

  • I search the spreadsheet for the in-game name (Ring of Colour Spray):

DEN_HarpyMeal_NestRingArmorPublic\Gustav\Stats\Generated\Data\Armor.txth2f198d16g3b45g44d2gb8d1gd8bd150ca02cRing of Colour Spray

  • I find its current definition in the corresponding file:

new entry "DEN_HarpyMeal_NestRing"
type "Armor"
using "_Ring_Magic"
data "RootTemplate" "eadad0c4-d4a5-45cb-b4c3-e16a9b3ebe0a"
data "ItemGroup" ""
data "Rarity" "Uncommon"
data "Boosts" "UnlockSpell(Zone_DEN_ColorSpray_HarpyMeal_NestRing)"
data "Unique" "1"


  • This one already has a Boosts line, so I will add additional boosts separated with a ; (semicolon):

data "Boosts" "UnlockSpell(Zone_DEN_ColorSpray_HarpyMeal_NestRing);Skill(Perception,30);Ability(Strength,5);AC(5);IF(HasPassive('UnlockedSpellSlotLevel3', context.Source)):ActionResource(SpellSlot,5,3);Proficiency(HeavyArmor);UnlockSpell(Shout_MAG_Blink);"

  • I've included a lot of effects here:
    • Skill(Perception,30) - Boosts Perception by +30
    • Ability(Strength,5) - +5 to Strength
    • AC(5) - +5 to Armor Class
    • IF(HasPassive('UnlockedSpellSlotLevel3', context.Source)):ActionResource(SpellSlot,5,3) - Increase my level 3 spell slots by 5.  Since I don't want to give spell slots to characters that don't use them, I include a check that verifies that level 3 spells are unlocked.  Conditional statements take the form of:  IF(condition):action.  My condition looks for the Passive flag indicating that level 3 spells have been unlocked.  Here, context.Source refers to the character who equipped the ring.  Without this, it would check for this property on the ring object itself, and the condition would always evaluate as false.
      This only covers level 3 spells.  If I want to include more levels, I would need to repeat this statement once for each level, replacing each of the 3's. I've also noticed that re-equipping this ring restores spell slots as a handy side effect.
    • Proficiency(HeavyArmor) - Grants Heavy Armor proficiency
    • UnlockSpell(Shout_MAG_Blink) - Makes the Blink spell available

  • The rules are also stingy about giving out Feats when leveling up.  I could try to use a mod to change the feat schedule, and risk breaking my game if the mod should ever stop working.  Instead, I can assign the Feats I want to my equipment.
    Passives are properties that define a wide range of character attributes: Feats, racial abilities, changes applied by spells and magical items.  To add these,  I will need to create another new line defining PassivesOnEquip:

data "PassivesOnEquip" "ElementalAdept_Lightning;DungeonDelver_ResistTraps;UnlockedSpellSlotLevel3"


    • ElementalAdept_Lightning - Adds Elemental Adept: Lightning
    • DungeonDelver_ResistTraps - Another feat to reduce the annoyance of traps
    • UnlockedSpellSlotLevel3 - This works even for non-magical characters.  I expect it would cause side effects, so it is probably not a good idea.

  • Statuses are temporary and appear next to the character's portrait.  They are only applied when the item is equipped, so you must re-equip the item after making changes or to reapply lost statuses.  Statuses usually apply Boosts along with visual effects.
    I added a new line that applies some status effects:

data "StatusOnEquip" "INVULNERABLE;SEE_INVISIBILITY;FLY;LONG_JUMP;FEATHER_FALL;GLO_PIXIEBLESSING;DRUNK"

    • INVULNERABLE - Character cannot take damage.  There is also INVULNERABLE_NOT_SHOWN where the status is hidden, and the Boost Invulnerable()
    • SEE_INVISIBILITY - Same as casting the See Invisibility spell.
    • FLY - Fly is always a movement option on the Hotbar.  Alternative Boost:  UnlockSpell(Projectile_Fly_Spell)
    • LONG_JUMP - Tripled jump distance
    • FEATHER_FALL - No fall damage.  Alternative Boost without the status effect: IgnoreFallDamage()
    • GLO_PIXIEBLESSING - Grants Pixie Blessing
    • DRUNK - Whatever gets you through the quest

Article information

Added on

Edited on

Written by

hypermorphic