I really don't know what's wrong :/ cause the spell is completely independent on casting/animation time since it procs on "unit starts the effect of an ability" event
what exactly happens when you cast it?
keep in mind it's in vJass so you'll need Jasshelper to compile it (from NewGen)
you could try posting ur map and I'll see what's wrong
Of course you can implement it
I am just not completely sure everything works properly :S
If you implement it, do you think you could do an extensive test of it for me, please ?
That'd be REALLY helpful !
And for the implementation, you should just need to create a new trigger, convert it to custom text, and copy in the code there.
Then, there is quite a few constants which you might want to take a look at, so you know it works like you want it to
There is especially one constant you might wanna change, and that is the one called something like "HAVE_HEROES_ON_INIT"
If this one is true, the system will select one hero from each player, which will act like their swap hero, but if it's false, yourself need to (Sometime during the game, and before anyone has swapped) set "SwapData[<Insert player-id of each player here>].swapHero" to the unit each player should use to swap with
Hope you understood this, if not then just send me a PM or something