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

Creating a spellbook or Action list macro

So I want to create a macro that I can attach to my token.  I want work as follows: Click spellbook > have it list all my spells by level.  Each spell list is a macro.  The spell macro is basically a cut and paste of the results from taking the action from the attacks and spellcasting section of the character sheet.  The language from that section works well.  I just want to stream line the process.  I want an action list macro for melee and ranged attacks to work the same way. I am unsure how to make a parent macro that calls child macros.
1641309132

Edited 1641310523
keithcurtis
Forum Champion
Marketplace Creator
API Scripter
Since you have a Pro account, try the Token Action Maker script. It creates a spell list like you describe. It also makes token action buttons for all attacks and actions. There are customization options to decide what gets created. If you want or need to go specifically with a  Chat Menu  interface for everything, try Jarren's set of macros, here .
1641309264
Kraynic
Pro
Sheet Author
The easiest way to do this would be to use an api script.&nbsp; Since you have a pro account, that shouldn't be a problem.&nbsp; Since you didn't specify a game system/sheet you are using, I will only list ones that I know of that are configurable for whichever sheet you are using. I use Universal Chat Menus.&nbsp; It is only available from a post on the forums.&nbsp; The first post is some examples and instructions, second post is the code to copy/paste into the new script box on your api settings page, and you can find examples of what people have done with it throughout the rest of the thread. <a href="https://app.roll20.net/forum/post/7474530/script-call-for-testers-universal-chat-menus/?pagenum=1" rel="nofollow">https://app.roll20.net/forum/post/7474530/script-call-for-testers-universal-chat-menus/?pagenum=1</a> Then there is Menu Maker which is also only available by copy/pasting code.&nbsp; I haven't used it, but it should be able to do similar things and can be found (along with instructions and examples) in this thread: <a href="https://app.roll20.net/forum/post/7478947/slug%7D" rel="nofollow">https://app.roll20.net/forum/post/7478947/slug%7D</a>
Thank you both for your replies, unfortunately i am not DMing and the DM does not use any form of automation.&nbsp; So I have to go about this in a different way.&nbsp; Jarren's link does not appear to work in your post. This is for D&amp;D5e&nbsp;
1641310569
keithcurtis
Forum Champion
Marketplace Creator
API Scripter
My bad. Fixed the link in the post above, but here it is for convenience.
This is the last time I try and respond to this.&nbsp; There maybe 3x replies Keithcurtis, that fixed the link. How do I find a list of PC fields to replace the NPC fields referenced in his macros.&nbsp; ie what would I replace _NPCActions with?
Just an fyi that I’m working on a huge update to that whole post, which will work for both NPCs and PCs. But if you’re looking for the 5E attribute list you can find it&nbsp; here .
1641317691
timmaugh
Pro
API Scripter
If scripts are not available, then Keith's suggestion is the way to go, for sure. For times when scripts are available (or for others who might land on this thread) I'll continue to throw InsertArg into the conversation as a dynamic menu builder. It has a learning curve, for sure, but it is powerful.
Jarren said: Just an fyi that I’m working on a huge update to that whole post, which will work for both NPCs and PCs. But if you’re looking for the 5E attribute list you can find it&nbsp; here . oooo that sounds like what I am looking for.&nbsp; any ETA?&nbsp; no pressure but we play this sunday
rcbricker said: Jarren said: Just an fyi that I’m working on a huge update to that whole post, which will work for both NPCs and PCs. But if you’re looking for the 5E attribute list you can find it&nbsp; here . oooo that sounds like what I am looking for.&nbsp; any ETA?&nbsp; no pressure but we play this sunday Definitely won’t be before Sunday. :) I’ve been working on it (when I have time) for a few months now. Every time I get one piece figured out I find another optimization to implement or bug to squash. &nbsp;
rcbricker said: So I want to create a macro that I can attach to my token.&nbsp; I want work as follows: Click spellbook &gt; have it list all my spells by level.&nbsp; Each spell list is a macro.&nbsp; The spell macro is basically a cut and paste of the results from taking the action from the attacks and spellcasting section of the character sheet.&nbsp; The language from that section works well.&nbsp; I just want to stream line the process.&nbsp; I want an action list macro for melee and ranged attacks to work the same way. I am unsure how to make a parent macro that calls child macros. I have been where you are, and I get it, I really do, I wanted something like that too.&nbsp; Heres the rub and why I gave up on it *mostly*.&nbsp; What you really want fundamentally, is a character sheet so use the one you have.&nbsp; You want a macro?&nbsp; As someone who hosts for 8 player tables, why on earth would you want to offload your character sheet to a chat macro that nests a bunch of variables and buttons in the chat window thats constantly jumping around from people typing things into it.&nbsp; Ok, so make it a drop down....went that route too and I made it.&nbsp; It works, but it is WORK.&nbsp; Some people above have recommended token action maker, that script works great for making buttons for npc's, worked horribly for players characters in my experience and it still makes the fatal mistake of trying to offload the whole point of the character sheet into the chat output area where it gets jumbled around and drowned out in spam.&nbsp; Unless your players are experienced roll20 sheet and script users, Token action maker is going to break every time Jonny "reckless attack everything" Berserker decides to jumble any repeating row around in any way shape or form then you as the DM has to go in and delete a bunch of stuff and readd it with the script, and that happens ALOT as your table grows even worse if your players change week to week.&nbsp;&nbsp; I did say I did it and I made it.&nbsp; The macro I made is literally too long to post here.&nbsp; I also didn't make it for players, I made it for common npcs I like to try and insert into my games as difficult monsters reskinned as an orc, or a humanoid of some kind in every encounter.&nbsp; Example:&nbsp; I really like all those caster npcs out there but they are so poorly built so I went and made a generic wizard, sorcerer, bard, and cleric and just reset the represents as on a few npcs from time to time to these other sheets I have with those massive macros of actions, bonus actions, reactions, and free actions button drop downs.&nbsp; I'll share like a small free actions macro or something but be warned, this takes TIME to build and building it for a player is going to look awesome but then you are going to be a slave to that player whenever they decide they want to add something new or they level up and new stuff needs to be added.&nbsp; Actually I was going to share reaction macro but it has xge content in it and I'm sure I'll get yelled at for sharing it so instead I'll find a macro of martial crap... ?{What Reaction?||Rapier, &amp;{template:atkdmg&amp;#125; {{mod=[[@{selected|pb}[PB]+@{selected|dexterity_mod}[DEX]]]&amp;#125;&amp;#125; {{rname=Rapier&amp;#125;&amp;#125; {{r1=[[1d20cs&gt;20+@{selected|pb}[PB]+@{selected|dexterity_mod}[DEX]]]&amp;#125;&amp;#125; {{always=1&amp;#125;&amp;#125; {{r2=[[1d20cs&gt;20+@{selected|pb}[PB]+@{selected|dexterity_mod}[DEX]]]&amp;#125;&amp;#125; {{attack=1&amp;#125;&amp;#125; {{range=5ft.&amp;#125;&amp;#125; {{damage=1&amp;#125;&amp;#125; {{dmg1flag=1&amp;#125;&amp;#125; {{dmg1=[[1d8+@{selected|dexterity_mod}[DEX]]]&amp;#125;&amp;#125; {{dmg1type=Piercing&amp;#125;&amp;#125; 0 {{dmg2=&amp;#125;&amp;#125; {{dmg2type=&amp;#125;&amp;#125; {{crit1=[[1d8[CRIT]+1d8[PiercerFeat]]]&amp;#125;&amp;#125; {{crit2=&amp;#125;&amp;#125; 0 {{desc=Can reroll 1 attack damage dice.&amp;#125;&amp;#125; {{spelllevel=&amp;#125;&amp;#125; {{innate=&amp;#125;&amp;#125; {{globalattack=&amp;#125;&amp;#125; {{globaldamage=[[5d6[Sneak Attack]]]&amp;#125;&amp;#125; {{globaldamagecrit=[[5d6[Sneak Attack]]]&amp;#125;&amp;#125; {{globaldamagetype=&amp;#125;&amp;#125; ammo= {{charname=&amp;#125;&amp;#125;|Uncanny Dodge, &amp;{template:traits&amp;#125; {{name=Uncanny Dodge&amp;#125;&amp;#125; {{source=Class: Rogue 5&amp;#125;&amp;#125; {{description=Starting at 5th level&amp;#44; when an attacker that you can see hits you with an attack&amp;#44; you can use your reaction to halve the attack's damage against you.&amp;#125;&amp;#125;} I have a wizard, bard, sorcerer, and cleric who all have action economy macros built out for their situations as well and the actions on these bots are so massive but the one shining benefit is that alot of stuff gets reused so if you build your macros out in notepad, it starts to become a series of copies and pastes.&nbsp; I have even given the bot macros to some players as I gave my battlemaster one to one of my players playing a battlemaster and I gave the barbarian the barbarian one minus the wild magic parts as he was a berserker and the bot was wild.&nbsp;&nbsp; Ultimately nothing will work well other than *the actual character sheet* because the novice player is going to edit their sheets repeating rows breaking anything you do with the sheet that doesn't completely rewrite the sheet itself like my key above.&nbsp; If you try to call the rows, you'll be constantly gritting your teeth editing their sheets.&nbsp; The entire spell page is exactly this.&nbsp;&nbsp;
1641347673
keithcurtis
Forum Champion
Marketplace Creator
API Scripter
DM Eddie said: Some people above have recommended token action maker, that script works great for making buttons for npc's, worked horribly for players characters in my experience and it still makes the fatal mistake of trying to offload the whole point of the character sheet into the chat output area where it gets jumbled around and drowned out in spam Can you list the issues with TAM on PCs? There are a couple that I know of, due to how the sheet handles complex rolls involving Jack of Trades and Reliable Talent. You can also limit the button to only the class of buttons you really need. The only thing that gets sent to chat is the spell list. As the developer of TAM, I'm always interested in making it better.
1641386588

Edited 1641386693
keithcurtis said: DM Eddie said: Some people above have recommended token action maker, that script works great for making buttons for npc's, worked horribly for players characters in my experience and it still makes the fatal mistake of trying to offload the whole point of the character sheet into the chat output area where it gets jumbled around and drowned out in spam Can you list the issues with TAM on PCs? There are a couple that I know of, due to how the sheet handles complex rolls involving Jack of Trades and Reliable Talent. You can also limit the button to only the class of buttons you really need. The only thing that gets sent to chat is the spell list. As the developer of TAM, I'm always interested in making it better. Players change any repeating row and you have to redo the whole process, unless you have direct understanding between DM and all players, the whole process of using TAM with them is ruined when they move a row or make a new action and then drag it around in their sheet.&nbsp; Also there is a bug currently in roll20 where all of the actions in the OGL sheet duplicate and they have to go in and delete very specifically the first row of duplicate actions or else the spell page breaks.&nbsp; Bottom line, its great in *practice* for the DM and their npc sheets, but breaks too often with players who utilize their sheet and edit it over time as they get new things and just becomes tedious work for very little pay off.&nbsp; Like alot of scripts here, they look great, but add too much prep and DM time to the process to justify it over simpler more direct action with our own brains processing things instead.&nbsp; The whole concept really is about reducing the amount of things a DM has to have open.&nbsp; A player just needs to have their own sheet open, not so much of a need there and a character sheet does it all perfectly why reinvent the wheel.&nbsp;&nbsp;
1641402352
keithcurtis
Forum Champion
Marketplace Creator
API Scripter
Changing the order or name of a repeating row should have no effect and I cannot reproduce this. Actions by the script are built with IDs, not names or row numbers, specifically to avoid this issue. Here is an example: %{-Lgs9vh9ffx_sQvUJ-Kv|repeating_attack_-LgsMUu48m4OSieJeHou_attack} By avoiding ordinal references, the order and name are unimportant. In the case of spells, if you delete or re-add spells, then yes, you will need to regenerate the list. For characters like clerics, who can frequently rebuild their spell list, it's a good idea to get in the habit of running !ta spells after a new spell setup. Changing the name or the order should make no difference, and I cannot reproduce.&nbsp; Similarly, if you make a new ability, the buttons will obviously have to be regenerated. They are designed to run without the interaction of the API. Once built, such characters can be exported to any game with working buttons. You can completely rebuild your entire repertoire of buttons with a very simple command: !deleteta !ta pc If your play style finds this onerous, that's cool. Folks like different levels of automation. I don't like certain scripts that feel too much like a video game to me, for example, "It's a Trap". But if a user was asking for the capabilities that "It's a Trap" offers, I wouldn't hesitate to recommend it to them. This post is not intended to be combative. I just liked TAM so much that I took over development and have spent many, many hours giving it more capabilities and customization. It has received a good deal of praise and is now used in official Roll20 modules as an added value. I'd hate for anyone to be dissuaded from even trying it and judging for themselves.
1641402529

Edited 1641403771
keithcurtis
Forum Champion
Marketplace Creator
API Scripter
DM Eddie, Do you have any suggestions on how it could be improved? Based on your feedback, I can see that a command that combines the commands to regenerate the buttons would be handy. Such as !ta regenerate , or somesuch. It could read whatever your last setup commands were, with options, (which would likely need to be stored on the sheet) and re-issue them.
I consider TAM as amazing and useful in the same way as MonsterHitDice.&nbsp; Its an amazing tool for the DM and what I'm trying to tell you, and others, and the OP, is that it does NOT pay for itself when given to the player.&nbsp; More importantly I'm trying to point out that the whole point of the character sheet is to do what the OP wants but not clog chat.&nbsp; You don't want to offload things to chat like a nested chat output for live play, that area gets spammed and you wind up waiting for people to stop typing to be able to use your chat nesting macros.&nbsp; Reserve that system for preptime macros or things you don't need to use as often.&nbsp; Not something that you are going to be spamming constantly like accessing a tiny version of a character sheet.&nbsp; Example:&nbsp; I install groupcheck constantly in all my sessions, its default behavior is a giant nested chat output macro with a bajillion buttons.&nbsp; The very first thing I changed was turning THAT into a drop down query instead for live play and gave the button to everyone.&nbsp; This dramatically clears the chat output so its not cluttered with tons of whispers to selves that get drowned out with various chat.&nbsp; I still do use the nested version but only in a macro setup during private session time when I'm prepping stuff and chat isn't being spammed.&nbsp; I use voice comms but inevitable the chat output is where people type when they can't speak.&nbsp; Its just too spammy and if you go down the route of chat nesting stuff you wind up overwhelming your live session with spam and it starts to really effect live response time gameplay.
1641420179
keithcurtis
Forum Champion
Marketplace Creator
API Scripter
OK, fair enough. I wind up using my sheet when I'm a player for everything but a few items, mostly common attacks or custom macros. TAM mostly shines as an NPC aid. I was mostly concerned about hearing more regarding some of the bugs you mentioned.
keithcurtis I use TAM and it works out great for me so thanks for picking it up and adding improvements. I just wanted you to know that because as a PLAYER "it does pay for itself."&nbsp;
1641420881

Edited 1641420947
timmaugh
Pro
API Scripter
The relative merits chat spamminess vs screen real estate is a matter of opinion. Character sheets might have all of the functions you need, but they aren't always laid out well for the way a character needs to be played (locating similar/related items next to one another). That's where a customized menu can be handy. Besides, I have played in games where I (or other players) have had a laptop with a single, small screen. Those players can't really afford to spend screen real estate on having their character sheet open all the time. Someone of DM Eddie's opinion (character sheets over chat menus) might instruct those players to operate with some workaround or series of clicks to get/keep the sheet open... because menus spam the chat and are hard to use with a bunch of players typing. Someone of my opinion might tell those players to stop typing. =D King Edward Longshanks: "Who is this who types as if I should read what he has to say?"
DM Eddie said: rcbricker said: So I want to create a macro that I can attach to my token.&nbsp; I want work as follows: Click spellbook &gt; have it list all my spells by level.&nbsp; Each spell list is a macro.&nbsp; The spell macro is basically a cut and paste of the results from taking the action from the attacks and spellcasting section of the character sheet.&nbsp; The language from that section works well.&nbsp; I just want to stream line the process.&nbsp; I want an action list macro for melee and ranged attacks to work the same way. I am unsure how to make a parent macro that calls child macros. I have been where you are, and I get it, I really do, I wanted something like that too.&nbsp; Heres the rub and why I gave up on it *mostly*.&nbsp; What you really want fundamentally, is a character sheet so use the one you have.&nbsp; You want a macro?&nbsp; As someone who hosts for 8 player tables, why on earth would you want to offload your character sheet to a chat macro that nests a bunch of variables and buttons in the chat window thats constantly jumping around from people typing things into it.&nbsp; Ok, so make it a drop down....went that route too and I made it.&nbsp; It works, but it is WORK.&nbsp; Some people above have recommended token action maker, that script works great for making buttons for npc's, worked horribly for players characters in my experience and it still makes the fatal mistake of trying to offload the whole point of the character sheet into the chat output area where it gets jumbled around and drowned out in spam.&nbsp; Unless your players are experienced roll20 sheet and script users, Token action maker is going to break every time Jonny "reckless attack everything" Berserker decides to jumble any repeating row around in any way shape or form then you as the DM has to go in and delete a bunch of stuff and readd it with the script, and that happens ALOT as your table grows even worse if your players change week to week.&nbsp;&nbsp; I did say I did it and I made it.&nbsp; The macro I made is literally too long to post here.&nbsp; I also didn't make it for players, I made it for common npcs I like to try and insert into my games as difficult monsters reskinned as an orc, or a humanoid of some kind in every encounter.&nbsp; Example:&nbsp; I really like all those caster npcs out there but they are so poorly built so I went and made a generic wizard, sorcerer, bard, and cleric and just reset the represents as on a few npcs from time to time to these other sheets I have with those massive macros of actions, bonus actions, reactions, and free actions button drop downs.&nbsp; I'll share like a small free actions macro or something but be warned, this takes TIME to build and building it for a player is going to look awesome but then you are going to be a slave to that player whenever they decide they want to add something new or they level up and new stuff needs to be added.&nbsp; Actually I was going to share reaction macro but it has xge content in it and I'm sure I'll get yelled at for sharing it so instead I'll find a macro of martial crap... ?{What Reaction?||Rapier, &amp;{template:atkdmg&amp;#125; {{mod=[[@{selected|pb}[PB]+@{selected|dexterity_mod}[DEX]]]&amp;#125;&amp;#125; {{rname=Rapier&amp;#125;&amp;#125; {{r1=[[1d20cs&gt;20+@{selected|pb}[PB]+@{selected|dexterity_mod}[DEX]]]&amp;#125;&amp;#125; {{always=1&amp;#125;&amp;#125; {{r2=[[1d20cs&gt;20+@{selected|pb}[PB]+@{selected|dexterity_mod}[DEX]]]&amp;#125;&amp;#125; {{attack=1&amp;#125;&amp;#125; {{range=5ft.&amp;#125;&amp;#125; {{damage=1&amp;#125;&amp;#125; {{dmg1flag=1&amp;#125;&amp;#125; {{dmg1=[[1d8+@{selected|dexterity_mod}[DEX]]]&amp;#125;&amp;#125; {{dmg1type=Piercing&amp;#125;&amp;#125; 0 {{dmg2=&amp;#125;&amp;#125; {{dmg2type=&amp;#125;&amp;#125; {{crit1=[[1d8[CRIT]+1d8[PiercerFeat]]]&amp;#125;&amp;#125; {{crit2=&amp;#125;&amp;#125; 0 {{desc=Can reroll 1 attack damage dice.&amp;#125;&amp;#125; {{spelllevel=&amp;#125;&amp;#125; {{innate=&amp;#125;&amp;#125; {{globalattack=&amp;#125;&amp;#125; {{globaldamage=[[5d6[Sneak Attack]]]&amp;#125;&amp;#125; {{globaldamagecrit=[[5d6[Sneak Attack]]]&amp;#125;&amp;#125; {{globaldamagetype=&amp;#125;&amp;#125; ammo= {{charname=&amp;#125;&amp;#125;|Uncanny Dodge, &amp;{template:traits&amp;#125; {{name=Uncanny Dodge&amp;#125;&amp;#125; {{source=Class: Rogue 5&amp;#125;&amp;#125; {{description=Starting at 5th level&amp;#44; when an attacker that you can see hits you with an attack&amp;#44; you can use your reaction to halve the attack's damage against you.&amp;#125;&amp;#125;} I have a wizard, bard, sorcerer, and cleric who all have action economy macros built out for their situations as well and the actions on these bots are so massive but the one shining benefit is that alot of stuff gets reused so if you build your macros out in notepad, it starts to become a series of copies and pastes.&nbsp; I have even given the bot macros to some players as I gave my battlemaster one to one of my players playing a battlemaster and I gave the barbarian the barbarian one minus the wild magic parts as he was a berserker and the bot was wild.&nbsp;&nbsp; Ultimately nothing will work well other than *the actual character sheet* because the novice player is going to edit their sheets repeating rows breaking anything you do with the sheet that doesn't completely rewrite the sheet itself like my key above.&nbsp; If you try to call the rows, you'll be constantly gritting your teeth editing their sheets.&nbsp; The entire spell page is exactly this.&nbsp;&nbsp; I appreciate your point of view.&nbsp;&nbsp; However, I am trying to write this for my character sheet as I am playing this campaign.&nbsp; I might even manage similar macros for the other players if they are interested.
I am glad to see such interest in this subject.&nbsp; I believe that what we have here is a situation where automation is great and players want to see it, but the DM is not willing or overly hesitant.&nbsp; Since the DM controls the API side of things, this limits access to things like TAM.&nbsp; I use TAM when I DM and love it.&nbsp; but now I am the player and the DM is against automation more from an elitist point of view.&nbsp; "Don't have automation at the table so why have it in VTT".&nbsp; I am looking for macros (drop downs or chat menus) that will allow players to utilize their token macro bar rather than have to open and close their sheets.&nbsp; This campaign is here on roll 20 and most of these players have only used fantasy grounds.&nbsp; So more time learning their sheets and all that.&nbsp; Also, automation allows for DMs and Players to spend more time in story and less in the mechanics of combat.
1641487489
keithcurtis
Forum Champion
Marketplace Creator
API Scripter
If you do go with chat menus, consider adding /w "@{selected|character_name}"&nbsp; with a space at the end to the beginning of any menu. So long as the player has their token selected, the chat menu will only whisper to them, and should cut down on chat spam. Quotes are needed to account for characters with spaces in their names.