Character Vault
Any Concept / Any System
Your System Come To Life
Roll20 for Android
Streamlined for your Tablet
Roll20 for iPad
Streamlined for your Tablet

Personal tools

Text Chat

From Roll20 Wiki

Revision as of 12:29, 23 September 2023 by Andreas J. (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Attention: This page is community-maintained. For the official Roll20 version of this article, see the Help Center for assistance: Here .

The q Text Chat is the first tab in the Sidebar.

It's where all the dice roll results & other in-game messages appear.

Roll20 Chat: Basic Features to Advanced Tricks


Sending a basic chat message is easy: just type your message into the chat input area and press Enter. Be advised that any player assigned a "Character" (from the N Journal tab) can choose via drop-down to talk as either themselves (their registered login name) or as their assigned character. This drop-down menu can be found directly below the chat text box.

If "Enable chat avatars" is checked off in the y My Settings-tab on the Sidebar, mini avatar icons will display to the left of chat entries. The icon will change depending on whether a user is chatting as themselves or as a player assigned character.

Press when having the Chat input selected, and the chat box will display the macro for the last thing you rolled this session.



The GM can hide chat messages.

Multiline Chat Commands

You can hit Shift+Enter while typing in chat commands to get to the next line. Each line will be individually interpreted allowing you to send multiple styles of chat together, preventing them from being split in the chat by other player's messages.

/me strikes a valiant pose.
Evil doer, beware, I am on your trail!
/w gm This is the signal that the thugs I paid are waiting for.

Rolling (/roll, /r)

Rolling dice in Roll20 is easy. Just type /roll or /r into the text chat box, followed by a formula. In most cases, the formula is the same as the one that's printed in your game's instructions. For example, you might know that to roll an attack roll you need to roll a "D20 plus your attack modifier". In Roll20, you would just type /roll d20+5. If you hit and you need to roll 3d6+2 damage, you would just type /roll 3d6+2. Finally, you can also string multiple rolls together. If you have an attack that does two types of damage, you might do /roll 2d6+5 + 1d8.

So, the overall format for a dice roll is /roll NdX+m where N is the number of dice to roll, X is the number of sides of the dice, and m is the (optional) modifier, which can also be negative.

After the roll is performed, you'll see the results of the roll in the text chat area. Notice that for each group of dice that were rolled, there will be a group of numbers in parentheses, representing the result of each individual dice that was rolled. You'll also see the total of all the dice values plus modifiers to the right of the equals sign.

Dice Reference has info on the more advanced dice mechanics & syntax.

Beyond using the various Roll Commands shown on this page, you can also start write/use:

  • Macros - Start with #, and start typing the macro name, and a list of your macros will be displayed.
    • Example: writing #testmacro in the chat will roll the macro with that name
  • Roll Templates - &{template:name-of-roll-template} {{sectionname(optional)=content of roll template}}.
    • The Default Roll Template is available in any games, other templates are tied to specific Character Sheet Templates. (E.g. you can only access the specific &{template:simple} when you have D&D 5E by Roll20-sheet in the game).
    • Example: &{template:default} {{name=Test Attack}} {{attack=[[1d20]]}} {{damage=[[2d6]]}}
    • This will generate a roll template using the default template, displaying "Test Attack" in the purple title, then on a new row the result of 1d20 roll, and on the third row the 2d6 roll
  • Character Abilities/Character Sheet Button - %{character name|ability or roll button name}
    • Example 1; writing %{Sam Bobbins|initiative} in the chat, will work if there exists a Character with that name, who have a Character Ability/Character Sheet Roll Button by that name
    • Example 2: selecting a [Token]] on the map, and then writing %{selected|initiative} in the chat, will work if the token is linked to a character sheet that has an Ability or Roll button with that name.
  • API commands(available in games hosted by a pro user), - Start with ! to call the API command, and then write and parameters it can take
    • Example: writing !MassInit in the chat will trigger an API that uses MassInit as a keyword.


To make a roll that's only visible to the GM, you use either /gmroll or /gr, instead of the default

Chat Commands

Whispers (/w)

To whisper, simply type /w and the name (either player or character) you wish to engage via whisper. Do note that there is a tab-auto-complete function for names to speed this process.

Example: /w Galstaff Then how come you had to cast magic missile?

Example: /w Rob Where are the Cheetos?!

You can put the name of a character/player in quotation marks, if the name contains spaces.

Example: /w "Galstaf, Sorcerer of Light" You didn't say you cast it, so you didn't, ok?!

Example: /w "Rob Smith" Where's the Mountain Dew?!

Note: Whispering to a Character will send the message to all Players listed in the controlled by field, which may include the GM. This fact is often used to make an "in-character language" Character for Campaign setting languages like Elvish, Dwarven, Orcish, etc. The "Language-character" can then be whispered to for only Players who have Characters that understand that language.

Rolls to GM (/gmroll, /gr)

To whisper directly to the GM, type /w gm. You can also perform a roll that only you and the GM can see, with /gmroll 1d20+5.

Example: /w gm I'm attacking the darkness!

Example: /gmroll 2d6+3

At this time, only GM whispers are retained in the Chat Archive, and they are only shown to the GM.

A player or the GM can whisper to themselves using the /w or /w gm commands where applicable.

Emotes (/em)

To emote, type /em (or /me) and whatever action you want stated. Be advised that you will emote by whatever you are currently speaking as (player or character). Emotes are formatted as center aligned, bold, italicized and set in a brown font and highlight.


/em takes out one of his throwing daggers and brandishes it threateningly.



/em swings their sword and does [[3d6+2]] damage.


Out of Character (/ooc)

To state something while Out of Character (OOC) type /ooc or /o and whatever you wish to say out of character. OOC entries always appear as the player (e.g. "Riley D.") rather than the Character you have selected in the "Speaking As" drop-down (e.g. "Orrbain").


/ooc I could really use another Red Bull right now.


Escape Text (`)

If you put a back-tick ` at the beginning of a command, it will not parse anything about it (inline rolls, variables, etc.) Instead it will just output your text directly. This might be useful for sharing macros with others while in-game.

`&{template:default} {{attack=[[1d20]]}}


Talk to Myself (/talktomyself)

To turn off your chat display for all others, including the GM and the chat archive recording, use /talktomyself or /talktomyself on. Use /talktomyself again or use /talktomyself off to disable.

Note: the /talktomyself command and what you want to say must be on different lines and you cannot use it in the same macro as what you want to keep hidden. Recommendation is to have a separate macro to toggle the talktomyself state and then use your other macros that actually do what you want.


This is my evil secret plan to steal the gold from my party!
/em will steal from [[1d4]] party members!


Note: API commands (Pro subscription feature) will not be executed when /talktomyself is on.

See Also: Whisper Self API snippet -- use !wself to whisper to self individual messages, without the need to toggle /talktomyself on/off.

Special Effects (/fx)

Main Page: FX Tool

The /fx command can be used to create visual effects. It has the following syntax:

/fx <Type>-<Color> <Source ID> [<Target ID>]
  • Type can be one of: beam, bomb, breath, bubbling, burn, burst, explode, glow, missile, nova, splatter
  • Color can be one of: acid, blood, charm, death, fire, frost, holy, magic, slime, smoke, water
  • Source ID is the id of a token which is the point of origin of an effect. (Required for all effects)
  • Target ID is the id of a token which is the point where the effect is focused. It is only required for directed effects (beam and breath) and will be ignored by area effects.

Information about the default effects' types and colors, as well as instructions on how to build your own custom effects, can be found on the e Fx Tool page.

Special effect of type beam and breath can take both a Source ID and a Target ID. See the first two examples.

All other special effects listed require only a Source ID. See the third example.


  • A beam of acid:
/fx beam-acid @{target|Caster|token_id} @{target|Foe|token_id} 
  • Fire from a dragon:
/fx breath-fire @{target|Dragon|token_id} @{target|PC|token_id}
  • Explosion of Fire (and all other types of effects):
/fx explode-fire @{target|token_id}

Custom FX

The /fx command can also be used to invoke Custom FX. For custom effects use the following syntax:

/fx <Custom Effect Name> <Source ID> [<Target ID>]
  • Custom Effect Name is whatever you typed in the Name field of the Edit FX dialog.
  • Source ID is the id of a token which is the point of origin of an effect.
  • Target ID is the id of a token which is the point where the effect is focused. It is only required for directed effects and will be ignored by area effects.

Chat Commands GM Only

Descriptions (/desc)

Adding text following the /desc command will not be designated to have been spoken by anyone. This is for the use of the GM to describe something in a scene. Descriptions are formatted as center aligned, bold, italicized and set in a black font and light grey highlight.


/desc The old house begins to creak and moan...


Speaking and Emoting as a Random NPC (/as, /emas)

A GM can speak or emote as an NPC that doesn't have a character entry made in the N Journal-tab. To speak as non-situated character, a GM should type the command /as, followed by a space, then the character name in quotation marks and then with what the GM wishes the character to say.


/as "Sir Bearington" I'm going to eat you for breakfast.


To emote, follow the same process as above but use the command /emas.


/emas "Sir Bearington" charges at you!


There is an API named emas which can grant players indirect access to this command, by using the !emas-command

Basic Formatting


Markdown is available to let you bold, italic, bold-italic, create a hyperlinks, or include even an image in your macros and text as they appear in the q Text Chat. You can use basic Markdown syntax in your text chat messages. We don't support the entire breadth of everything Markdown can do (like headers), but rather just basic formatting. Here's a quick rundown:

Format Syntax
Italicize Text *text to italicize*
Bold Text **text to bold**
Bold & Italicize Text ***text to bold & italicize***
Code ``Code``
Link to URL [Google](, [Dodge](
Image [Roll20 Logo](

Alternative to adding the markdown into the macros, you can sometimes add the markdown to your Character Attributes, so you can have a universal macro, and make individual adjustment to to how you want each output to look like.


/em his **@{bob|height}** tall, and can be described as: @{bob|description}.

Note on Code: The extra backtick at the start of the code snippet is required due to the backtick character also being the character used to escape commands.

Note on Images: Including an image is just putting in a link to an image. If the link ends in .png, .jpg, .jpeg, or .gif, we will automatically insert an image tag in addition to linking to the source image.

You can use the Markdown formatting in general messages, whispers (/w), descriptions (/desc), and emotes (/em). You can also include Markdown formatting in the values you pass to Roll Templates and it should work fine. For example:
 {{attack= [[1d20]] vs **AC**}}

Doing math in the chat

Sometimes you want to do simple math in your chat. For example posting the damage done by a weapon and subtracting the modifier. To do so you can simply put it into double square-brackets like those [[]].

For example writing a macro for subtracting a miscellaneous number from your strength, while your strength is 5 would look like this:

/me is flexing her muscles which is very impressive since her strength is [[5-?{Modifier|0}]]

This will pop up a message where you put your modifier in which then will be subtracted from your base strength 5.

Pop-Out Chat


You can now pop-out Text Chat to a new window. To do this, simply double click on the q Chat-icon at the top of the right of your Virtual Tabletop.

Chat Archive

The chat window will keep a running history of everything entered. This history will persist between sessions, and is always available. You can also access a complete archive by scrolling to the top of your chat log, and clicking View all chat entries for this game >> This will load the chat history in a new window.

If you want to save a copy of the chat log, Select Show on One Page, and then press Ctrl+s to save it as a .html, or Ctrl+p to save it as a PDF.

Clearing the In-Game Chat Log

There's a button on the y My Settings-tab called "Clear Current Chat Log". When pressed, it will clear all the current chat history from your chat window while in a game. This doesn't affect the archived chat history that you can access from the Game Details page nor does it affect anyone else's view of the chat history. If you reload your browser, the chat history will be once again visible in the game.

Clearing the Chat Archive

Game Settings Menu Options.jpg

The GM can permanently delete the entire chat log. To do this:

  1. Go to the Details-page for your game.
  2. Open the Settings menu.
  3. Select Clear Chat Archive.
  4. To confirm, type the word CONFIRM in the text box that appears.

Clearing the chat archive can is usually done to if the text chat is acting up, and might have been corrupted.


Various APIs that primarily help you out by creating API commands & options that can be used in the q Text Chat.

  • ChatSetAttr -- Create, modify, and delete character attributes via chat commands or macros.
  • ChatTurnManager -- A script to simplify Turn Order Management, and move it into chat.
  • Check It Out(Forum) -- allows players to examine nearby objects(tokens) and learn more information about them by having a message appear in the chat. Can be set up with system-specific properties, such as automated Investigation skill checks that reveal more information based on the rolled result. Readme
  • Dialog(Forum) -- a script that makes chat a bit more fun and easier to parse, especially for games that don't use voice. It also makes it much easier to get the GM's attention in a busy game.sourcecode, by Keith
  • DiscreteWhisper -- multi-recipient whispers with asides and buttons
  • emas -- Provides player !emas and !as commands.(emote as)
  • ScriptCards -- A scripting language in a Mod Script. Used to produce nicely formatted output cards for attacks, spells, and other abilities. Successor to PowerCards
  • SuperNotes(Forum) Mod to pull descriptions from token/character descriptions, Bio, GM fields & more as an caht message. Later version comes with 10 different chat template options.
  • PowerCards -- Create nicely formatted output cards for attacks, spells, and other abilities.
  • Message of the Day -- Greets players that log in with the contents of a particular note.
  • Rollable Table Macros -- Use macros and chat commands with rollable tables
  • Changes how normal macros and API Script calls are processed:
    • MetaMacros -- Precompiler enabling C-style textual substitution macros in macro definitions.
    • Meta-Toolbox -- collection of meta scripts
      • SelectManager -- a way to preserve the portions of a message that are present in a user-generated message but lost in an api-generated message (the selected tokens, who sent the message, and the playerid).
    • Category:API Meta Scripts


The other tabs in the Sidebar:

Related Pages

  • Complete Guide to Macros & Rolls‎
    • q Text Chat - where the roll results appear, & info on the common chat commands
    • Dice Reference - Comprehensive list of how the Roll20 dice-rolling syntax works, and list the features available
    • Macros - How to create macros, and other info on how the Roll20 q Text Chat works, like referencing stats on character sheets, roll queries, nesting macros & initiative
    • Roll Templates - a method of formatting roll results in the chat, with some extra functions
    • API(Pro Only) - API commands can be used in the q Text Chat