timmaugh said: ZeroFrame is available in the 1-click. If you've never added a script to your game, it's pretty straightforward. Nick O has a good video on how to do that. Once ZF is installed, you can copy the above text into a new Ability or Macro and run it, and you should get the output you want. If you haven't used a script before, just understand that statements you want to be picked up by the API (where scripts live) must begin with an exclamation point. Those messages are not seen in the chat interface by default. Instead, what makes it to the chat panel is what the script outputs. Most of the time, a message would be calling a specific script (Token-Mod, ChatSetAttr, Spawn, etc.), but in the case of metascripts, they intercept the message first and make changes to the command line. For instance, Fetch is another metascript that gets character or token information; if you want the new tooltip of a token, you can't get that with the standard Roll20 structure: @{selected|tooltip}. But you can get it with the Fetch construction: @(selected.tooltip). ZeroFrame provides a few syntax structures we're using: [\][\] ... \]\] ...that represents a deferred roll. We want an inline roll, but we have to wait until something else finishes computing, first. .value ...when attached to an inline roll marker (like $[[0]] ), extracts the value of that roll in place. {&simple} ...instead of letting this message continue as an API message (to be maybe picked up by another script), ZeroFrame outputs the final result after it has processed all of its constructions and it detects no more work to be done. In our case, this means outputting a templated message. Sweet! it worked, However when I tested it the script is using the Shiny value for the Rare value (I.e rolling d4096 twice) any way to fix that?