Why running command /run C_Spell.PickupSpell work for some spells, like Chaos Bolt
/run C_Spell.PickupSpell(116858)
but it doesn’t for others?
eg:
348 = Immolate
29722 = Incinerate
/run C_Spell.PickupSpell(348)
/run C_Spell.PickupSpell(29722)
Couldn’t find any info out there regarding this
C_Spell.PickupSpell will only pick up spells that are assigned to your class/spec. combination ie. you can’t place a spell on your bars you cant use.
Yeah, I know. I’m running this in a lvl 80 destruction warlock, I have both skills.
Immolate and some others just doesn’t work, and no error messages are thrown
If that’s literally what you are using then that will cause an error because C_Spell.PickupSpell doesn’t return anything to equate to and if it did, you would have to use.
/run C_Spell.PickupSpell(348) == Immolate
That and doesn’t the Wither talent replace Immolate?
Sorry, didn’t mean that I’m using literary that, just added the Immolate so people can know what spell is
I’m just running
/run C_Spell.PickupSpell(348)
I think Wither overrides it, but I’m not using it, the Immolate is available in spell book and I can use it
Not sure yet what’s happening yet 
Use:
/run print(IsSpellKnown(348))
etc. to check if you actually do “know” the spell(s).
Technically Wither replaces Corruption
My talent tree tooltip must be out-of-date… 
I misspoke, it’s Corruption not Shadow Bolt
It’s one of those “Talent replaces a different spell depending on spec.” thingies. Immolate for Destruction or Corruption for Affliction.
Nah, it’s Corruption for both. Corruption just also becomes Immolate for Destro.
I’ve ran for both spells (incinerate and immolate, both available in spell book)
got false for both
Can’t include links/images here =/
If you add that ibb dot co before you can check the prints
pBZM2D5t
nqLRr34m
For Diabolist try
Immolate
/run C_SpellBook.PickupSpellBookItem(75, Enum.SpellBookSpellBank.Player)
Incinerate
/run C_SpellBook.PickupSpellBookItem(76, Enum.SpellBookSpellBank.Player)
1 Like
Wrap them in code tags (</>
button in the editor).
For Diabolist, Shadow Bolt becomes Incinerate and Infernal Bolt.
1 Like
At 80, with at least 1 TWW talent, Diabolist will have Incinerate and Immolate, Hellcaller will have Incinerate and Wither in their spellbooks (usable spells for picking up).
1 Like
Running both gave me skyriding skills,
but you gave me an idea to try later, will try to use the PickupSpellBookItem function instead of PickupSpell, just need to check how to correctly get the id from the spell name before
/run local spellids = {[348]=1,[116858]=1,[29722]=1} for i=1, 100 do local info=C_SpellBook.GetSpellBookItemInfo(i,Enum.SpellBookSpellBank.Player) if info and spellids[info.spellID] then print("Slot:", i,"ID:",info.spellID,info.name) end end
Inelegant but should give you the spellbook slots for spells. (change the 348 etc. for the speill ids you’re looking for). It probably can’t do too many more spells than 3 or 4 due to macro text length.
1 Like
When I pick up the spell manually from the spellbook, then
/dump GetCursorInfo()
I’m seeing the fourth return is 172. This picks up Immolate on my warlock:
/run C_Spell.PickupSpell(172)
What’s interesting is if I put it on action bar and GetActionInfo on the slot, it says the spellID is 348 like OP was trying. PickupSpell(348) does nothing for me either.
And Fizzlemizz’s macro says slot 85 is Immolate and 86 is Incinerate with spellIDs 348 and 29722 respectively.
Not sure what’s going on with those spellIDs, but try the fourth return of GetCursorInfo for the spellID to pickup onto the cursor.
1 Like
In this day and age you’d think there should be some straightforward mechanism for doing this type of thing but I haven’t found it
.