Page 1 of 1

Spell modifiers - as at January 2021

Posted: Sun Jan 17, 2021 7:42 am
by Lordlava
Mollymauk,

For your interest (as subject to change in the future), these are the current spell modifiers in use:

int spell_mod(int power,int cn)
{
double mod;
int kindred, bonus;

kindred = ch[cn].kindred;

if (kindred&KIN_ARCHHARAKIM) mod=1.05;
else if (kindred&KIN_ARCHTEMPLAR) mod=1.025; // Changed from 0.95 to 1.025 Lordlava May 2016
else if (kindred&KIN_SORCERER) mod=1.10;
else if (kindred&KIN_WARRIOR) mod=1.10;
else if (kindred&KIN_SEYAN_DU) mod=0.95;
else if (kindred&KIN_HARAKIM) mod=1.00;
else if (kindred&KIN_MERCENARY) mod=1.05;
else if (kindred&KIN_TEMPLAR) mod=0.90;
else if (kindred&KIN_NINJA) mod=1.00; // Lordlava Sept 2009 Changed from 0.95 to 1.00
else if (kindred&KIN_NECROMANCER) mod=0.95; // Lordlava May 2012
else mod=1.00;

if (ch[cn].flags&CF_PLAYER) bonus=0;
else bonus = ch[cn].data[107]; // Added NPC spell bonus Lordlava Dec 2015
mod += bonus/100.00;

if (ch[cn].data[135]) mod+=0.05; // Warlord rebirth bonus Lordlava July 2016

mod+=ch[cn].spellpowermod/100.0; // Spell power modifier from items worn Lordlava Dec 2019 Changed 100 to 100.0 to force floating maths

if (globs->newmoon) mod+=0.15;
if (globs->fullmoon) mod+=0.15;

if (mod < 0) mod=0; // Mod should not go negative Lordlava Dec 2019

return (int)(power*mod);
}

Posted: Wed Nov 13, 2024 10:20 pm
by tzebra
True mystery that warrior have 1.10 😅