I think I see the problem. It looks like your regex was forcing a target. You also had matches[2] sent to tarotTarget and then used as the card. I was thinking you would have two aliases, one for targeting, and one to charge/fling. Here's your version tweaked slightly. ^tarot (\w+) ?(\w+)?$ if match...