Let me start by saying, I know there are API Scripts I can use and I can also use a Rollable table, but my DM doesn't know how to use either of those and doesn't want to learn, so I am trying to figure out a way of using a macro. That being said, I know macros can't store variables, so I am thinking that I will use an attribute on the character sheet to store the die roll. Since EP (Electrum Pieces) attribute is never used, I want the macro to first roll a d20 and store the value (1-20) in the EP attribute. This I can do and have done. !setattr --name @{selected|character_name} --ep|[[1d20]] Then I would like the macro to pull in the value of the EP attribute and if the value was anything but "1" then the macro would reset the EP value back to "0" and exit the macro. But if the EP attribute value, is "1", then the macro would roll a d100 and replace the EP attribute value with the new value (1-100) !setattr --name @{selected|character_name} --ep|[[1d100]] Then I would like the macro to pull in the new value of the EP attribute and based on the value it would display to Wild Surge Result in the chat window: 01-02: Roll on this table at the start of each of your turns for the next minute, ignoring this result on subsequent rolls. 03-04: For the next minute, you can see any invisible creature if you have line of sight to it. 05-06: A modron chosen and controlled by the DM appears in an unoccupied space within 5 feet of you, then disappears 1 minute later. and so on. Then the macro would reset the EP attribute value back to "0" and exit the macro. I am pretty new to macros and can figure out basic stuff, but this one is beyond my ability. Thanks in advance for help you can offer.