Try this one out: <a href="https://gist.github.com/Bastlifa/50439188f09fff6a8" rel="nofollow">https://gist.github.com/Bastlifa/50439188f09fff6a8</a>... Made it quick, little testing done. Also, pretty sure the tokens shake happens and then the path shake happens, so kinda pointless to shake the path. Read the comment at the top of the script for how to use it. Edit: as you can probably tell from my inconsistently careful for loop variable names, I have no idea how javascript scope works. I know var and let are different, and I think let is more local, and var is scoped to the closest.. function? Maybe not, since it seems to work here. I should probably read about it at some point. edit 2: just updated, it was only pushing down and left, 0-70 pixels. Now goes omni-directional 35 pixels. Easy to adjust in script for larger shakes, but this seems drastic enough. edit 3: forgot to add macro body to comment at top of script. Added now. Currently working on function to add variable time to shake, and maybe magnitude. Will update again shortly. edit 4: new macro allows for time input, or no time input. edit 5: Ok, on further testing, in tight quarters, the path adjustment just makes it look awful. I commented it out in my game, and suggest you do the same (all the path stuff). Also, while the macro is correct on the gist, once you save it in your api scripts (and reload the page), it will replace that code with a question mark, which will make the macro not work. Copy the macro from the gist directly, and paste it into your macro body, and it should work. However, if you ever open the macro to check it out again, and then save it, it will fail. I guess it's replacing the code with the question mark, and that's an issue.