David M. said: Could you create a workaround by: Only change the token side via token-mod api script, but simultaneously update a custom attribute via the ChatSetAttr script that you could reference directly from a macro/ability using standard @{CharName|AttributeName} or @{AttributeName} syntax? So your token changing macro would contain both !token-mod blah blah and !ChatSetAttr blah blah. The Aaron said: Some clarifying questions: Is the token ALWAYS associated with a Character? Will you need to have different behavior on different tokens for the same character based on the side of that token? Are you using all the bars on the token or could one be repurposed to hold the side index? Could your logic be encompassed in an API script instead of a macro? Funnily enough, this is pretty much the workaround I came up with, thanks. I made separate characters for each token, and used a combination of TokenMod and ChatSetAttr to control the token sides while setting an Attribute on a token bar to the value of the side. It was clunky and complicated, but it seems to work. This isn't the first time I've wanted to do this though, so a more general solution would be appreciated if it exists. Unfortunately, I haven't been able to wrap my head around API scripting. I've installed a bunch from the in-built library (including many from yourself Aaron, thank you SO much for that!) and I've done a lot of cool stuff with them, but that's as far as I've been able to get.