How does the November 2018 PH errata change the usage of multiclass spell slots to cast spell?

The Player’s Handbook, pg. 114, once read:

The Wizard table shows how many spell slots you have to cast your spells of 1st level and higher.

With the November 2018 PH errata

In the first sentence, “your spells” is now “your wizard spells.”

Now it reads

The Wizard table shows how many spell slots you have to cast your wizard spells of 1st level and higher.

The errata also apply the same change to classes and archetypes with Spellcasting class feature.

A single classed wizard won’t notice the difference, but I wonder if this change means multiclassing means spell slots gained from multiclassing to cleric, for instance, cannot be used to cast wizard spells that is not in cleric spell list?

How does this errata change how multiclass spell slots work?

How do Spells Known and Spell Slots work?

I am struggling to understand how exactly a player learns new spells. Let’s take for example the Ranger class. At level one he doesn’t get any spell or cantrips. At level two he gets to learn 2 spells of which are slots level 1. At level three it says he knows 3 spells of which are slots level 1. Does that mean that at level 3 he knows 3 spells of level 1 or they are added to the spell pool of previous levels, so 2 + 3 = 5 spells known in total at level 3?

Can someone please explain this as thorough as possible and if needed bring examples from other spellcasting classes like the wizard and sorcerer as well.

Many many thanks and sorry I couldn’t find the answer I’m looking for even at chapter 10 and 11 of PhB.

What spells can be used to damage a Rakshasa before L7 slots are available?

I’ve been looking for the most effective ways to damage a Rakshasa as a spellcaster, before L7 slots become available. After reading the 3 questions below,

  1. Is a Rakshasa immune to Animate Objects?
  2. Can Maximilian's Earthen Grasp or Bigby's Hand target a Rakshasa?
  3. Does a Mundane Arrow Fired From a Magical Bow Count as a Magical Weapon Attack?

I’m wondering if the following spells will work:

  1. Magic Weapon: Per the last question, my reading is that a Wizard could cast this on a crossbow (or bow, if they have proficiency), and deal semi-decent damage (assuming they are good aligned, it would target the R’s vulnerability).
  2. Alter Self (Natural Weapons, Piercing): Similar idea, available to other classes, though would require going into melee (not so problematic due to damage, but due to Curse).
  3. Elemental Weapon: Similar idea, though I’m not sure if the bonus elemental damage applies.
  4. Shillelagh: Doesn’t target the R’s vulnerability, but a Druid could go this route if desperate for damage.

Are there other (better?) ways for casters to damage this sucker before L7 slots are available?

Note: I’m aware that buffing/assisting is another way to contribute to the fight–I’m interested specifically in offensive options available.

Would it be balanced to allow the darkvision spell to target multiple creatures when cast with higher-level spell slots?

The Darkvision spell, by default, can target only one creature and gains no benefit from upcasting (= using a spell slot higher than the spell’s level).

You touch a willing creature to grant it the ability to see in the dark. For the duration, that creature has darkvision out to a range of 60 feet.

Since my level 7 moon druid has two party members without darkvision, I asked my DM if he could allow me to cast darkvision at higher levels to target additional creatures; more precisely, one additional target for each spell slot level above 2nd (similar to spells like Charm Person or Hold Person).
For example, if cast at 3rd level, I can target two creatures, while casting it at 5th level would allow me to target 4 creatures, and so on.

Anyways, he did choose to allow it, and I’ve used it a number of times so far. However, since allowing this spell to be upcast is so intuitive – I was really surprised when I found out it wasn’t possible by RAW – I can’t help but wondering if there are any balancing issues to allowing the upcasting of the spell.

To be clear, I’m not asking why the designers didn’t allow upcasting the spell, though the answer to my question might easily overlap with the designers’ reasons.
What I want to know is whether or not any balancing issues exist that should prevent me / my DM (I also DM occasionally) from houseruling that it is possible to upcast the spell.

Observer(Event) system (Signals and Slots), type and template based

Signals are represented as types. You can connect a member function of some instance to the Observer system. This connected function will be called whenever a signal of a type that is the same type as the function parameter is emitted.


#include <vector>  class ObserverSystem {     public:      template<typename SignalType>     inline static void emitSignal(const SignalType& signal)     {         for(auto f : callEverything<SignalType>)         {             f(signal);         }     }      template<typename SignalType, typename ObjectType>     inline static void connect(ObjectType& object, void (ObjectType::*function)(const SignalType& signal))     {         bool add = true;         for(auto& entry : functions<SignalType, ObjectType>)         {             if(entry.function == function && entry.object == &object)             {                 add = false;                 break;             }         }         if(add)         {             functions<SignalType, ObjectType>.emplace_back(ObjectFunction<SignalType, ObjectType>{&object, function});         }          add = true;         for(auto& entry : callEverything<SignalType>)         {             if(entry == callAll<SignalType, ObjectType>)             {                 add = false;                 break;             }         }         if(add)         {             callEverything<SignalType>.emplace_back(callAll<SignalType, ObjectType>);         }     }      template<typename SignalType, typename ObjectType>     inline static void disconnect(ObjectType& object, void (ObjectType::*function)(const SignalType& signal))     {         for(size_t i = 0; i < functions<SignalType, ObjectType>.size();)         {             if(functions<SignalType, ObjectType>[i].function == function && functions<SignalType, ObjectType>[i].object == &object)             {                 functions<SignalType, ObjectType>.erase(functions<SignalType, ObjectType>.begin() + i);             }             else             {                 i++;             }         }     }      private:      template<typename SignalType, typename ObjectType>     struct ObjectFunction     {         ObjectType* object;         void (ObjectType::*function)(const SignalType& signal);          void call(const SignalType& signal)         {             (object->*function)(signal);         }     };      template<typename SignalType, typename ObjectType>     inline static std::vector<ObjectFunction<SignalType, ObjectType>> functions;      template<typename SignalType, typename ObjectType>     inline static void callAll(const SignalType& signal)     {         for(auto function : functions<SignalType, ObjectType>)         {   ;         }     }      template<typename SignalType>     inline static std::vector<void (*)(const SignalType& signal)> callEverything; }; 


#include <iostream>  #include "ObserverSystem.hpp"  struct SignalTypeOne {     int b; }; struct SignalTypeTwo {     int x;     int y; };  struct Hello {     int a = 123;     void f(const SignalTypeOne& signal)     {         std::cout << (int*)this << " : a: " << a << std::endl;         std::cout << "b: " << signal.b << std::endl;     } };  struct Some {     int vx = 0;     int vy = 0;     void f1(const SignalTypeTwo& signal)     {         vx += signal.x;         vy += signal.y;     }     void f2(const SignalTypeOne& signal)     {         std::cout << (int*)this << ": " << "vx = " << vx <<", vy = " << vy << std::endl;     } };  int main() {     Hello h;     Hello g = Hello{321};     Some v1;     Some v2;      ObserverSystem::connect(h, &Hello::f);     ObserverSystem::connect(g, &Hello::f);      ObserverSystem::connect(v1, &Some::f1);     ObserverSystem::connect(v2, &Some::f1);     ObserverSystem::connect(v1, &Some::f2);     ObserverSystem::connect(v2, &Some::f2);      ObserverSystem::emitSignal(SignalTypeTwo{1,1});     ObserverSystem::emitSignal(SignalTypeOne{444});      ObserverSystem::disconnect(h, &Hello::f);     ObserverSystem::disconnect(v1, &Some::f1);      ObserverSystem::emitSignal(SignalTypeTwo{1,2});     ObserverSystem::emitSignal(SignalTypeOne{555});      ObserverSystem::connect(h, &Hello::f);      ObserverSystem::emitSignal(SignalTypeTwo{2,1});     ObserverSystem::emitSignal(SignalTypeOne{666});      ObserverSystem::disconnect(h, &Hello::f);     ObserverSystem::disconnect(g, &Hello::f);     ObserverSystem::disconnect(v2, &Some::f1);     ObserverSystem::disconnect(v1, &Some::f2);     ObserverSystem::disconnect(v2, &Some::f2);      ObserverSystem::emitSignal(SignalTypeTwo{100,100});     ObserverSystem::emitSignal(SignalTypeOne{777});          return 0; } 

Exemplary output:

0x7ffe51692a18 : a: 123 b: 444 0x7ffe51692a10 : a: 321 b: 444 0x7ffe51692a08: vx = 1, vy = 1 0x7ffe51692a00: vx = 1, vy = 1 0x7ffe51692a10 : a: 321 b: 555 0x7ffe51692a08: vx = 1, vy = 1 0x7ffe51692a00: vx = 2, vy = 3 0x7ffe51692a10 : a: 321 b: 666 0x7ffe51692a18 : a: 123 b: 666 0x7ffe51692a08: vx = 1, vy = 1 0x7ffe51692a00: vx = 4, vy = 4 

A function should always get disconnected when it gets destroyed.

Excessively multiclassed character – how many spell slots?

One of my friends is willing to run a truly insane campaign where I get to play a “jack of all trades” character, called Jack Sedart of course, who is the following classes;

  • lv 1 Barbarian
  • lv 3 Bard (base class)
  • lv 1 Cleric
  • lv 1 Druid
  • lv 1 Fighter
  • lv 1 Monk
  • lv 1 Paladin
  • lv 1 Ranger
  • lv 1 Rogue
  • lv 1 Sorcerer
  • lv 1 Warlock
  • lv 1 Wizard

The PHB makes no mention of what to do with your Warlock levels when calculating multiclassing spell slots. Am I a level 8 spellcaster (everything but warlock) or a level 9 spellcaster (everything including warlock as a full level) or something else?

(For the curious: yes, I’ve got the 13s to be legal. I’m playing a human, I have 14/14/13/13/13/14. Trust me, this is not a power build. This is basically an un-power-build. Foolishness ahoy! But the campaign is built for this kind of foolishness to be fun.)

Ad slots & Links available on Alexa 88k – Adult Sex stories blog

– 88k (See –
Traffic: 100k+ visits/day. GA Verified.

Advertising slots & Prices:
728×90 Header banner – $ 100 / Month (1 Slot)
468×60 Top of the post banner – $ 50 / Month (1 Slot)
300×250 (Sidebar) – $ 50 / month(2 Slots)
Sidebar links (Our Sponsors section) – $ 200 / link / year.
Blogpost with 1 link – $ 100 / post (Lifetime link…

Ad slots & Links available on Alexa 88k – Adult Sex stories blog