Roll20 uses cookies to improve your experience on our site. Cookies enable you to enjoy certain features, social sharing functionality, and tailor message and display ads to your interests on our site and others. They also help us understand how our site is being used. By continuing to use our site, you consent to our use of cookies. Update your cookie preferences .
×
Create a free account

GM prompts in a macro

1418571788
Tom
Pro
Sheet Author
Is it possible to build a prompt in a macro that is directed at the GM? Specifically, one that prompts for the difficulty (target number, DC, etc) of a task? I know it's a small thing just to tell the player, but I thought it might be cool to keep that a surprise element in play. So, for example, instead of prompting the player for ? { Difficulty | 0 }, the prompt would go to the GM. Alternatively, has anyone worked out a cool workaround that does the same thing? Could you do it with the API?
1418572345
Lithl
Pro
Sheet Author
API Scripter
No, there is no means to use prompts like that. Something might be doable with the API, but it would likely end up awkward. =/
1418573212
Tom
Pro
Sheet Author
Maybe so, and probably superfluous anyway. Still, it's something that's been I the back of my brain for awhile now. I just haven't had timeto dig or experiment with it. I figure something like this would be very handy for games that have floating target numbers, like older editions of shadowrun or WoD. Thanks Brian.
This may not be the same thing, but I've got a couple of macros which whisper target numbers to the GM, and then I can see their roll and compare it to the target number. For example, we have a Finances check in our game (instead of tracking money), the macro asks the player for the item name and cost, then the macro generates a target number based on cost of the item as a percentage of that character's monthly income, modified by previous purchases (represented by a bar on the token), then whispers the target number to the GM. I then compare this to the player's check, and say, "You bought it," or "Looks like you've got a little cash flow problem at the moment." The player doesn't know what the exact target number was, because they never see it. Would something like that be a workaround?
1418648575
Tom
Pro
Sheet Author
Gozer, Yeah, not really what I'm looking for. For a lot of games, in combat, you'll build a macro to get a reading like this: "Roll X successes vs [target AC], with AC being an attribute that can be called against. It might be nice to have something like that for all tasks, if only to have a nice paper trail in the chat window. What was the difficulty of that climb roll again? It's certainly not something necessary. But I've often wondered if there is a way to do it.
1418677913
vÍnce
Pro
Sheet Author
This is a gripe of mine as well. I get around the limitations of /w gm by using Honey Badger's powercards. There's a trick I found that you can call a second powercard from within the same macro so that the second card uses the --whisper| tag. So basically you can have an attack with damage or whatever seen by all, and then a second card is also displayed only to the gm with info about the target. Not even the player using the macro sees this info. Attack Macro using a powercard that whispers target info to GM without the player seeing it. !power --name|@{character_name}'s Weapon Attack --leftsub|"" --rightsub|"" --Weapon|"" --Attack|"" --Damage|"" --Notes|"" !power --whisper| --name|Target: @{target|who?|token_name} --leftsub|AC: [[@{target|who?|bar1}]] --rightsub|HP: [[@{target|who?|bar3}]]/[[@{target|who?|bar3|max}]] There is a carriage return (/n) after the end of the first powercard. The second powercard will only show the "header" which includes --name|, --leftsub|, and --rightsub|. Nothing else will display, but the header will expand to include whatever you put in it.
1418748205
The Aaron
Roll20 Production Team
API Scripter
Probably the closest you could get to a prompt and automation via the API would be to have the player call an api script with their roll, something like: !roll-vs-dc --Stealth|[[1d20+7]] And have that trigger a whisper to the DM requesting a DC, which the GM would respond to with !dc 15 or some such, and then the script would chat to the player or chat log regarding success or failure. There would be some issues: The GM would need to notice the request for a DC If there are multiple DC requests, there would need to be a mechanism to respond to specific ones (though it might be easier to just queue them and respond in order) It could be automated well with a macro (particularly if you're using the queueing model): !dc ?{Target DC?} !dc could even take multiple numbers, applying them to each of the rolls in order (if 3 rolls were waiting, you could respond with !dc 15 17 23 ) You could also queue up a DC before a roll, then the next roll is applied to it. (or maybe it makes sense to queue it up by player, the next time Bob rolls vs DC, it's going to be a 17) That would facilitate calling for a roll from a player. Another though might be you have a standing DC that all rolls are against and you can just change or remove it as you desire. Anyway, that's my thoughts on the API side of things.
1418755247
Lithl
Pro
Sheet Author
API Scripter
The Aaron said: There would be some issues: The GM would need to notice the request for a DC If there are multiple DC requests, there would need to be a mechanism to respond to specific ones (though it might be easier to just queue them and respond in order) This is the core of my "it would likely end up awkward" comment. I believe there's a suggestion going to enable creation of hyperlinks via sendChat which could be clicked to execute API commands. If that were implemented, you could do something like store the roll in state along with an identifier of some kind (autoincrementing integer, sha1 hash, username+timestamp, whatever), and the linked API command could use that to solve your #2. Alas, that option is not (yet!) available to us.
1418760412
The Aaron
Roll20 Production Team
API Scripter
That is a pretty brilliant suggestion. Whomever made that should edit the description to expose this as an example... =D I wanted to spell out an API solution to be fully illustrative. I don't actually think it would be that ackward, though not as nice as that enterprising suggestion. =D