Pixel Twemoji 18x - это ресурспак для Майнкрафт, который добавляет в игру полный набор эмодзи Twemoji. Если вы активно пользуетесь Discord или Twitter, вы наверняка знакомы с этими эмодзи - теперь они доступны и в Minecraft. Все иконки перерисованы вручную в пиксельном стиле 18x18, так что они отлично вписываются в ванильную графику и не выглядят чужеродно.
Зачем это нужно?
Стандартный шрифт Minecraft не поддерживает эмодзи - при копировании они превращаются в квадратики или просто не отображаются. Этот ресурспак решает проблему: вы можете использовать эмодзи в чате, на табличках, в книгах и даже в названиях предметов. Особенно полезно на серверах, где игроки привыкли к эмодзи из других платформ.
Установка
Скачайте .zip-файл из раздела релизов, поместите его в папку resourcepacks и выберите в настройках игры. Всё работает на Minecraft Java Edition 1.16 и новее.
Ресурспак можно встроить в другой ресурспак - например, для сервера или кастомной карты. При использовании указывайте автора (этого требует лицензия).
Использование
Большинство стандартных эмодзи работают "из коробки" - просто скопируйте их из любого источника (например, с сайта Emojipedia) или используйте встроенный emoji-пикер Windows (Win + .). Вставьте в чат или в любое текстовое поле - и эмодзи отобразится.
Но есть нюанс: эмодзи, состоящие из нескольких символов (например, скин-тонировка, флаги, семейные пары), в ванильном Minecraft не поддерживаются - они будут отображаться как несколько отдельных символов. Для полной поддержки таких комбинаций потребуется мод или плагин (см. ниже).
Примеры эмодзи из набора (более 3000 символов) - не показаны.
Также доступна версия 9x, которая вписывается прямо в стандартный шрифт.
Поддержка модов
Symbol Chat
Удобный мод-палитра эмодзи и символов - с ним вставлять эмодзи гораздо проще.
Для разработчиков
В ресурспаке есть несколько механизмов для продвинутого использования.
Переопределённые символы (Remapped characters)
Чтобы хоть как-то поддерживать составные эмодзи, они сопоставлены с неиспользуемыми одиночными символами. Индекс лежит в /assets/emoji_remappings/lang/en_us.json. Пример:
"\ud83d\udc69\u200d\ud83d\udd2c": "\udb80\udf30"
Важно: ванильный Minecraft не умеет автоматически преобразовывать последовательности в эту форму. Для этого нужен кастомный emoji-пикер или мод/плагин.
Так как индекс работает как языковой файл, серверный чат-листенер может определять эмодзи-последовательности и превращать их в переводы:
{"translate": "\ud83d\udc69\u200d\ud83d\udd2c"}
Клиент с установленным ресурспаком выполнит переопределение. Если ресурспак не установлен или последовательность не найдена - просто отобразится исходная последовательность. Серверу не нужен полный список эмодзи, достаточно детектить потенциальные последовательности (например, по данным Unicode).
Шорткоды (Shortcodes)
Популярный способ вставки эмодзи по имени. Индекс - /assets/emoji_shortcodes/lang/en_us.json. Пример:
"thinking": "\ud83e\udd14"
Эмодзи, требующие переопределения, уже сопоставлены с переопределённым символом.
Важно: ванильный Minecraft не умеет автоматически преобразовывать шорткоды. Нужен мод/плагин.
Индекс работает как языковой файл - серверный листенер может определять шорткоды (по двоеточиям) и заменять их на переводы:
{"translate": ":thinking:"}
Клиент с ресурспаком выполнит конвертацию. Если ресурспака нет - отобразится исходный шорткод.
Кастомные эмодзи
Можно создать свои эмодзи, добавив их в неиспользуемые кодовые точки шрифта и добавив перевод с шорткодом. Например:
":pog:": "\uE502"
Обратные шорткоды (Reverse shortcodes)
Если нужно отображать название для каждого эмодзи (например, во всплывающей подсказке), используйте обратные шорткоды. Индекс - /assets/emoji_shortcodes_reverse/lang/en_us.json. Пример:
"\u200c\ud83e\udd14": ":thinking:"
Символ \u200c (невидимый) добавлен, чтобы не конфликтовать с другими индексами. Если ресурспак не установлен - отобразится эта последовательность с невидимым символом.
Серверный листенер может определять эмодзи и добавлять им подсказки:
{"translate":"\ud83e\udd14","hoverEvent":{"action":"show_text","contents":{"translate":"\u200c\ud83e\udd14"}}}
Лицензия
Графика основана на Twemoji (Twitter, Inc. и другие участники, 2018), лицензия Creative Commons Attribution 4.0 International. Пиксель-арт и адаптация ресурспака - AmberW (2020), та же лицензия.

