Skip to content

Spell Costs

Drehverschluss edited this page Nov 6, 2026 · 1 revision

Spell costs

RunelessRPG decides for every spell whether it costs mana and how much. Spells it does not handle keep Spell Engine's own costs (runes or other items).

Spell tooltip with mana cost

Which spells cost mana

Only active spells that a player casts can cost mana. Passive spells, triggered effects and spells cast by summons (for example the Fire Hydra's fireballs) never cost anything.

Each spell gets a category. The first rule that matches decides:

Order Rule Result
1 Not an active spell not handled (Spell Engine costs apply)
2 In #runelessrpg:cost/free free: no mana, no runes
3 Has a value from a datapack that value, always (even if its category is switched off)
4 In #runelessrpg:cost/item_abilities item ability
5 In #runelessrpg:cost/weapon_skills weapon skill
6 In #runelessrpg:cost/class_skills class skill
7 In #runelessrpg:cost/spells spell
8 Its Spell Engine cost item is a rune (an item in #runes:runes, or a tag that contains runes) spell
9 Anything else not handled

A category that is switched off in the config (spellsEnabled = false and so on) is not handled: Spell Engine asks for runes again. To make a spell free, put it into #runelessrpg:cost/free instead.

The bundled tags list the class skills of Rogues & Warriors, Archers (and Archers Expansion), Bards RPG, Berserker RPG, Forcemaster RPG and the lne_* add-ons, the weapon skills of Spell Engine (rpg_series:*) and More RPG Library, and the item abilities of Relics and More Relics. All entries are optional; see Datapacks and tags.

Base cost

Every Spell Engine spell has a tier. The base cost is the value of the tier table times the multiplier of the category:

Tier Table (tierCosts) Spells (×1.0) Class skills (×0.75) Weapon skills (×0.5)
0 4 4 3 2
1 5 5 3.75 2.5
2 7 7 5.25 3.5
3 10 10 7.5 5
4 14 14 10.5 7
5 and higher 18 18 13.5 9

Higher tiers use the last value of the table, negative tiers the first. Item abilities are off by default (multiplier 1.0 when switched on). A datapack value replaces table and multiplier.

/runelessrpg report writes all spells with category, tier and base cost to a file; /runelessrpg cost <spell> shows the full calculation for one spell. See Commands.

Final cost

cost = base cost × max(floor, Mana Cost) × (1 + Overcharge)
  • Mana Cost (runelessrpg:mana_cost, 100 % by default) makes spells cheaper or more expensive. It has a lower limit, the floor minManaCostPercent (default 50 %): spells never cost less than half, however much Mana Cost reduction a player stacks. There is no upper limit.
  • Overcharge is added after the floor; it also raises damage and healing, see Overcharge and leech.
  • Other mods and scripts can change the result with the ManaCostEvent.

Example: Fireball (tier 0, base 4) with −30 % Mana Cost and +25 % Overcharge costs 4 × 0.7 × 1.25 = 3.5.

Costs are shown with up to two decimals ("5.25", "7.5", "4").

Not enough mana

What happens depends on manaMode in the server config:

Mode Cast allowed when
FULL_COST (default) the mana covers the whole cost
DEBT the mana is above 0; the rest of the cost goes below 0
DEBT_LIMIT after the cast the mana is not lower than −(maxDebtPercent % of this spell's cost), default 50 %

Borrowed Power allows debt down to −50 % of max mana in every mode; if the mode itself allows more, the more generous rule applies.

When a spell cannot be paid, it is not cast. Spell Engine shows its usual "missing item" message with Mana as the missing item, and the mana display flashes red (see Mana HUD). The check runs on the client and on the server, so nothing is cast and then taken back.

Channeled spells

Spell Engine charges channeled spells (Arcane Beam, Blizzard, Whirlwind …) once at the end. RunelessRPG has three modes (channelCostMode):

Mode Behavior
DRAIN (default) The cost is spread over the channel ticks: every tick costs total ÷ number of ticks. Stopping early is cheaper. A channel can start when the first tick (plus channelStartPercent) can be paid; when the mana runs out, the channel ends like releasing the key (with its cooldown) and the bar flashes
START The full cost is paid when the channel starts; no further checks for that cast
END Spell Engine's way: paid once when the channel ends; the full cost must be available
  • channelStartPercent (default 0): in DRAIN, this share of the total cost is paid right away when the channel starts.
  • The number of channel ticks comes from the spell. Cast speed (haste) makes the channel shorter, not cheaper: the number of ticks stays the same.
  • The tooltip shows the total and the cost per second in DRAIN: "Mana: 10 (2/s)".
  • Interrupting a channel (switching the item, starting another spell, dying, logging out) normally skips Spell Engine's cooldown. With cooldownOnChannelAbort = true (default) the spell gets the cooldown it would have had when released at that moment.

Runes, arrows and other cost items

  • Spells handled by RunelessRPG never consume runes, even if the player carries some. The rune line disappears from the tooltip.
  • Other cost items stay: bow skills that use arrows still consume their arrows and also cost mana.
  • Free spells (#runelessrpg:cost/free) cost neither mana nor runes.

Creative mode

With creativeFreeCasting = true (default) players in creative mode cast without paying and are never blocked. With false they pay like everyone else.

Spell Infinity

Spell Engine's enchantment spell_engine:spell_infinity only removes rune costs, which would do nothing here. RunelessRPG gives it a mana effect instead ([spell_infinity] in the server config):

mode Effect while the held item (main hand) has Spell Infinity
REDUCE_COST (default) Counts as costReductionPercent (20) % less Mana Cost and lowers the floor by floorReductionPercent (20) points: alone −20 %, with everything else at most −70 % (floor 30 %)
NONE No effect on mana costs

Its enchantment description is changed to "Reduces the mana cost of spells" by a small built-in resource pack. To remove the enchantment from a pack, empty the item tag #spell_engine:enchantable/spell_infinity.

Tooltip

Every spell that costs mana gets a line "Mana: N" in its tooltip (green when the player can pay it right now, red when not), with the cost that applies to this player. With Overcharge a second line follows ("Overcharge: +12.5% damage", "healing" or "damage and healing"), and Spell Engine's damage and healing estimate grows with it. Spell Engine shows these details while its "show details" key (Left Alt) is held.

Clone this wiki locally