Turn it into a learning experience and write your own. Here is a quick and dirty Autohotkey script that I wrote and use, it serves me pretty well. You can use this if you replace the buttons and the x,y coordinates in AHK (you might also have to fiddle with the delay if your computer is laggy). I was working on a GUI that would set the script up for you and store the value in an external file, but I got busy with other projects and it didn't seem like people would want it too much, so you'll have to alter it for your computer. I added a few relevant comments to the code.
#NoEnv ; Recommended for performance and compatibility with future AutoHotkey releases.
SendMode Event ; Recommended for new scripts due to its superior speed and reliability.
SetWorkingDir %A_ScriptDir% ; Ensures a consistent starting directory.
SetMouseDelay, 0 ;Author - pure_cheater
SpecX = 1581 ;Special bar
SpecY = 909
DdsX = 1517 ;Weapon to swap to
DdsY = 707
InvX = 1345 ;Inventory icon
InvY = 979
WepX = 1224 ;Weapon icon
WepY = 977
BookX = 1433 ;Spellbook icon
BookY = 978
BarrageX = 1576 ;Ice barrage icon (script is set for veng now)
BarrageY = 869
VengX = 1600 ;Vengeance icon
VengY = 834
Delay = 50 ;A delay is added for stability
OpenInventoryOnClick = false
XButton2:: ;If you have the two side mouse buttons, this is the one further from you. This part of the code clicks the spec button and goes back to your inventory.
BlockInput On
MouseGetPos, MouseX, MouseY
Click, %InvX%, %InvY%
Sleep %Delay%
Click, %WepX%, %WepY%
Sleep %Delay%
Click, %SpecX%, %SpecY%
Sleep %Delay%
Click, %InvX%, %InvY%
Sleep %Delay%
MouseMove, MouseX, MouseY
BlockInput Off
return
XButton1:: ;If you have the two side mouse buttons, this is the one closer to you. This part of the code swaps your weapons.
BlockInput On
MouseGetPos, MouseX, MouseY
Click, %WepX%, %WepY%
Sleep %Delay%
Click, %InvX%, %InvY%
Sleep %Delay%
Click, %DdsX%, %DdsY%
Sleep %Delay%
MouseMove, MouseX, MouseY
BlockInput Off
return
MButton:: ;This triggers when you click down on the scroll wheel. This part of the code casts vengeance and goes back to your inventory.
BlockInput On
MouseGetPos, MouseX, MouseY
Click, %BookX%, %BookY%
Sleep %Delay%
Click, %VengX%, %VengY%
Sleep %Delay%
Click, %InvX%, %InvY%
Sleep %Delay%
MouseMove, MouseX, MouseY
BlockInput Off
return