I meant the following:
- NPC casts Spell X of slot level Y
- PC casts Counterspell using a slot of level Z (min 3)
- if Z >= Y then Counterspell succeeds automatically
- if Z<Y then Counterspell needs a check
I see there are many ways to handle the situation. Multiple questions at hand:
Do you let the PC know which spell is X?
Do you let the PC know which slot is Y?
And for either question, do you let the PC know automatically or require a knowledge check?
Normally I would let the PC know the spell, unless it's one of those times when I want to be mysterious about a never-seen-before or unique spell.
Right now, I feel like I wouldn't mind to also tell the player what is the slot Y, so that she might choose a higher slot Z to improve her counterspelling chances. (When the spell is unknown, I'll just let her cast a Counterspell blindly, slot unknown too).
It's not a big deal to me to make counterspell this effective. It actually sounds quite fair, you are spending a slot to 'burn' an identical slot of your opponent. But I wouldn't mind if another DM wants to make this whole process more difficult to pull through, or more random by adding some knowledge checks.
Except that doing x to counter opponent's y is usually not guaranteed.
For example, PC 1 using the Help action to give PC 2 Advantage uses up an action, but unless the difference between PC 1's DPR and PC 2's DPR is great, the overall effect is typically less. If both PC 1 and 2 have a 60% chance to hit and PC 1 has DPR 8 and PC 2 has DPR 10, then PC 1 helping PC 2 means that PC 1's DPR goes to zero and PC 2's DPR goes to 14. On average, it was better to not use Help, but there are situations where it might work out better.
Now, I do understand this philosophy of letting the player know with certain either / or spells. For example, Shield. In reality, Shield could be played where the player does not know the total of the attacker's dice and Shield may or may not be helpful. But in the case of Counterspell, there is always the chance of the Counterspell being helpful, it's just a random chance. Unlike Shield, the player gets to roll to see if it works.
The real issue I have with making Counterspell extremely effective is that the NPCs (especially monsters) often have a single copy of a given spell. So if the player gets all of this information about what spell is being cast, then one player can more or less neutralize a significant portion of an entire encounter. Counterspell can be just that powerful.
As an example, a PC casts a spell at a flying dragon that prevents it from flying (e.g. Command spell Grovel). So, the Dragon casts Feather Fall as a reaction. Once the player who is contemplating casting Counterspell knows that the Dragon is casting Feather Fall, he knows a) that his Counterspell is 100% effective, and b) the Dragon is using a reaction to cast Feather Fall, hence, the Dragon cannot counter his counter. By knowing that the Dragon is casting Feather Fall, the player also knows (approximately) how much damage the Dragon will take from falling.