Команда /tellraw у Minecraft: формат JSON, події кліку та приклади
Все для роботи з /tellraw у Minecraft 1.21 — формат JSON-компонента тексту, події click і hover, селектори цілей та 10 готових команд для командних блоків і серверів.
Перш ніж щось пояснювати — ось п'ять команд /tellraw, які можна вставити прямо зараз:
/tellraw @a {"text":"Ласкаво просимо на сервер!","color":"gold","bold":true}
/tellraw @a [{"text":"[Правила]","color":"red","clickEvent":{"action":"open_url","value":"https://yourserver.com/rules"}},{"text":" Натисніть, щоб прочитати правила.","color":"white"}]
/tellraw @a ["",{"text":"Ваш баланс: ","color":"yellow"},{"score":{"name":"@p","objective":"coins"}},{"text":" монет","color":"yellow"}]
/tellraw @p {"text":"Ви знайшли секретну зону!","color":"aqua","italic":true,"hoverEvent":{"action":"show_text","value":"Зберіть усі 5, щоб відкрити сховище."}}
/tellraw @a [{"text":"[Натисніть тут]","color":"green","underlined":true,"clickEvent":{"action":"run_command","value":"/warp spawn"}},{"text":" для телепортації до спавну.","color":"white"}]
Якщо все це зрозуміло — чудово, переходьте одразу до прикладів. Якщо схоже на те, що хтось впав клавіатурою на екран — залишайтеся.
/tellraw — це команда, яку Minecraft дає, коли /say вже недостатньо. А /say практично ніколи не достатньо, щойно починаєш серйозно займатися сервером. Потрібен кольоровий текст. Потрібні кліковані посилання. Потрібно показати гравцю його власний рахунок. /say не вміє нічого з цього. /tellraw вміє.
Я витратив більше часу, ніж хотів би визнати, на налагодження JSON-компонентів — зайві коми, лапки всередині лапок, випадковий зворотний слеш, який зламав повідомлення про правила, яке я писав годину. Цей посібник — та довідка, яку я хотів мати на самому початку.
До кінця цієї сторінки ви зрозумієте повний формат JSON-компонента тексту, навчитесь додавати клікабельний текст і спливаючі підказки, отримаєте таблицю всіх кольорів і стилів — і 10 готових команд для сервера. Якщо хочеться пропустити ручне введення, генератор /tellraw на AlaCraft будує JSON за вас і показує превʼю у реальному часі.
Що таке /tellraw
/tellraw — це команда чату Minecraft, яка надсилає форматований JSON-компонент тексту одному або кільком гравцям. На відміну від /say (простий текст із префіксом <Сервер>) або /msg (особисте повідомлення без форматування), /tellraw дає повний контроль: колір, стиль, події кліку, спливаючі підказки, дані таблиць досягнень і вставку імені гравця.
Команда працює у трьох контекстах:
-
Чат — напряму, якщо у вас ОП (рівень прав 2+)
-
Командні блоки — автоматизація за таймером, сигналом редстоуну або подією гравця
-
Консоль / RCON — серверна автоматизація і моніторинг
Команда існує з Java Edition 1.7.2 і розширювалась у кожному великому оновленні: події кліку у 1.8, компонент score у 1.9, HEX-кольори у 1.16, компактний SNBT-формат у 1.21.5. У Bedrock Edition команда є, але підтримує менше функцій — детальніше у таблиці порівняння нижче.
Формат JSON-компонента тексту
Кожне повідомлення /tellraw — це JSON-компонент тексту: або одиночний об'єкт {...}, або масив [...] об'єктів. Мінімальна робоча форма:
/tellraw @a {"text":"Привіт!","color":"gold","bold":true}
Ключ "text" містить вміст. Все інше опціонально:
| Властивість |
Значення |
Ефект |
"text" |
будь-який рядок |
Текст для відображення |
"color" |
назва кольору або "#RRGGBB" |
Колір тексту |
"bold" |
true / false |
Жирний |
"italic" |
true / false |
Курсив |
"underlined" |
true / false |
Підкреслений |
"strikethrough" |
true / false |
Закреслений |
"obfuscated" |
true / false |
Зашифрований (випадкові символи) |
"font" |
minecraft:default, minecraft:uniform, minecraft:alt |
Шрифт (Java 1.16+) |
"insertion" |
будь-який рядок |
Текст, що вставляється в чат по Shift+кліку |
У /tellraw підтримується 16 іменованих кольорів. Вони відрізняються від §-кодів у MOTD сервера — тут потрібно писати назву кольору рядком:
| Назва кольору |
§-аналог |
HEX |
"black" |
§0 |
#000000 |
"dark_blue" |
§1 |
#0000AA |
"dark_green" |
§2 |
#00AA00 |
"dark_aqua" |
§3 |
#00AAAA |
"dark_red" |
§4 |
#AA0000 |
"dark_purple" |
§5 |
#AA00AA |
"gold" |
§6 |
#FFAA00 |
"gray" |
§7 |
#AAAAAA |
"dark_gray" |
§8 |
#555555 |
"blue" |
§9 |
#5555FF |
"green" |
§a |
#55FF55 |
"aqua" |
§b |
#55FFFF |
"red" |
§c |
#FF5555 |
"light_purple" |
§d |
#FF55FF |
"yellow" |
§e |
#FFFF55 |
"white" |
§f |
#FFFFFF |
З Java 1.16 доступні довільні HEX-кольори: "color":"#4A90D9".
💡 Порада: HEX-кольори працюють лише у Java 1.16+. Якщо сервер на старішій версії або потрібна сумісність із Bedrock — використовуйте 16 іменованих кольорів.
Щоб комбінувати різні кольори або стилі в одному повідомленні, використовуйте масив. Першим елементом прийнято ставити порожній рядок "" — він скидає форматування:
/tellraw @a ["",{"text":"[Оголошення] ","color":"red","bold":true},{"text":"Технічне обслуговування через 30 хвилин.","color":"white"}]
Селектори цілей
Перший аргумент після /tellraw — хто отримує повідомлення:
| Селектор |
Ціль |
@a |
Усі гравці онлайн |
@p |
Найближчий гравець до джерела команди |
@s |
Сутність, що виконує команду |
@a[team=Red] |
Усі гравці команди Red |
@a[gamemode=survival] |
Усі гравці у режимі виживання |
@a[tag=vip] |
Усі гравці з тегом vip |
імягравця |
Конкретний гравець за точним ніком |
Для серверних оголошень @a — стандартний вибір. Для особистого зворотного зв'язку після дії використовуйте @s або @p.
Події кліку та наведення
Тут /tellraw відрізняється від усіх інших команд чату. До будь-якого фрагмента тексту можна незалежно прив'язати дію по кліку і спливаючу підказку.
clickEvent
"clickEvent":{"action":"run_command","value":"/warp spawn"}
| Дія |
Ефект |
Примітка |
run_command |
Виконує команду від імені гравця, що клікнув |
Гравець повинен мати право на команду |
suggest_command |
Вставляє значення в рядок чату гравця |
Гравець сам натискає Enter |
open_url |
Відкриває URL у браузері |
Показує діалог підтвердження |
copy_to_clipboard |
Копіює значення в буфер обміну |
Java 1.15+ |
change_page |
Змінює сторінку в книзі |
Лише в книгах |
hoverEvent
"hoverEvent":{"action":"show_text","value":"Це відкриє світ spawn."}
| Дія |
Ефект |
show_text |
Спливаюча текстова підказка |
show_item |
Картка предмета з NBT |
show_entity |
Дані сутності (UUID, ім'я, тип) |
⚠️ Увага: run_command виконує команду від імені гравця, що натиснув текст, а не від імені сервера. Команди, що вимагають прав ОП, тихо провалять для звичайних гравців — без помилки, просто нічого не відбудеться. Використовуйте suggest_command, якщо хочете дати гравцю можливість перевірити або скасувати дію.
Комбінування обох подій на одному компоненті:
/tellraw @a {"text":"[Проголосувати за сервер]","color":"green","underlined":true,"clickEvent":{"action":"open_url","value":"https://yoursite.com/vote"},"hoverEvent":{"action":"show_text","value":"Голосування займає 30 секунд і дає 3 алмази!"}}
Java проти Bedrock — що реально працює
Перш ніж будувати повідомлення з подіями кліку, переконайтеся, що сервер працює на Java, а не Bedrock:
| Можливість |
Java 1.20+ |
Java 1.21.5+ |
Bedrock |
| Базовий кольоровий текст |
✅ |
✅ |
✅ |
| Жирний / курсив / підкреслення |
✅ |
✅ |
✅ |
HEX-кольори ("#RRGGBB") |
✅ |
✅ |
❌ |
clickEvent (усі дії) |
✅ |
✅ |
❌ |
hoverEvent (усі дії) |
✅ |
✅ |
❌ |
| Компонент score |
✅ |
✅ |
❌ |
| Компонент selector |
✅ |
✅ |
❌ |
| Компактний SNBT-формат |
❌ |
✅ |
❌ |
| Компонент translate |
✅ |
✅ |
Частково |
⚠️ Увага: Якщо ви запускаєте крос-плей сервер з Geyser та Floodgate, проектуйте повідомлення під можливості Bedrock. Події кліку та наведення тихо ігноруються на Bedrock — помилки немає, просто текст без інтерактивності.
Примітка про SNBT-формат у Java 1.21.5: З версії 1.21.5 Minecraft приймає компактний SNBT-формат: можна писати {text:"Привіт",color:gold} замість {"text":"Привіт","color":"gold"}. Стандартний JSON по-раньому працює. Більшість онлайн-генераторів ще не оновилися, тому будьте обережні з документацією від старих версій.
Десять готових прикладів
Копіюйте напряму в командний блок або консоль сервера. Замініть заповнювачі (адреси серверів, URL, назви таблиць досягнень) своїми даними.
1. Привітання з іменем гравця
/tellraw @a [{"text":"► ","color":"gold"},{"text":"Ласкаво просимо, ","color":"yellow"},{"selector":"@p"},{"text":"! Гарної гри.","color":"yellow"}]
2. Клікабельне посилання на Discord
/tellraw @a [{"text":"[Discord] ","color":"blue","bold":true,"underlined":true,"clickEvent":{"action":"open_url","value":"https://discord.gg/yourcode"},"hoverEvent":{"action":"show_text","value":"Приєднуйтесь до нашого Discord-сервера"}},{"text":" Спілкуйтесь з нами!","color":"gray"}]
3. Нагадування про правила сервера
/tellraw @a ["",{"text":"─────────────────────\n","color":"dark_red"},{"text":" ⚠ Нагадування про правила\n","color":"red","bold":true},{"text":"Немає грифу · Немає читів · Поважайте всіх\n","color":"white"},{"text":"─────────────────────","color":"dark_red"}]
4. Відображення балансу з таблиці досягнень
/tellraw @a [{"text":"Ваші монети: ","color":"yellow"},{"score":{"name":"@p","objective":"coins"}},{"text":" ✦","color":"gold"}]
5. Спливаюча підказка — прихована підказка
/tellraw @p {"text":"[?] Наведіть для підказки","color":"aqua","italic":true,"hoverEvent":{"action":"show_text","value":"Скриня знаходиться за третім водоспадом зі східного боку."}}
6. Кнопка магазину (пропозиція команди)
/tellraw @a [{"text":"[Відкрити магазин]","color":"green","bold":true,"underlined":true,"clickEvent":{"action":"suggest_command","value":"/shop"},"hoverEvent":{"action":"show_text","value":"Перегляд товарів сервера"}},{"text":" — нові предмети щотижня!","color":"gray"}]
7. Нагадування про голосування з посиланням
/tellraw @a [{"text":"[ГОЛОСУВАННЯ] ","color":"gold","bold":true},{"text":"Допоможіть серверу рости! ","color":"yellow"},{"text":"[Проголосувати →]","color":"aqua","underlined":true,"clickEvent":{"action":"open_url","value":"https://minecraft-server-list.com/server/your-id/vote/"}}]
8. Оголошення від персоналу
/tellraw @a [{"text":"[ПЕРСОНАЛ] ","color":"dark_aqua","bold":true},{"text":"Івент починається через 10 хвилин на ","color":"aqua"},{"text":"/warp event","color":"yellow","italic":true},{"text":". Не пропустіть!","color":"aqua"}]
9. Попередження про перезапуск
/tellraw @a [{"text":"⚠ ","color":"red"},{"text":"ПЕРЕЗАПУСК СЕРВЕРА","color":"red","bold":true},{"text":" через 5 хвилин. Знайдіть безпечне місце.","color":"white"}]
10. Копіювання IP-адреси в буфер обміну
/tellraw @a [{"text":"IP сервера: ","color":"gray"},{"text":"play.yourserver.net","color":"aqua","underlined":true,"clickEvent":{"action":"copy_to_clipboard","value":"play.yourserver.net"},"hoverEvent":{"action":"show_text","value":"Натисніть, щоб скопіювати IP"}}]
💡 Порада: Замість ручного набору використовуйте конструктор /tellraw на AlaCraft — складайте повідомлення візуально, налаштовуйте події через форми і копіюйте готову команду одним кліком.
Шість типових помилок
❌ Помилка 1: Незаескейпдені лапки всередині рядків
JSON використовує подвійні лапки як роздільники рядків. Лапка всередині тексту має бути екранована зворотним слешем. {"text":"Він сказав "привіт""} ламає парсер кожного разу без зрозумілого повідомлення про помилку.
Виправлення: {"text":"Він сказав \"привіт\""}
❌ Помилка 2: Використання подій кліку на Bedrock
/tellraw у Bedrock Edition тихо ігнорує clickEvent. Помилки немає — текст відображається, клік нічого не робить. Багато адміністраторів серверів дізнаються про це лише після скарг гравців, що кнопки «не працюють».
Виправлення: Тестуйте саме на тій версії, на якій працює ваш сервер, до оголошення інтерактивних функцій гравцям.
❌ Помилка 3: Пропущений порожній рядок скидання
У масивах пропуск початкового "" може призводити до «витоку» форматування — особливо жирного шрифту та курсиву — між компонентами.
Виправлення: Завжди починайте масиви з порожнього рядка: ["", {...}, {...}]
❌ Помилка 4: Введення довгих команд прямо в чат
Введення в чаті обмежено 256 символами. Складні /tellraw-команди часто перевищують це. Minecraft мовчки обрізає кінець, ламаючи JSON без попередження.
Виправлення: Використовуйте командний блок — він підтримує до 32 767 символів.
❌ Помилка 5: run_command для команд із правами ОП
Якщо clickEvent із run_command вказує на команду, що вимагає прав оператора, звичайні гравці отримають тихий відмова. Команда виконується від імені гравця, а не сервера.
Виправлення: Прив'язуйте run_command лише до команд, які гравці вже мають право виконувати. Для привілейованих дій використовуйте систему дозволів плагіна або suggest_command.
❌ Помилка 6: Невідповідність дужок або незакриті рядки
Кожна { потребує }, кожна [ — ], кожна " — парної. Парсер JSON у Minecraft суворий — один пропущений символ відхиляє всю команду, іноді з розпливчастою помилкою, іноді мовчки.
Виправлення: Пишіть складні команди у VS Code з підсвіткою JSON або використовуйте генератор /tellraw на AlaCraft, який перевіряє синтаксис по мірі введення.
Коли використовувати /tellraw — дерево рішень
Не кожна ситуація вимагає повного JSON. Пройдіться питаннями:
-
Потрібні кольори, стилі або інтерактивність?
— Ні → Використовуйте /say (без JSON, працює миттєво)
— Так → Продовжуйте
-
Це особисте повідомлення одному гравцю?
— Так → /tellraw <імягравця> з JSON або просто /msg <імягравця> для простого тексту
— Ні → Продовжуйте
-
Повідомлення має відображатись як великий заголовок поверх екрана?
— Так → /title @a title {"text":"..."} (той самий формат JSON, на весь екран)
— Ні → Продовжуйте
-
Потрібні події кліку, спливаючий текст або дані таблиці досягнень?
— Так → /tellraw — правильний інструмент
— Ні → Розгляньте /say із §-кодами, якщо платформа підтримує (простіше)
-
Команда запускатиметься автоматично за розкладом?
— Так → Помістіть /tellraw у командний блок на годинну схему або використовуйте планувальник плагіна
— Ні → Запустіть вручну з консолі або чату
-
Це Bedrock або крос-плей сервер?
— Так → Обмежтеся кольорами та базовим форматуванням, без подій кліку та наведення
Тестуємо /tellraw до публікації
Ніколи не виявляйте зламаний JSON перед усіма гравцями. Швидкий процес перевірки:
-
Одиночний режим (Creative) — найшвидший цикл: увімкнути чити, вставити в чат, виправити, повторити. Гравці не постраждають.
-
Спочатку на собі — використовуйте
/tellraw @s, щоб лише ви бачили тест під час ітерацій.
-
Превʼю до запуску — генератор /tellraw на AlaCraft показує превʼю чату у реальному часі до копіювання команди.
-
Читайте повідомлення про помилку — якщо Minecraft відхиляє команду, шукайте: незаескейпдені лапки, пропущені коми між елементами масиву, незакриті дужки.
-
Тестуйте події кліку в грі — генератори не можуть симулювати кліки; завжди перевіряйте
run_command і open_url безпосередньо в ігровій сесії.
✅ Важливо: При тестуванні в командному блоці підключіть кнопку замість годинного механізму. Зламаний /tellraw на 20-тиковій петлі заповнює чат усіх гравців повідомленнями про помилки. Спочатку будуйте й тестуйте, переходьте на годинник лише коли впевнені в роботі.
Генератор /tellraw на AlaCraft — що він вміє
Якщо ручне введення JSON — не ваша ідея продуктивного вечора — моя теж ні — генератор /tellraw на AlaCraft бере структуру на себе:
-
Візуальний конструктор — додавайте фрагменти тексту, вибирайте кольори з палітри, перемикайте жирний/курсив/підкреслення чекбоксами
-
Редактор подій — налаштуйте
clickEvent і hoverEvent через випадаючі списки та поля, без знання JSON
-
Превʼю у реальному часі — бачите точно, як повідомлення виглядатиме в чаті Minecraft, до копіювання
-
Копіювання одним кліком — копіює повну команду
/tellraw @a {...}, готову до вставки
-
Декілька цілей — перемикайтеся між
@a, @p, @s або іменем конкретного гравця
-
Перевірка у реальному часі — генератор підсвічує помилки JSON по мірі введення
Без акаунта, без реєстрації, без встановлення. Відкриваєте сторінку, будуєте повідомлення, копіюєте, вставляєте.
Питання та відповіді
Чи працює /tellraw у Minecraft Bedrock Edition?
Частково. Bedrock підтримує 16 іменованих кольорів і прапорці жирного/курсиву/підкреслення. Але clickEvent, hoverEvent, HEX-кольори, компоненти score і selector не підтримуються. Для повного набору функцій потрібна Java Edition.
У чому різниця між /tellraw і /say?
/say надсилає неформатований текст із префіксом <Сервер> або <імягравця> — без кольорів, без інтерактивності, без можливості приховати префікс. /tellraw надсилає JSON-форматований текст без префікса, з повним керуванням кольором, підтримкою подій та ін'єкцією даних таблиці досягнень. Використовуйте /say для швидких повідомлень оператора; /tellraw — для всього, що має виглядати добре.
Як показати ім'я гравця в повідомленні /tellraw?
Використовуйте компонент selector: {"selector":"@p"} вставляє відображуване ім'я найближчого гравця. У масиві: ["Ласкаво просимо, ", {"selector":"@p"}, "!"]. Селектор розв'язується в момент виконання команди, тому завжди показує правильне ім'я.
Чи можна використовувати /tellraw у командному блоці?
Так — і для довгих повідомлень це єдиний практичний варіант. Введення в чаті обмежено 256 символами; командні блоки підтримують до 32 767. Встановіть блок у режим Impulse, Unconditional, Needs Redstone і запускайте кнопкою або важелем.
Яке обмеження символів для /tellraw?
256 символів при введенні в чат. 32 767 символів у командному блоці. Навіть складні багатосегментні повідомлення з подіями кліку та наведення рідко перевищують 600–800 символів — командних блоків більш ніж достатньо.
Як відобразити значення з таблиці досягнень?
Використовуйте компонент score: {"score":{"name":"@p","objective":"coins"}}. Він зчитує значення з таблиці coins для цільового гравця в момент виконання команди. Можна комбінувати з іншими компонентами в масиві: «Ваші монети: 347 ✦».
Чи підтримує /tellraw кілька рядків?
Так. Використовуйте \n всередині рядка для переносу: {"text":"Рядок перший\nРядок другий"}. На більшості поточних версій сервера це працює в чаті. Тестуйте на своїй конкретній версії перед використанням у продакшні.