Display Commands
Commands for sending messages, titles, and text to players in chat or on screen.
/meSends an action message in chat, displayed as '* PlayerName action'. Similar to IRC /me.
/msgSends a private message to one or more players. Also available as /tell and /w.
/saySends a public message to all players in chat, prefixed with the sender's name in square brackets. Can use selectors.
/tellrawSends a formatted text component message to players. Supports clickable text, hover events, colors, formatting, and score/selector insertion.
/titleControls the title display on players' screens. Can show titles, subtitles, action bar text, and configure display timing.
Which one to use
- /say
- A plain line everyone sees, with the sender's name in brackets. From the console that name is Server, from a command block it is @. Selectors in the text turn into names. Level 2.
- /msg
- A private message that only the sender and the targets see. Also answers to /tell and /w. Level 0, so any player can use it.
- /me
- A line in the third person, like "* Steve waves". Mostly used for roleplay. Level 0.
- /tellraw
- Chat with colors, hover text and clickable parts. The right tool for menus, rule prompts and anything a player should click. Level 2.
- /title
- Big text in the middle of the screen, a subtitle under it, or a short line above the hotbar. Level 2.
Text components changed in 1.21.5
/tellraw, /title and the name of a /bossbar all take a text component. Since Java 1.21.5 that is written as SNBT instead of JSON, so keys can go without quotes: {text:"Welcome",color:"gold"}. Old examples with quoted keys still parse. What breaks them is that the event keys were renamed:
click_event- Was clickEvent. A
run_commandclick now keeps its command in acommandfield instead ofvalue, and the leading slash is optional. hover_event- Was hoverEvent. A
show_texthover now reads its text fromvalueinstead ofcontents.
A run_command click runs as the player who clicked, so they need permission for that command, and it refuses commands that post chat messages such as /say or /tell. For a button every player may press, point the click at /trigger, which needs no op.
Getting a title on screen
Send times and subtitle first and title last, because the title action is what shows everything. The default timing is 10 ticks to fade in, 70 on screen and 20 to fade out. A player's client keeps custom times until the game restarts, so run /title @a reset when your event is over. Long titles are not wrapped either. They run off both sides of the screen, so keep them to a few words.