Magic system?

So, I was looking for a new magic system that I can use in the PW I am working on. So I have been wondering if there is a different magic systm out there that has additional requirements out there in order to cast magic?

Basically I want to balance the magic a little so that players using magic have certain requirements to meet and that magic is no longer “easy”. If anyone know of any then please let me know! <3

Have a look on Almraiven. Here one need an item to cast a spell.

I use a modified version of Trickster’s PHB Material Components. It uses the UseMagicDevice script to check if a spell is cast with certain items in inventory and fails them if the items are not present. It also includes the needed material component blueprints and an edited store with all of the items available.

1 Like

If you are looking to have the spellcaster just have a particular item, like a spellbook or some other focus, the UMD script “x2_pc_umdcheck” is the place to do it. There will be a check in the script to see if an item was used (using a magic device). If so, the script does the primary purpose of running if the pc can use that device or not. However, this also basically checks if the oPC cast the spell themselves - so then you can modify the spellcasting process from this section. I use it to see if the Cleric has their Holy Item. If not, then they can’t cast a spell (note - the below is cut out from my full script, so I doubt the parentheses line up…)

    object oItem = GetSpellCastItem();
    object oCaster = OBJECT_SELF;
    int nSpellID = GetSpellId();

    // Spell not cast from an item
    if  (!GetIsObjectValid(oItem))
    {
//do whatever check you want in here.
     //is a Pc
      if(GetIsPC(oCaster))
      {
       // is a DM? Spell work
       if(GetIsDM(oCaster))
        {
         return TRUE;
        }
      //Want to add a check for the HolySymbol for Clerics and Paladins here - Mannast 1/21/14
        if(GetLastSpellCastClass()==CLASS_TYPE_CLERIC||GetLastSpellCastClass()==CLASS_TYPE_PALADIN)
          {
            object oHS = GetItemPossessedBy(oCaster, "HolySymbol");
            if(oHS==OBJECT_INVALID)
                {
                if(GetLocalInt(GetModule(), "Deity_Required")!=1) return TRUE;//Switch to turn Deity System
                SendMessageToPC(oCaster, "You can not cast that spell without a true Holy Symbol.  Your spell fails!");
                return FALSE;
                }
            //Spell not cast by an item, return TRUE
            else return TRUE;
          }
      }
    }
1 Like

I would nominate Meaglyn’s system here: https://neverwintervault.org/project/nwn1/script/meaglyns-spell-components