timmaugh said: You can handle that with a custom API, for sure, but you can also set it up with metascripts. Plugger has a plugin to let you detect dice values in a given roll (you'd be looking for a 1). Plugger also lets you launch a second command line while in the first (so your attack roll would launch a call to this Dark Gifts process) APILogic would let you choose to run a given command line if the dice value matched Muler could let you have your Dark Gifts table set up to get the text you want to send to the chat interface ZeroFrame would let you recursively condense inline rolls or other Muler calls until you have your final output Last, I would use something like DiscreteWhisper to send the output message. I might be able to demonstrate a quick/dirty example, but first a question: are you looking to get a prompt of the text of the Gift (like the Ominous Will entry, above), or are you looking specifically to have the d4 rolled when the affected action is taken? Also, you would roll the d4 immediately upon rolling the 1? ... you wouldn't wait until the next character that satisfied the requirements took an action, so that they wouldn't know whether they were getting help or hindrance? In the example for Ominous Will, it would have to fulfill the secondary requirements first, but therein lies another compounding issue - each one has different criteria. If the dice roll of 1 then added an inline macro that allowed the player to activate it once the secondary requirements were fulfilled, at least then it plays like a reminder. I guess a similar example would be Orcish Fury or Psi Strike, or even Paladin Smites, where you choose to roll additional damage, therefore also impacted by crits The more I think about it, the more I see variables that are situational.