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

What's on your macro bar?

I keep seeing all these threads with screenshots being used to talk about one thing, but seeing buttons in these screenshots I want to know more about. I'm still new to using the macros, so I'm curious: What does your macro bar look like, and what do they do or help you with? Mine's currently pretty barren, but we use beyond20 and DNDBeyond for our character sheets, so many of the PC macros that are used aren't needed so much here. A button that toggles a character between dead(map layer) and alive(token layer), a !ta button to make all the token action buttons, and a FixToken button to set bar1 bar2 and bar3 links correctly, at least for NPCs. Show us what you've got!
1654058049
Andrew R.
Pro
Sheet Author
A button for AFK (away from keyboard) and buttons for all the 13th Age conditions: staggered, vulnerable, etc.,  These are all TokenMod macros in a Macro Mule journal. 
1654060188

Edited 1654060688
keithcurtis
Forum Champion
Marketplace Creator
API Scripter
Mine has grown organically over the years. Some of the buttons are rarely used anymore, but most of them are workhorses. This is just the macro bar. There are a number of universal token actions that appear for any selected token. 99% or of the code for all this is on a couple of  Macro Character Sheets  so I can move this to any game. After I install and configure about 2 dozen APIs, of course.
1654081882
David M.
Pro
API Scripter
Can we all just take a moment to appreciate the layout of Keith's infographic?
1654138932
vÍnce
Pro
Sheet Author
I was thinking therapy may be in order... ;-p
Incredible ! Now I want the macros behind these buttons :-)
Yeah, I think Keith needs to post links to some of his macros so I can steal them. :-)
That has put me back in the "I need to learn Macros" Mode :)
1654184981
keithcurtis
Forum Champion
Marketplace Creator
API Scripter
It really just grows, like coral. You build a thing, tinker with it, build the next thing, tinker with that, and so on until you have a whole ecosystem
1654185584
keithcurtis
Forum Champion
Marketplace Creator
API Scripter
GM Goss said: Yeah, I think Keith needs to post links to some of his macros so I can steal them. :-) That would be a monumental task! However, here is some documentation I made for my players (we rotate GMing duties between four of us, but I host and maintain the games). It's about three years out of date, so it down't match the current state of the menus, but they are about 85% the same as then: Game These are commands that are generally useful to run during the game. They control things that need to be manipulated in play: hit points, vision, etc. Group Check - This allows you to select a bunch of tokens and have them all roll the same roll, perception, saving throws. More detail on this under the specialized Group Check button Rests and Resets - This applies short and long rests to selected tokens. It can also bring any token up to full hp. Direct Damage is just another way of applying damage to a token if the standard way of filling in the bubble is not easy. Temporary HP puts a value in the sheet of the selected token for temporary HP. I have a background script that monitors Temp HP. It will put a yellow dot on the token to indicate that it has temp HP. All damage done to this token will be taken from Temp HP first, automatically. Disappear - Contains buttons that make tokens invisible to players. It will create a gm-only-visible token on the board that mirrors the actual token, which is sent to the GM layer. Most of the buttons are to toggle visibility or to make something disappear accompanied by a special effect. Nameplate - Toggles nameplate visibility for all selected tokens. Ignore Random Name. My own campaign has name generators built in, but it turned out I never used them. Light and Vision - this has a lot of options, but can quickly correct many problems if you use Dynamic Lighting Snuff - Removes all light and sight from a selected token Sight - Gives sight to a selected token, but does not cause them to emit light Blind -  Removes all sight from a selected token, but it can still emit light Spot -  Puts a spot of light around a character Good vision but very short range GM  - Puts a spot of light around a token that only the GM can see. Useful for highlighting a token on dark maps Moonlight -  Causes a token to shed a huge dim light, visible to all Good for outdoor at night. Tokens with darkvision see well short range, all tokens can see entire map dimly. Starlight - As Moonlight, but dimmer Touch  - Lets a character dimly see whatever is in touch range. Useful for simulating a character without darkvision. Candle | Lamp | Torch | Hooded Lantern | Bullseye Lantern - Apply these to a character or token to have them simulate the appropriate light. If it is a PC, make sure they have sight (The Sight button above will do this) Darkvision | DV90 | DV120 - Gives selected token Darkvision for 60, 90 or 120 ft. Light | Daylight | Faerie Fire - Simulates the light cast by one of these spells. Apply it to a token or character. Status These buttons are just a quick method of putting a status marker on a token Aura Quickly puts an aura on a token. Use circle or square to define the shape and size. Then use a color button to define the color. To get rid of an aura, just leave the input box blank when it asks you for the size. Miscellaneous Ignore most of these, they are for very specialized use cases. Ask me if you are interested. However Char Pic will show the character art for a selected token if such exists. Most Monster Manual tokens have this. Initiative Most of these should be self-explanatory. Reset Round Marker is used only if you are using a Round Marker on the tracker. Ignore otherwise. Utility These commands are more often used during game prep and setup. Setup - These commands help you prepare tokens quickly Set Mook - Makes a token so that it can be numbered automatically when future instances of it are placed on the map. Special NPC - You can ignore this if you want. Basically it sets any generic unassigned token to correspond to the commoner, thug or veteran sheet, in case a player wants to fight someone unexpectedly. You can quickly set their threat level accordingly. Set PC - Use to set up a PC token properly. Assign the token to a character sheet manually, and then run this command. Convert to Defaults - Only useful if you are running a pre-generated module and the tokens are not set to your liking. Set Default Token - If you make changes to a character's token and you want that to be the new default, run this command Grab Token Image - Select a token and run this command. It will ask you for a target, and will assign the targeted token's artwork to the selected token. Whisper to GM | Public - These set the defaults for rolls generated by the selected token/character Create Token Actions - This will create token action buttons for all of a selected character's actions. VERY USEFUL. Makes token action buttons for all attacks, for instance. Set Note GM - Best to ignore Set Size ¼ | ½ || T-S-M | L | H | G | 5x5 | 6x6 | 7x7 - These buttons quickly resize a token Resizer - More resizing options Mass Sight These buttons add or remove sight for all tokens across a game. Use with caution. Most useful for when using a module and you want to adjust sight globally. All PCs See is useful to run to make sure no players are surprised by blackness though. Utility You can ignore these. Most of them are deprecated. Lock and unlock object can be useful, though. Just keeps a token from being moved or resized. Rules I'm not going to go through these one by one. This is mostly a "GM Screen" of quick rules references. Some of the commands require you to have a token selected. For instance Jumping will give you the jump distances of the selected token in addition tot he general rules on jumping. Group-Check Very useful. This allows you to select a bunch of tokens and have them all roll the same roll, perception, saving throws. The top button is the most useful one though: Save vs Damage . If a group of tokens is being affected by an area effect such as fireball or cone of cold, select all affected tokens and press this button. It will ask you The Save type, the DC, the damage, and whether a save does half or no damage. Then it will roll for all tokens and apply appropriate damage to each. Very quick! Concentration Apply this to a spell caster who is concentrating. Whenever that token takes damage, a background script will check the damage and put up a button for the token to make the appropriate Con saving throw to keep concentration. Token-Fate Select a bunch of tokens. Fate will choose one of them randomly for whatever nefarious purpose you have in mind. Dead and Revive Places and removes a big red X on the selected tokens. Lock Keeps a token from being moved or resized. Useful for map pins, lights, etc. Using this button toggles the locked property. Potioner I have set up each campaign with a potion deck. You can add a potion to the controller of a selected token by name. Caution: You can give a potion to a player who is not logged it, but you can't take it back until they are active again.
1654186187
keithcurtis
Forum Champion
Marketplace Creator
API Scripter
The three Universal Chat Menu API buttons ( the yellow ones ) are detailed here Purse Strings is a One Click API. Campaign menu is just a list of handout links. You can learn how to make them in this post . Potions is a Combination of Dealer commands to deal out potion cards and Purse Strings commands to deduct money. Scenes is detailed here:  Scenes Macro for Theater of the Mind Most of the Reporter (One Click install) macros are detailed in the Reporter thread . A lot of common uses (Map Keys, Map Pins, Tracker monitoring and more) are builtin in as one line commands.
1654189373

Edited 1654193095
keithcurtis
Forum Champion
Marketplace Creator
API Scripter
Besides the Macro bar, I have some universal Token Action Buttons. Some are usable by anyone, others only face the GM. They appear whenever any token is selected:
1654195330

Edited 1654202426
I can't make mine look as pretty as Keith's, but hopefully it'll still give you some ideas (and unfortunately a lot of the emojis don't work on the Roll20 forums, even thought they work in game): In order: ❤️❣️:  API Heartbeat  (using the alternating 'beating hearts') ⚙️: Token Setup macro ⚪: Status Marker List (primarily using  TokenMod  but also modified  FlyMore ) : Add 'Round #' to Turn Tracker at start of combat using modified version of ' AddCustomTurn ' !act +1 1 --Round # --index 0 /w gm ["Round #1" added to turn tracker](#" style="background: none; background-color: transparent; border: none; padding: 0px 7px; text-decoration: none; display: inline-block; outline: 2px dashed purple;) ❇️: Add Spells and other effects to the Turn Tracker using modified version of ' AddCustomTurn ' and ' AddInvisibleCustomTurn ' !actspell ?{Countdown Number|-1} ?{Number of Turns|10} --?{Caster|@{selected|token_name}}: "?{Effect Name|BlessSleepEtc}" ?{Concentration?||Yes,«» |No, |} /w GM [?{Caster}: "?{Effect Name}" ?{Concentration?} added to turn tracker for ?{Number of Turns} turns](#" style="background: none; background-color: transparent; border: none; padding: 0px 7px; text-decoration: none; display: inline-block; outline: 2px dashed purple;) ️: Macro to speak other languages (so only players controlling characters who understand that language will get the message in chat) using modified version of ' emas '. Also includes a button for players to click to respond. !?{Language||Abyssal|Common|Draconic|Dwarvish|Elvish|Gnomish|Halfling|Infernal|Orcish|Primordial|ThievesCant|an unknown language} !?{Speaker Name|@{selected|token_name}} /emas ?{Speaker Name} speaks in ?{Language}. !was ?{Speaker Name} in ?{Language} --?{Language} --?{Message} --Reply in ?{Language} 狼: Private Whisper Macro that inserts a reply button for the player to respond from the chat window (using the Stylus extension  Blind Roll trick ). When the player responds, there is a hidden button for the GM to reply back as well. GM View: Player view: /w "?{Private message to who?|Player 1,CharacterName1|Player 2,CharacterName2}" [?{Private message}](#" style="background: none; background-color: transparent; border: none; padding: 0px 5px; text-decoration: none; display: inline-block; outline: 2px dashed red;)   [Reply to GM](~PCMacros|TalkToGM" style="background: none; background-color: transparent; border: none; padding: 0px 5px; margin-top: 5px; text-decoration: none; text-align: center; display: inline-block; width: auto; outline: 2px solid red; color: red;" id="HideFromGM") ️: Blind Roll - send a request to a player with a button for them to make a blind roll (using a modified version of ' emas ') Player view: GM View: :  Calendar Script :  Teleport Script :  Ping-Pull  controlling players to a token : Treasure message in chat (using modified ' emas ' script) /emas "Treasure" [?{Which Player?|@{selected|token_name}} ?{Verb|finds} ?{What treasure?} ?{Where?}](#" style="background: none; background-color: transparent; border: none; padding: 0px 5px; display: inline-block; font-weight: normal; font-style: normal; text-decoration: none; color: DarkOrange;) ✍️: Note message in chat (using modified ' emas ' script) (typically for names of NPCs and things like that) /emas "Note:" [?{Note to players in chat}](#" style="background: none; background-color: transparent; border: none; padding: 0px 5px; display: inline-block; font-weight: normal; font-style: normal; text-decoration: none; color: SaddleBrown;) : Website link message in chat (using modified ' emas ' script) (typically for linking to reference on D&D Beyond) /emas "Website Link:" [?{Text in Chat}](?{Website URL} #" style="background: none; background-color: transparent; border: none; padding: 0px 5px; display: inline-block; font-weight: normal; font-style: normal; color: DodgerBlue;) ️: Photo message in chat (using modified ' emas ' script) ?{Whisper?|GM Only,/w gm |All Players, }[{{](#" style="display: none;)?{Text/Name} [Image](?{Image URL}#.png)[}}](#" style="display: none;) : Lock tokens (using  TokenMod ) !token-mod ?{Lock or Unlock | Lock,--on lockMovement |  Unlock,--off lockMovement | Lock Players,--ids @{GM Macrobar|AllPlayersIDList} --on lockMovement| Unlock Players,--ids @{GM Macrobar|AllPlayersIDList} --off lockMovement} --current-page : Calculator / Roll macro ?{Secret or Public?|Secret,/w gm|Public,/emas} ?{Rolling for what?}: ?{Calculator} **=** [[?{Calculator}]] ‍‍‍-✔️:  Groupcheck ‍‍‍-:  Groupsave ‍‍‍-喝:  ApplyDamage Bump:  Bump
1654203264
keithcurtis
Forum Champion
Marketplace Creator
API Scripter
I'm glad I'm not the only one! I like the Group icons. I may have to steal adopt those.
Incredibly helpful post!  Thank you Keith and Jarren!
Thank you to everyone who replied here! I was especially curious about some of Keith's scripts after seeing so many screenshots throughout the forums. This gives me a lot of the answers I was looking for, and confirmed that a good chunk of what I see other people using won't necessarily be applicable since we use Beyond20, but that a lot more of it than I thought would be great additions to my toolbar. I'll have to start working on it.
I just have basic die rolls... if it's hidden from players, all they see is the message "The DM rolls some dice behind the screen". If it's in the open, then they see the actual result. I also have basic crit and fumble table results for monsters, NPC, etc. which the players can see the result. As I say, very basic stuff... but then, I run the BX rule set, so nothing fancy is needed.
1654545750

Edited 1654545765
Jarren said: ⚪: Status Marker List (primarily using  TokenMod  but also modified  FlyMore ) Do you think you could post this macro, or send it to me? This looks very helpful, at least more than trying to find the image in the menu.
What I would really like to see is how the game plays when someone has cranked out enough macros and scripts to make it a multiplayer video game. Either a video of a live game, or even better a one shot I could join that shows off the code results. 
But to answer the original question, on my macro bar I keep clear init - clears all rolls in the init tracker and hides it init - roll init for a single selected token and adds it to the tracker r- rolls a reflex save for the single selected token f- rolls a fort save w- rolls a will save melee1 - rolls the first melee attack for selected token melee2 - rolls the second melee attack for selected token Range1 - you guessed it pic2chat - prompts for a url and puts that image in chat trap maker - for the script Then my standard token action macros are: GroupInit - per the script DeathScream - plays the Wilhelm scream, red x's the token, removes from init tracker MonKil - same as above but plays one of several random sounds for deaths that take the monster into extreme negative hitpoints door- uses the doorknocker script to open or shut a door (I don't use the script to differentiate locked and unlocked doors, I put a red dot on the GM layer over locked doors
Kyle K. said: Jarren said: ⚪: Status Marker List (primarily using&nbsp; TokenMod &nbsp;but also modified&nbsp; FlyMore ) Do you think you could post this macro, or send it to me? This looks very helpful, at least more than trying to find the image in the menu. Sure. First, I have all of my Collections macros linked to a Macro Mule sheet, so they look like this: Then on the Macro Mule sheet (named 'GM Macrobar' it looks like this: And here is the code: !noarchive /w GM &amp;{template:npcaction} {{rname=Status Marker List}} {{name= &amp;#160;[&amp;#91; RESET &amp;#93;](!token-mod --report gm|&amp;#34;Removed all status markers from {name}&amp;#34; --set statusmarkers|=dead|-dead #" %{DIV|LinkStyle}color: black; font-style: normal; font-size: 10px;) [&amp;#91; 🟢 &amp;#93;](!token-mod&nbsp; --set statusmarkers|!green #" %{DIV|LinkStyle}color: black; font-style: normal; font-size: 10px;)}} {{description= &amp;#160;[**Status**](#" %{DIV|Green}) [Concentrating](!token-mod %{DIV|ReportToggle}Concentrating&amp;#34; --set statusmarkers|!Concentrating #" %{DIV|Green}) | [Held Action](!token-mod %{DIV|ReportToggle}Holding an Action&amp;#34; --set statusmarkers|!Held-Action #" %{DIV|Green}) [Fly 📏](!&amp;#13;&amp;#37;{GM Macrobar|🧚} #" %{DIV|Green}) | [Climb 📏](!&amp;#13;&amp;#37;{GM Macrobar|⤴️} #" %{DIV|Green}) | [Swim 📏](!&amp;#13;&amp;#37;{GM Macrobar|🏊} #" %{DIV|Green}) | [Burrow 📏](!&amp;#13;&amp;#37;{GM Macrobar|⤵️} #" %{DIV|Green}) &nbsp;&amp;#160;[**Helpful**](#" %{DIV|Blue}) [Blessed](!token-mod %{DIV|ReportToggle}Blessed&amp;#34; --set statusmarkers|!Blessed #" %{DIV|Blue}) | [Burrowing](!token-mod %{DIV|ReportToggle}Burrowing&amp;#34; --set statusmarkers|!Burrowing #" %{DIV|Blue}) | [Climbing](!token-mod %{DIV|ReportToggle}Climbing&amp;#34; --set statusmarkers|!Climbing #" %{DIV|Blue}) | [Enlarged](!token-mod %{DIV|ReportToggle}Enlarged&amp;#34; --set statusmarkers|!Enlarged #" %{DIV|Blue}) | [Flying](!token-mod %{DIV|ReportToggle}Flying&amp;#34; --set statusmarkers|!Flying #" %{DIV|Blue}) | [Hasted](!token-mod %{DIV|ReportToggle}Hasted&amp;#34; --set statusmarkers|!Hasted #" %{DIV|Blue}) | [Heroism](!token-mod %{DIV|ReportToggle}Heroic&amp;#34; --set statusmarkers|!Heroism #" %{DIV|Blue}) | [Hidden](!token-mod %{DIV|ReportToggle}Hidden&amp;#34; --set statusmarkers|!Hidden #" %{DIV|Blue}) | [Inspiration](!token-mod %{DIV|ReportToggle}Inspired&amp;#34; --set statusmarkers|!Inspiration #" %{DIV|Blue}) | [Invisible](!token-mod %{DIV|ReportToggle}Invisible&amp;#34; --set statusmarkers|!Invisible #" %{DIV|Blue}) | [Mirror Image](!token-mod --set statusmarkers|&amp;#63;{How many?|3,MirrorImage:3|2,MirrorImage:2|1,MirrorImage:1|0,-MirrorImage} --report gm|&amp;#34;{name} &amp;#63;{Report: 3, 2, 1, or 0||3,has 3|2, has 2|1,has 1|0,no longer has} Mirror Images&amp;#34; #" %{DIV|Blue}) | [Raging](!token-mod %{DIV|ReportToggle}Raging&amp;#34; --set statusmarkers|!Raging #" %{DIV|Blue}) | [Ritual](!token-mod %{DIV|ReportToggle}casting as a Ritual&amp;#34; --set statusmarkers|!Ritual #" %{DIV|Blue}) | [Sacred Weapon](!token-mod %{DIV|ReportToggle}using a Sacred Weapon&amp;#34; --set statusmarkers|!Sacred-Weapon #" %{DIV|Blue}) | [Shrunken](!token-mod %{DIV|ReportToggle}Shrunken&amp;#34; --set statusmarkers|!Shrunken #" %{DIV|Blue}) | [Stable](!token-mod %{DIV|ReportToggle}Stable&amp;#34; --set statusmarkers|!Stable #" %{DIV|Blue}) | [Warded](!token-mod %{DIV|ReportToggle}Warded&amp;#34; --set statusmarkers|!Warded #" %{DIV|Blue}) &nbsp;&amp;#160;[**Harmful**](#" %{DIV|Red}) [Asleep](!token-mod %{DIV|ReportToggle}Asleep&amp;#34; --set statusmarkers|Prone --set statusmarkers|!Unconscious #" %{DIV|Red}) | [Bane](!token-mod %{DIV|ReportToggle}Baned&amp;#34; --set statusmarkers|!Bane #" %{DIV|Red}) | [Banished](!token-mod %{DIV|ReportToggle}Banished&amp;#34; --set statusmarkers|!Banished #" %{DIV|Red}) | [Blind](!token-mod %{DIV|ReportToggle}Blind&amp;#34; --set statusmarkers|!Blind #" %{DIV|Red}) | [Charmed](!token-mod %{DIV|ReportToggle}Charmed&amp;#34; --set statusmarkers|!Charmed #" %{DIV|Red}) | [Confused](!token-mod %{DIV|ReportToggle}Confused&amp;#34; --set statusmarkers|!Confused #" %{DIV|Red}) | [Cursed](!token-mod %{DIV|ReportToggle}Cursed&amp;#34; --set statusmarkers|!Cursed #" %{DIV|Red}) | [Deafened](!token-mod %{DIV|ReportToggle}Deafened&amp;#34; --set statusmarkers|!Deafened #" %{DIV|Red}) | [Drowning](!token-mod %{DIV|ReportToggle}Drowning&amp;#34; --set statusmarkers|!Drowning #" %{DIV|Red}) | [Dying](!token-mod %{DIV|ReportToggle}Dying&amp;#34; --set statusmarkers|!Dying #" %{DIV|Red}) | [Encumbered](!token-mod %{DIV|ReportToggle}Encumbered&amp;#34; --set statusmarkers|!Encumbered #" %{DIV|Red}) | [Exhaustion](!token-mod %{DIV|ReportToggle}Exhaustion&amp;#34; --set statusmarkers|!Exhaustion #" %{DIV|Red}) | [Frightened](!token-mod %{DIV|ReportToggle}Frightened&amp;#34; --set statusmarkers|!Frightened #" %{DIV|Red}) | [Frozen](!token-mod %{DIV|ReportToggle}Frozen&amp;#34; --set statusmarkers|!Frozen #" %{DIV|Red}) | [Grappled](!token-mod %{DIV|ReportToggle}Grappled&amp;#34; --set statusmarkers|!Grappled #" %{DIV|Red}) | [Hexed](!token-mod %{DIV|ReportToggle}Hexed&amp;#34; --set statusmarkers|!Hexed #" %{DIV|Red}) | [Incapacitated](!token-mod %{DIV|ReportToggle}Incapacitated&amp;#34; --set statusmarkers|!Incapacitated #" %{DIV|Red}) | [Marked](!token-mod %{DIV|ReportToggle}Marked&amp;#34; --set statusmarkers|!Marked #" %{DIV|Red}) | [On-Fire](!token-mod %{DIV|ReportToggle}On Fire&amp;#34; --set statusmarkers|!On-fire #" %{DIV|Red}) | [Paralyzed](!token-mod %{DIV|ReportToggle}Paralyzed&amp;#34; --set statusmarkers|!Paralyzed #" %{DIV|Red}) | [Petrified](!token-mod %{DIV|ReportToggle}Petrified&amp;#34; --set statusmarkers|!Petrified #" %{DIV|Red}) | [Poisoned](!token-mod %{DIV|ReportToggle}Poisoned&amp;#34; --set statusmarkers|!Poisoned #" %{DIV|Red}) | [Prone](!token-mod %{DIV|ReportToggle}Prone&amp;#34; --set statusmarkers|!Prone #" %{DIV|Red}) | [Restrained](!token-mod %{DIV|ReportToggle}Restrained&amp;#34; --set statusmarkers|!Restrained #" %{DIV|Red}) | [Silenced](!token-mod %{DIV|ReportToggle}Silenced&amp;#34; --set statusmarkers|!Silenced #" %{DIV|Red}) | [Slowed](!token-mod %{DIV|ReportToggle}Slowed&amp;#34; --set statusmarkers|!Slowed #" %{DIV|Red}) | [Stunned](!token-mod %{DIV|ReportToggle}Stunned&amp;#34; --set statusmarkers|!Stunned #" %{DIV|Red}) | [Suffocating](!token-mod %{DIV|ReportToggle}Suffocating&amp;#34; --set statusmarkers|!Suffocating #" %{DIV|Red}) | [Unconscious](!token-mod %{DIV|ReportToggle}Unconscious&amp;#34; --set statusmarkers|!Unconscious #" %{DIV|Red})}} That's a mess, so here's a few things to explain: 1. I use three different sets of colored custom status markers (created at&nbsp; <a href="https://game-icons.net/" rel="nofollow">https://game-icons.net/</a> ) separated by 'Neutral', 'Helpful', and 'Harmful'. They look like this: &nbsp; And this is what they look like in game ( here's a Stylus post if you're curious about how to get the Status Markers to look like that): 2. I use a custom API script '!noarchive' that I kludged together to pass through any chat messages that I don't want saved in my chat log. 3. The Fly / Climb / Swim / Burrow is a slightly modified version of&nbsp; TheAaron's FlyMore script . 4. I use a lot of HTML styling to change the font color and size of my macro outputs, so it's easier to just store those on a Macro Mule as well (which I named 'DIV' because reasons ). So when you see&nbsp;[**Status**](#" %{DIV|Green}) the code on 'DIV' looks like this: %{DIV|Green} %{DIV|LinkStyle}color: green; %{DIV|LinkStyle} style="background: none; background-color: transparent; border: none; padding: 0px; color: #ce0f69; text-decoration: none; display: inline-block;&nbsp; 5. Lastly there is the&nbsp;%{DIV|ReportToggle} interspersed throughout, which looks like this on DIV: --report gm|&amp;#34;{name} &amp;#63;{Add or Remove||Add,is|Remove,is no longer}&nbsp;
1654621275
keithcurtis
Forum Champion
Marketplace Creator
API Scripter
Melvin the Mediocre said: What I would really like to see is how the game plays when someone has cranked out enough macros and scripts to make it a multiplayer video game. Either a video of a live game, or even better a one shot I could join that shows off the code results.&nbsp; That's interesting, because that is exactly the opposite of what I try to achieve. My goal with automation is to remove drudgery, repetition, and mental calculation from the game. I avoid a lot of popular scripts like "It's a Trap" or various teleportation scripts because they are too automatic for me. I don't mind a lot of stuff happening at the push of a button, but I want to manually push that button.
keithcurtis said: My goal with automation is to remove drudgery, repetition, and mental calculation from the game. I avoid a lot of popular scripts like "It's a Trap" or various teleportation scripts because they are too automatic for me. I don't mind a lot of stuff happening at the push of a button, but I want to manually push that button. Keith, I totally agree with you. I love the capabilities that some of the automated scripts offer, I just feel that there are too many variables that allow them to execute before I want them to.&nbsp; For example I was using "It's a Trap"&nbsp; for some hidden pit traps along with a set of custom markers.&nbsp; the trap was set to ignore flying creatures.&nbsp; I failed to realize the API ONLY recognized the default fluffy wings as flying and the trap was triggered by the clerics flying raven familiar thus spoiling the encounter.&nbsp; While I know it was my error, it still could have been mitigated by push button execution. /rant off.&nbsp; :) No that being said, I ABSOLUTLY LOVE your macro bar and token action setup.&nbsp; I know you said it was organically developed but I am holding out that you share it...or make it available as a patreon membership (I'd subscribe in a heartbeat).&nbsp; Truth be told&nbsp; I have actually considered reaching out on your website and appealing to your consultant developer side and hiring you you to help me set my script.... John
1654715466
keithcurtis
Forum Champion
Marketplace Creator
API Scripter
Ha Thank you! I have actually done that in the past. The only impedance is that any macro that has to live in collections (primarily universal Token Actions, of which I use about 6)) can't be edited by anyone but the author of the macro, not even the game creator. But I've gotten a couple of PM requests for similar. Once my current Kickstarter project (for Another Company) is fulfilled, I'm considering a Youtube series.
keithcurtis said: The only impedance is that any macro that has to live in collections (primarily universal Token Actions, of which I use about 6)) can't be edited by anyone but the author of the macro, not even the game creator. What about using a demo game to show but then the actual macros copied to a git repo so the game creator can then create the macro collections?&nbsp; Oh and I am totally for the youtube series!
+1 for the youtube series !