Hello,
If when you write "Shadow Bolt" your character launching "Malefic Grasp" then is necessary to use "Shadow Bolt".
This is in wow code, I ignore why (Wow use base spell name).
You can use this macro to get base spell name:
/run for i=1,200000 do local f=FindSpellBookSlotBySpellID(i,"spell") if f then local n,id=GetSpellBookItemName(f,"spell"),select(2,GetSpellBookItemInfo(f,"spell")) local s=GetSpellInfo(id) s=n==s and " " or "\124cFF4FF763"..s print(id,n,s) end end