Skip to content

Attribute Modifiers

WinDanesz edited this page Jan 27, 2024 · 8 revisions

Description

WizardryUtils currently registers 6 new attribute modifiers to the game. All of these are a reimplementation of the spell modifiers of the Electroblob's Wizardry mod, and their purpose is to create armor, tools, baubles, or whatever item you'd like with custom modifiers that can affect spells!

Attribute modifiers affect any spell casts, including wand, scroll, command, etc.

All attributes except for Mana Condensing are percent based, so for example, a boot that gives +20% potency would look like this:

/give @p minecraft:leather_boots 1 0 {AttributeModifiers:[{AttributeName:"wizardryutils.SpellPotency",Name:"wizardryutils.SpellPotency",Slot:"feet",Amount:0.2,Operation:1,UUIDMost:20828,UUIDLeast:107233}]}

Some modifiers (cooldown and cost) are beneficial if they are negative and cause a disadvantage from the player's perpective if they are positive. Unfortunately the game will regardless mark negative attribute modifiers with red color, but keep in mind that e.g. a -15% Spell Cooldown or -15% Spell Cost is an useful attribute.

New Attributes

Spell Potency

Name Minimum Value Maximum Value (Configurable) Default Value
wizardryutils.SpellPotency -500 (%) 500 (%) 100 (%)

Increases (or decreases with a negative value) the "strength" of spells. I intentionally said strength and not damage, because not all spells are affected by Potency and not all of them deal damage. If a spell was implemented in a way it utilizes Potency, it will be affected by this modifier. This usually means the damage of attacking spells, the healing amount of healing spells, the potion amplifier of some buff spells, etc.

Spell Blast

Name Minimum Value Maximum Value (Configurable) Default Value
wizardryutils.SpellBlast -500 (%) 500 (%) 100 (%)

Increases (or decreases with a negative value) the effect radius of spells. This modifier scales the effect radius/blast radius of spells that make use of the modifier. Same effect as the Wand Blast Upgrade Scroll.

Spell Range

Name Minimum Value Maximum Value (Configurable) Default Value
wizardryutils.SpellRange -500 (%) 500 (%) 100 (%)

Increases (or decreases with a negative value) the reach of spells. This modifier scales the effect range/reach of spells that make use of the modifier. Same effect as the Wand Range Upgrade Scroll.

Spell Cooldown

Name Minimum Value Maximum Value (Configurable) Default Value
wizardryutils.SpellCooldown -500 (%) 500 (%) 100 (%)

Increases (or decreases with a negative value) the cooldown of spells. Same effect as the Wand Cooldown Upgrade Scroll.

Spell Duration

Name Minimum Value Maximum Value (Configurable) Default Value
wizardryutils.SpellDuration -500 (%) 500 (%) 100 (%)

Increases (or decreases with a negative value) the duration of spells. Same effect as the Wand Duration Upgrade Scroll.

Spell Cost Reduction

Name Minimum Value Maximum Value (Configurable) Default Value
wizardryutils.SpellCost -500 (%) 500 (%) 100 (%)

Increases (or decreases with a negative value) the mana cost of spells. There is no such scroll in the game, but wizard armour basically reduces the mana cost or elements. This modifier is generic, which means it applies to any element.

Mana Condensing

Name Minimum Value Maximum Value (Configurable) Default Value
wizardryutils.SpellCondensing -500 (mana) 500 (mana) 0 (mana)

Every 3 seconds, restores or drains the amount of mana from the items held both in the player's main and off-hand wand(s). Because mana is an integer and attributes are floats, fraction amounts are added up and are handled as a chance for -1/+1 mana depending on the sign of the number.

Element-specific attribute modifiers for spells

WizardryUtils as of v1.2.0 also adds the following element-specific attribute modifiers. They only apply their effect to their respective element. The modifiers without an element name detailed above apply to all elements.

attribute.name.wizardryutils.FireSpellPotency=Fire Spell Potency
attribute.name.wizardryutils.FireSpellCost=Fire Spell Cost
attribute.name.wizardryutils.FireSpellDuration=Fire Spell Duration
attribute.name.wizardryutils.FireSpellBlast=Fire Spell Blast
attribute.name.wizardryutils.FireSpellRange=Fire Spell Range
attribute.name.wizardryutils.FireSpellCooldown=Fire Spell Cooldown
attribute.name.wizardryutils.IceSpellPotency=Ice Spell Potency
attribute.name.wizardryutils.IceSpellCost=Ice Spell Cost
attribute.name.wizardryutils.IceSpellDuration=Ice Spell Duration
attribute.name.wizardryutils.IceSpellBlast=Ice Spell Blast
attribute.name.wizardryutils.IceSpellRange=Ice Spell Range
attribute.name.wizardryutils.IceSpellCooldown=Ice Spell Cooldown
attribute.name.wizardryutils.LightningSpellPotency=Lightning Spell Potency
attribute.name.wizardryutils.LightningSpellCost=Lightning Spell Cost
attribute.name.wizardryutils.LightningSpellDuration=Lightning Spell Duration
attribute.name.wizardryutils.LightningSpellBlast=Lightning Spell Blast
attribute.name.wizardryutils.LightningSpellRange=Lightning Spell Range
attribute.name.wizardryutils.LightningSpellCooldown=Lightning Spell Cooldown
attribute.name.wizardryutils.NecromancySpellPotency=Necromancy Spell Potency
attribute.name.wizardryutils.NecromancySpellCost=Necromancy Spell Cost
attribute.name.wizardryutils.NecromancySpellDuration=Necromancy Spell Duration
attribute.name.wizardryutils.NecromancySpellBlast=Necromancy Spell Blast
attribute.name.wizardryutils.NecromancySpellRange=Necromancy Spell Range
attribute.name.wizardryutils.NecromancySpellCooldown=Necromancy Spell Cooldown
attribute.name.wizardryutils.EarthSpellPotency=Earth Spell Potency
attribute.name.wizardryutils.EarthSpellCost=Earth Spell Cost
attribute.name.wizardryutils.EarthSpellDuration=Earth Spell Duration
attribute.name.wizardryutils.EarthSpellBlast=Earth Spell Blast
attribute.name.wizardryutils.EarthSpellRange=Earth Spell Range
attribute.name.wizardryutils.EarthSpellCooldown=Earth Spell Cooldown
attribute.name.wizardryutils.SorcerySpellPotency=Sorcery Spell Potency
attribute.name.wizardryutils.SorcerySpellCost=Sorcery Spell Cost
attribute.name.wizardryutils.SorcerySpellDuration=Sorcery Spell Duration
attribute.name.wizardryutils.SorcerySpellBlast=Sorcery Spell Blast
attribute.name.wizardryutils.SorcerySpellRange=Sorcery Spell Range
attribute.name.wizardryutils.SorcerySpellCooldown=Sorcery Spell Cooldown
attribute.name.wizardryutils.HealingSpellPotency=Healing Spell Potency
attribute.name.wizardryutils.HealingSpellCost=Healing Spell Cost
attribute.name.wizardryutils.HealingSpellDuration=Healing Spell Duration
attribute.name.wizardryutils.HealingSpellBlast=Healing Spell Blast
attribute.name.wizardryutils.HealingSpellRange=Healing Spell Range
attribute.name.wizardryutils.HealingSpellCooldown=Healing Spell Cooldown