PurpurClient

![](https://i.imgur.com/UtemmjT.png)

### PurpurClient

PurpurClient is a Fabric client mod that aims to fix various client-side bugs in the game. A lot of these bugfixes end up in the vanilla game eventually, but for those who can’t wait, this mod is for you.

PurpurClient is designed to work together with [Purpur](https://purpurmc.org) servers (hence the name), but most features can still be used with any server type, as these are fixes to vanilla bugs that are not caused by Purpur itself.

If you have any questions, please join us in our Discord at https://purpurmc.org/discord.

[![Discord Shield Label](https://img.shields.io/discord/685683385313919172.svg?label=&logo=discord&logoColor=ffffff&color=7389D8&labelColor=6A7EC2)](https://purpurmc.org/discord)

### Current Features in 1.20.2:

* Customizable mob passenger offsets
* Adds bee counts inside beehives to debug screen¹
* Fancy Purpur-themed Loading Screen (can be disabled in the config)
* Fancy Window Title that changes based on what kind of server you’re in ([translations can be PR’d](./src/main/resources/assets/purpurclient/lang/))
* Displays Custom Enchantments instead of stripping them from the client
* Removes the client-side limit of 255 levels

¹ only works when connected to [Purpur](https://github.com/PurpurMC/Purpur) servers

### Past Features (to get an idea of what this mod has done and will do in the future):

* Asynchronous chat processing (removed since Mojang’s new chat system is confusing)
* Fix rain particles appearing under water [MC-131770](https://bugs.mojang.com/browse/MC-131770)
* Fix sky darkening when riding minecart not on tracks [MC-51150](https://bugs.mojang.com/browse/MC-51150)
* Fix chat stutter [MC-218167](https://bugs.mojang.com/browse/MC-218167)
* Fix warnings in logs about invalid flying attributes [Purpur-744](https://github.com/PurpurMC/Purpur/pull/744)
* Fix debug markers ignoring the blue and red values that are set [MC-234030](https://bugs.mojang.com/browse/MC-234030) (Shows as Unresolved even though it’s been fixed)
* Fix client preemptively removing item entities from the world (MC-???)

Note: PurpurClient adds a fancy animated splash screen on game startup alongside a better window title message. Both of these can be disabled in the config if preferred.

### Donate

We accept donations via [GitHub Sponsors](https://github.com/sponsors/purpurmc) and the [OpenCollective](https://opencollective.com/purpurmc).

[![GitHub Sponsors](https://i.imgur.com/eVDnwCb.png)](https://github.com/sponsors/purpurmc)
[![OpenCollective](https://i.imgur.com/XLEXIiP.png)](https://opencollective.com/purpurmc)

Proxy Protocol Support

# Proxy Protocol Support

Proxy Protocol Support is a [Fabric](https://fabricmc.net/) and [Quilt](https://quiltmc.org/) mod which adds support for [Proxy Protocol (HAProxy)](https://www.haproxy.com/blog/haproxy/proxy-protocol/ “Proxy Protocol (HAProxy)”) for your Minecraft server. It allows to accept both proxied and direct connections simultaneously.

For example you can use [TCPShield](https://tcpshield.com/ “TCPShield”) or other software ([Nginx](https://nginx.org/en/docs/stream/ngx_stream_proxy_module.html#proxy_protocol “Nginx”), [FRP](https://gofrp.org/)) to forward traffic, and hide your server’s IP address. Without Proxy Protocol, your console will only show the proxy’s IP address. By reading the Proxy Protocol packet, this mod makes showing the player’s real IP address possible.

**This is a Server-Side only mod; it does nothing when installed on a client.**

Supports Minecraft versions 1.14-26.1 and probably later (untested).

## Secure Hybrid Mode

This mod allows your Minecraft server to simultaneously accept connections from a **trusted proxy** (using the PROXY protocol) and from **trusted direct-access IPs**. This is perfect for setups where you want to hide your server’s IP behind a proxy, while still allowing admins or local players to connect directly.

The mod operates on a secure **”Default Deny”** principle. If an incoming connection’s IP address is not explicitly whitelisted in one of the lists below, it will be **rejected**. This prevents unauthorized users from bypassing your proxy and connecting directly to your server’s real IP address.

## Configuration

Configuration is handled in `config/proxy_protocol_support.json`.

### `enableProxyProtocol`
Set to `true` to enable the mod’s functionality.
– **Default**: `true`

### `proxyServerIPs`
A list of IP addresses that are your trusted proxy servers. Connections from these IPs **must** send a PROXY Protocol header.
– **Default**: `[“127.0.0.1”]`

### `directAccessIPs`
A list of IPs or CIDR ranges that are allowed to connect directly **without** a PROXY Protocol header. This is ideal for admins, local network players, and server-side tools.
– **Default**: `[“127.0.0.1”, “192.168.0.0/16”]`

### `whitelistTCPShieldServers`
When `true`, the mod automatically fetches TCPShield’s official proxy IPs and adds them to the trusted `proxyServerIPs` list.
– **Default**: `false`

## Example Scenarios

#### Scenario 1: Server behind FRP on the same machine
You run `frpc` on the same machine as the Minecraft server. Players from the internet connect through the proxy. You want to connect directly from your gaming PC on the same LAN (`192.168.1.100`).

“`toml
proxyServerIPs = [“127.0.0.1”]
directAccessIPs = [“127.0.0.1”, “192.168.1.100”]
“`

#### Scenario 2: Server protected by a remote proxy service
Your server is at home, and you use a VPS with the IP 203.0.113.10 as a proxy. You want your entire home network (192.168.0.0/24) to have direct access.

“`toml
proxyServerIPs = [“203.0.113.10”]
directAccessIPs = [“127.0.0.1”, “192.168.0.0/24”]
“`

#### Scenario 3: Maximum Security (Proxy Only)
You only want to allow connections through your proxies and nothing else (not even from the local machine).
“`toml
proxyServerIPs = [“1.2.3.4”, “5.6.7.8”] # Your proxy IPs
directAccessIPs = [] # Leave empty
“`

Looking for Minecraft server? Visit [BedrockHost.pl](https://bedrockhost.pl/)

Programmer Art Fixes

# Programmer Art Fixes
A collection of small fixes for programmer art.

![Comparison image](https://cdn.modrinth.com/data/lGpX2qup/images/7567240542f973654ae86248a1d5812f55d89d4b.png)

**Please note that you must enable Programmer Art alongside this resource pack!**

Pride Pack

# Pridepack

Modrinth Downloads
CurseForge Downloads
GitHub Downloads
GitHub Commit Activity

This is Pridepack, a Resource Pack made by [Pridecraft Studios](https://pridecraft.gay). It comes with many LGBT Pride additions, such as paintings, beds, mobs and Main Menu changes.

## Donate

You can support the developers of Pridecraft Studios by donating on Patreon

[![patreon](https://raw.githubusercontent.com/intergrav/devins-badges/c7fd18efdadd1c3f12ae56b49afd834640d2d797/assets/cozy/donate/patreon-singular_vector.svg)](https://donate.pridecraft.gay)

## Screenshots

![Various Pridepack features sitting on a colourful surface.](https://cdn.modrinth.com/data/yPbBrzEX/images/bd6216e3669d2290f943be8ded4ad478a6ec2ce6.png)

![The chiseled bookshelves and candle textures from Pridepack](https://cdn.modrinth.com/data/yPbBrzEX/images/f9a25af9d1259bac1dd6bccbb63f356e77335a70.png)

![An aquarium full of axolotls with Pridepack textures](https://cdn.modrinth.com/data/yPbBrzEX/images/6eac8b9a3dea4c106649a05e44bdfa52da77d018.png)

![A gallery displaying many of Pridepack’s paintings](https://cdn.modrinth.com/data/yPbBrzEX/images/b6329b27606003d3121749f6131b3d03a4bfacf5.png)

![Two foxes on a red carpet.](https://cdn.modrinth.com/data/yPbBrzEX/images/efb379d70a7a9590a6583716607a5561e3d1fc40.png)

![A bedroom with some of Pridepack’s features.](https://cdn.modrinth.com/data/yPbBrzEX/images/9fabedea3df65957710435dd23640e8959a611e7.png)

## Who

Pridecraft Studios is a collective modding group that creates resource packs, tooling, and our flagship mod, Joy. Our team of volunteers strive to create prideful content for the diverse Minecraft community <3. We target both Java and Bedrock editions, hoping to create memorable experiences for you. ## Other Downloads [![Download on Modrinth](https://raw.githubusercontent.com/intergrav/devins-badges/c7fd18efdadd1c3f12ae56b49afd834640d2d797/assets/cozy-minimal/available/modrinth_vector.svg)](https://modrinth.com/project/pridepack) [![Download on CurseForge](https://raw.githubusercontent.com/intergrav/devins-badges/c7fd18efdadd1c3f12ae56b49afd834640d2d797/assets/cozy-minimal/available/curseforge_vector.svg)](https://www.curseforge.com/minecraft/texture-packs/pride-pack) [![Check out the GitHub](https://raw.githubusercontent.com/intergrav/devins-badges/c7fd18efdadd1c3f12ae56b49afd834640d2d797/assets/cozy-minimal/available/github_vector.svg)](https://git.pridecraft.gay/pridepack) ## Socials [![Join our Discord](https://raw.githubusercontent.com/intergrav/devins-badges/c7fd18efdadd1c3f12ae56b49afd834640d2d797/assets/compact/social/discord-plural_vector.svg)](https://discord.pridecraft.gay) [![Chat with us on Mastodon](https://raw.githubusercontent.com/intergrav/devins-badges/c7fd18efdadd1c3f12ae56b49afd834640d2d797/assets/compact/social/mastodon-plural_vector.svg)](https://tech.lgbt/@pridecraft) [![Watch us on Youtube](https://raw.githubusercontent.com/intergrav/devins-badges/c7fd18efdadd1c3f12ae56b49afd834640d2d797/assets/compact/social/youtube-plural_vector.svg)](https://youtube.com/@pridecraftstudios) [![Chat with us on Bluesky](https://badger-api-staging.worldwidepixel.ca/compact?gradientStart=00A5E4&gradientEnd=0076B1&lineOne=Chat%20with%20us%20on&lineTwo=Bluesky&colourOne=FFFFFF&colourTwo=FFFFFF&iconUrl=https://raw.githubusercontent.com/OzzyCzech/bluesky-icon/main/dist/bluesky-icon.white.png)](https://bsky.app/profile/pridecraft.gay) [![Check out our Instagram](https://badger-api-staging.worldwidepixel.ca/compact?gradientStart=BA5353&gradientEnd=61003D&lineOne=Check%20out%20our&lineTwo=Instagram&colourOne=FFFFFF&colourTwo=FFF&iconUrl=https://uxwing.com/wp-content/themes/uxwing/download/brands-and-social-media/instagram-white-icon.png)](https://instagram.com/pridecraftstudios) # Licenses

Assets license [CC BY-SA 4.0]

Pridepack by Pridecraft Studios is licensed under CC BY-SA 4.0

Music license [ARR + Permissions]

The soundtracks for Joy are licensed from [lynndova](https://lynndova.com/), under different terms and are **not** distributed under CC BY-SA 4.0. [See here for licensing terms.](https://git.pridecraft.gay/pridepack/blob/main/LICENSE-MUSIC)

In short:
– You must provide credit to lynndova
– You can not reupload this soundtrack verbatim
– You may use this soundtrack under the fair use doctrine including but not limited to the following:
– Using this soundtrack in videos or streams

If you are unsure if you may use the soundtracks or wish to license the soundtracks for your own use, contact lynndova using [their public email](mailto:[email protected]).

Powder Snow Alerts

# Powder Snow Alerts
Makes powdered snow have an exclamation mark.
Thats it.

### Example
![Example image](https://cdn.modrinth.com/data/ci7xxTFr/images/4674ebfaf6de61f0ab5f1d51e0967da252b07d4b.png)

## FAQ
### Not Updated to version x:
The pack should work on all versions of the game, but if not, open an issue

### Usage in projects/modpacks:
I dont care if you use it in a project, however please credit me.

Potato Craft-8x

⭐ PotatoCraft 8x – Ultra FPS Boost Texture Pack ⭐

Do you want smooth FPS and a potato-friendly Minecraft? 🍟
PotatoCraft 8x is a lightweight, simplified resource pack designed for Minecraft Java Edition.

🔥 8×8 textures (down from the default 16×16)
⚡ Huge FPS boost on low-end devices
🎮 Perfect for PvP and survival gameplay
🌍 Works on all the latest Minecraft Java versions
💻 Tested on both mobile and PC

Whether you’re on a low-end phone, old laptop, or a beast PC, this pack makes the game feel faster, cleaner, and smoother.

💡 Why PotatoCraft?
Because even the weakest potato deserves to play Minecraft without lag! 🥔

📥 Download now and turn your Minecraft into a lag-free experience!

Polymer

# Polymer
It’s a library for creating server side content, that work for player’s without mods or (required) resource packs!
You can create blocks, items and entities, that not only will work fully on server side (and singleplayer), but also
are represented on server the same as normal (vanilla/modded) ones (unlike bukkit/spigot ones, that are stored as vanilla block).

This library also should work correctly with other, non-polymer mods and PolyMC!

## For players:
This library/mod includes few small utilities that can be useful for playing on servers using Polymer.

Few things it does on the client:

– Added compatibility to multiple client side mods ([EMI](https://modrinth.com/mod/emi), [Just Enough Items](https://www.curseforge.com/minecraft/mc-mods/jei), [Roughly Enough Items](https://modrinth.com/mod/roughly-enough-items), [WTHIT](https://modrinth.com/mod/wthit), [Jade](https://www.curseforge.com/minecraft/mc-mods/jade), [AppleSkin](https://modrinth.com/mod/appleskin))
– Correct information on F3 debug screen
– Full support for Polymer item picking
– Creative item tabs synced with server
– Fixes for server resource pack while using [Canvas or Iris](https://github.com/IrisShaders/Iris/issues/1042)

## For server owners/mod pack makers:
Any mod using this library shouldn’t be required on the client side! However, as stated above, there
are few small quality of life things added with it. So you might want to recommend it or include with
your mod pack.

If you have a server and polymer based mods you are using include a resource pack, you might want since version 0.2.5
“packed/all” version of polymer contains AutoHost module, allowing you to setup automatic building and sending of packs
to clients.

If you use 1.18.x or older, use this instead: https://github.com/aws404/polypack-host

## For mod developers:
All information about usage can be found at https://polymer.pb4.eu!

## What this library/mod doesn’t do
This mod doesn’t convert existing mods to server side ones. While it’s possible to do so with manual coding,
for that you might want to use [PolyMC](https://github.com/TheEpicBlock/PolyMc) as long as you don’t
need to use regular mods on the client (for example with a modpack).

## Commands
– `/polymer` – Display about
– `/polymer creative` – Opens list of Polymer/Server-Side creative tabs (Available to anyone with creative)
– `/polymer generate` – Generates polymer resourcepack as `/polymer-resourcepack.zip`

## Download
– [Modrinth](https://modrinth.com/mod/polymer)
– [Curseforge](https://www.curseforge.com/minecraft/mc-mods/polymer)
– [Github Releases](https://github.com/Patbox/polymer/releases)

### [Check list of known mods using Polymer](https://github.com/Patbox/polymer/blob/dev/1.21/MODS.md)

Polydex

# Polydex
Polydex is a mod allowing you to see player-friendly information about
blocks and items on servers. It designed for survival-like, vanilla client
compatible servers using [Polymer](https://github.com/Patbox/polymer/) mods
or [PolyMC](https://github.com/TheEpicBlock/PolyMc), through it can be used
in modded or vanilla-content setting!

It can display tooltip (as a bossbar or sidebar) with basic information
about targeted block or entity similarly to mods like WTHIT/HWYLA/WAILA.

It also adds simple way of checking recipes of items with chest gui interface
inspired by mods like Roughly Enough Items / Just Enough Items.

It’s configurable and bundles some api, so other mods can be compatible with it.
To use it, use modrinth maven™.

## Video

## Addons:
– [Polydex Bridge](https://modrinth.com/mod/polydex-bridge) – Did you want to use polydex-compatible mods, but you would prefer using [EMI](https://modrinth.com/mod/emi) to view them? Then you will like this mod! Polydex Bridge bridges Polydexes recipe viewing with EMI, allowing for best client side experience. You need to install it on both side through, as otherwise it won’t work!

Pixelated Square Entity Shadows

Makes the Shadows under Entities Pixelated Squares.

![Pixelated Square Entity Shadows](https://cdn.modrinth.com/data/cached_images/f7fe3aec897727745c66aeded8b23b098a96f897.png)

VS Vanilla:

![Vanilla](https://cdn.modrinth.com/data/cached_images/922339ef81d943ca04fbc9c22ac8bd15808a9315.png)

Pixel Twemoji 9x

# Pixel perfect Twemoji (9×9 version)
This resource pack adds **all** of Twemoji, redrawn by hand as pixel art
at 9×9 pixels, to the default font in Minecraft: Java Edition
version 1.16 or later. Twemoji is the emoji set used by Discord and Twitter.

![Grid of hundreds of emoji](https://cdn.modrinth.com/data/cached_images/03a4afa6c2eb8555229e12ddb6effa0cdac53606.png)
*Just some of the emoji in the pack*

## Installation
Please download the .zip file from the Versions section, put it in your
resource packs folder and select it for use in-game.

You can also embed this pack into another pack,
for use on a server or custom world for example.
Please remember to credit the project as it is
one of the requirements of the project license.

## Basic usage
![Chat example](https://cdn.modrinth.com/data/q2fYGCpL/images/f04c16ff124adb294dbac0ec6c71059feddecd21.png)

Most standard emoji characters will just work if you copy and paste them in or
use some kind of emoji input. For example, try copying emoji from
[this site](https://emojifinder.com/) or using the Windows emoji picker (Win+.).

However, emoji that consist of sequences of multiple character are not supported
by vanilla and will show up as multiple, separate characters. Sorry.
See below for ways to develop around this.

Sample of Emoji to Copy-Paste

© ® ‼ ⁉ ™ ℹ ↔ ↕ ↖ ↗ ↘ ↙ ↩ ↪ ⌚ ⌛ ⌨ ⏏ ⏩ ⏪ ⏫ ⏬ ⏭ ⏮ ⏯ ⏰ ⏱ ⏲ ⏳ ⏸ ⏹ ⏺ Ⓜ ▪ ▫ ▶ ◀ ◻ ◼ ◽ ◾ ☀ ☁ ☂ ☃ ☄ ☎ ☑ ☔ ☕ ☘ ☝ ☠ ☢ ☣ ☦ ☪ ☮ ☯ ☸ ☹ ☺ ♀ ♂ ♈ ♉ ♊ ♋ ♌ ♍ ♎ ♏ ♐ ♑ ♒ ♓ ♟ ♠ ♣ ♥ ♦ ♨ ♻ ♾ ♿ ⚒ ⚓ ⚔ ⚕ ⚖ ⚗ ⚙ ⚛ ⚜ ⚠ ⚡ ⚧ ⚪ ⚫ ⚰ ⚱ ⚽ ⚾ ⛄ ⛅ ⛈ ⛎ ⛏ ⛑ ⛓ ⛔ ⛩ ⛪ ⛰ ⛱ ⛲ ⛳ ⛴ ⛵ ⛷ ⛸ ⛹ ⛺ ⛽ ✂ ✅ ✈ ✉ ✊ ✋ ✌ ✍ ✏ ✒ ✔ ✖ ✝ ✡ ✨ ✳ ✴ ❄ ❇ ❌ ❎ ❓ ❔ ❕ ❗ ❣ ❤ ➕ ➖ ➗ ➡ ➰ ➿ ⤴ ⤵ ⬅ ⬆ ⬇ ⬛ ⬜ ⭐ ⭕ 〰 〽 ㊗ ㊙ 🀄 🃏 🅰 🅱 🅾 🅿 🆎 🆑 🆒 🆓 🆔 🆕 🆖 🆗 🆘 🆙 🆚 🇦 🇧 🇨 🇩 🇪 🇫 🇬 🇭 🇮 🇯 🇰 🇱 🇲 🇳 🇴 🇵 🇶 🇷 🇸 🇹 🇺 🇻 🇼 🇽 🇾 🇿 🈁 🈂 🈚 🈯 🈲 🈳 🈴 🈵 🈶 🈷 🈸 🈹 🈺 🉐 🉑 🌀 🌁 🌂 🌃 🌄 🌅 🌆 🌇 🌈 🌉 🌊 🌋 🌌 🌍 🌎 🌏 🌐 🌑 🌒 🌓 🌔 🌕 🌖 🌗 🌘 🌙 🌚 🌛 🌜 🌝 🌞 🌟 🌠 🌡 🌤 🌥 🌦 🌧 🌨 🌩 🌪 🌫 🌬 🌭 🌮 🌯 🌰 🌱 🌲 🌳 🌴 🌵 🌶 🌷 🌸 🌹 🌺 🌻 🌼 🌽 🌾 🌿 🍀 🍁 🍂 🍃 🍄 🍅 🍆 🍇 🍈 🍉 🍊 🍋 🍌 🍍 🍎 🍏 🍐 🍑 🍒 🍓 🍔 🍕 🍖 🍗 🍘 🍙 🍚 🍛 🍜 🍝 🍞 🍟 🍠 🍡 🍢 🍣 🍤 🍥 🍦 🍧 🍨 🍩 🍪 🍫 🍬 🍭 🍮 🍯 🍰 🍱 🍲 🍳 🍴 🍵 🍶 🍷 🍸 🍹 🍺 🍻 🍼 🍽 🍾 🍿 🎀 🎁 🎂 🎃 🎄 🎅 🎆 🎇 🎈 🎉 🎊 🎋 🎌 🎍 🎎 🎏 🎐 🎑 🎒 🎓 🎖 🎗 🎙 🎚 🎛 🎞 🎟 🎠 🎡 🎢 🎣 🎤 🎥 🎦 🎧 🎨 🎩 🎪 🎫 🎬 🎭 🎮 🎯 🎰 🎱 🎲 🎳 🎴 🎵 🎶 🎷 🎸 🎹 🎺 🎻 🎼 🎽 🎾 🎿 🏀 🏁 🏂 🏃 🏄 🏅 🏆 🏇 🏈 🏉 🏊 🏋 🏌 🏍 🏎 🏏 🏐 🏑 🏒 🏓 🏔 🏕 🏖 🏗 🏘 🏙 🏚 🏛 🏜 🏝 🏞 🏟 🏠 🏡 🏢 🏣 🏤 🏥 🏦 🏧 🏨 🏩 🏪 🏫 🏬 🏭 🏮 🏯 🏰 🏳 🏴 🏵 🏷 🏸 🏹 🏺 🏻 🏼 🏽 🏾 🏿 🐀 🐁 🐂 🐃 🐄 🐅 🐆 🐇 🐈 🐉 🐊 🐋 🐌 🐍 🐎 🐏 🐐 🐑 🐒 🐓 🐔 🐕 🐖 🐗 🐘 🐙 🐚 🐛 🐜 🐝 🐞 🐟 🐠 🐡 🐢 🐣 🐤 🐥 🐦 🐧 🐨 🐩 🐪 🐫 🐬 🐭 🐮 🐯 🐰 🐱 🐲 🐳 🐴 🐵 🐶 🐷 🐸 🐹 🐺 🐻 🐼 🐽 🐾 🐿 👀 👁 👂 👃 👄 👅 👆 👇 👈 👉 👊 👋 👌 👍 👎 👏 👐 👑 👒 👓 👔 👕 👖 👗 👘 👙 👚 👛 👜 👝 👞 👟 👠 👡 👢 👣 👤 👥 👦 👧 👨 👩 👪 👫 👬 👭 👮 👯 👰 👱 👲 👳 👴 👵 👶 👷 👸 👹 👺 👻 👼 👽 👾 👿 💀 💁 💂 💃 💄 💅 💆 💇 💈 💉 💊 💋 💌 💍 💎 💏 💐 💑 💒 💓 💔 💕 💖 💗 💘 💙 💚 💛 💜 💝 💞 💟 💠 💡 💢 💣 💤 💥 💦 💧 💨 💩 💪 💫 💬 💭 💮 💯 💰 💱 💲 💳 💴 💵 💶 💷 💸 💹 💺 💻 💼 💽 💾 💿 📀 📁 📂 📃 📄 📅 📆 📇 📈 📉 📊 📋 📌 📍 📎 📏 📐 📑 📒 📓 📔 📕 📖 📗 📘 📙 📚 📛 📜 📝 📞 📟 📠 📡 📢 📣 📤 📥 📦 📧 📨 📩 📪 📫 📬 📭 📮 📯 📰 📱 📲 📳 📴 📵 📶 📷 📸 📹 📺 📻 📼 📽 📿 🔀 🔁 🔂 🔃 🔄 🔅 🔆 🔇 🔈 🔉 🔊 🔋 🔌 🔍 🔎 🔏 🔐 🔑 🔒 🔓 🔔 🔕 🔖 🔗 🔘 🔙 🔚 🔛 🔜 🔝 🔞 🔟 🔠 🔡 🔢 🔣 🔤 🔥 🔦 🔧 🔨 🔩 🔪 🔫 🔬 🔭 🔮 🔯 🔰 🔱 🔲 🔳 🔴 🔵 🔶 🔷 🔸 🔹 🔺 🔻 🔼 🔽 🕉 🕊 🕋 🕌 🕍 🕎 🕐 🕑 🕒 🕓 🕔 🕕 🕖 🕗 🕘 🕙 🕚 🕛 🕜 🕝 🕞 🕟 🕠 🕡 🕢 🕣 🕤 🕥 🕦 🕧 🕯 🕰 🕳 🕴 🕵 🕶 🕷 🕸 🕹 🕺 🖇 🖊 🖋 🖌 🖍 🖐 🖕 🖖 🖤 🖥 🖨 🖱 🖲 🖼 🗂 🗃 🗄 🗑 🗒 🗓 🗜 🗝 🗞 🗡 🗣 🗨 🗯 🗳 🗺 🗻 🗼 🗽 🗾 🗿 😀 😁 😂 😃 😄 😅 😆 😇 😈 😉 😊 😋 😌 😍 😎 😏 😐 😑 😒 😓 😔 😕 😖 😗 😘 😙 😚 😛 😜 😝 😞 😟 😠 😡 😢 😣 😤 😥 😦 😧 😨 😩 😪 😫 😬 😭 😮 😯 😰 😱 😲 😳 😴 😵 😶 😷 😸 😹 😺 😻 😼 😽 😾 😿 🙀 🙁 🙂 🙃 🙄 🙅 🙆 🙇 🙈 🙉 🙊 🙋 🙌 🙍 🙎 🙏 🚀 🚁 🚂 🚃 🚄 🚅 🚆 🚇 🚈 🚉 🚊 🚋 🚌 🚍 🚎 🚏 🚐 🚑 🚒 🚓 🚔 🚕 🚖 🚗 🚘 🚙 🚚 🚛 🚜 🚝 🚞 🚟 🚠 🚡 🚢 🚣 🚤 🚥 🚦 🚧 🚨 🚩 🚪 🚫 🚬 🚭 🚮 🚯 🚰 🚱 🚲 🚳 🚴 🚵 🚶 🚷 🚸 🚹 🚺 🚻 🚼 🚽 🚾 🚿 🛀 🛁 🛂 🛃 🛄 🛅 🛋 🛌 🛍 🛎 🛏 🛐 🛑 🛒 🛕 🛖 🛗 🛜 🛝 🛞 🛟 🛠 🛡 🛢 🛣 🛤 🛥 🛩 🛫 🛬 🛰 🛳 🛴 🛵 🛶 🛷 🛸 🛹 🛺 🛻 🛼 🟠 🟡 🟢 🟣 🟤 🟥 🟦 🟧 🟨 🟩 🟪 🟫 🟰 🤌 🤍 🤎 🤏 🤐 🤑 🤒 🤓 🤔 🤕 🤖 🤗 🤘 🤙 🤚 🤛 🤜 🤝 🤞 🤟 🤠 🤡 🤢 🤣 🤤 🤥 🤦 🤧 🤨 🤩 🤪 🤫 🤬 🤭 🤮 🤯 🤰 🤱 🤲 🤳 🤴 🤵 🤶 🤷 🤸 🤹 🤺 🤼 🤽 🤾 🤿 🥀 🥁 🥂 🥃 🥄 🥅 🥇 🥈 🥉 🥊 🥋 🥌 🥍 🥎 🥏 🥐 🥑 🥒 🥓 🥔 🥕 🥖 🥗 🥘 🥙 🥚 🥛 🥜 🥝 🥞 🥟 🥠 🥡 🥢 🥣 🥤 🥥 🥦 🥧 🥨 🥩 🥪 🥫 🥬 🥭 🥮 🥯 🥰 🥱 🥲 🥳 🥴 🥵 🥶 🥷 🥸 🥹 🥺 🥻 🥼 🥽 🥾 🥿 🦀 🦁 🦂 🦃 🦄 🦅 🦆 🦇 🦈 🦉 🦊 🦋 🦌 🦍 🦎 🦏 🦐 🦑 🦒 🦓 🦔 🦕 🦖 🦗 🦘 🦙 🦚 🦛 🦜 🦝 🦞 🦟 🦠 🦡 🦢 🦣 🦤 🦥 🦦 🦧 🦨 🦩 🦪 🦫 🦬 🦭 🦮 🦯 🦰 🦱 🦲 🦳 🦴 🦵 🦶 🦷 🦸 🦹 🦺 🦻 🦼 🦽 🦾 🦿 🧀 🧁 🧂 🧃 🧄 🧅 🧆 🧇 🧈 🧉 🧊 🧋 🧌 🧍 🧎 🧏 🧐 🧑 🧒 🧓 🧔 🧕 🧖 🧗 🧘 🧙 🧚 🧛 🧜 🧝 🧞 🧟 🧠 🧡 🧢 🧣 🧤 🧥 🧦 🧧 🧨 🧩 🧪 🧫 🧬 🧭 🧮 🧯 🧰 🧱 🧲 🧳 🧴 🧵 🧶 🧷 🧸 🧹 🧺 🧻 🧼 🧽 🧾 🧿 🩰 🩱 🩲 🩳 🩴 🩵 🩶 🩷 🩸 🩹 🩺 🩻 🩼 🪀 🪁 🪂 🪃 🪄 🪅 🪆 🪇 🪈 🪐 🪑 🪒 🪓 🪔 🪕 🪖 🪗 🪘 🪙 🪚 🪛 🪜 🪝 🪞 🪟 🪠 🪡 🪢 🪣 🪤 🪥 🪦 🪧 🪨 🪩 🪪 🪫 🪬 🪭 🪮 🪯 🪰 🪱 🪲 🪳 🪴 🪵 🪶 🪷 🪸 🪹 🪺 🪻 🪼 🪽 🪿 🫀 🫁 🫂 🫃 🫄 🫅 🫎 🫏 🫐 🫑 🫒 🫓 🫔 🫕 🫖 🫗 🫘 🫙 🫚 🫛 🫠 🫡 🫢 🫣 🫤 🫥 🫦 🫧 🫨 🫰 🫱 🫲 🫳 🫴 🫵 🫶 🫷 🫸

Also, check out the [18x version](https://modrinth.com/resourcepack/pixel-twemoji-18x) with more detail!

## Supported mods
### [Symbol Chat](https://modrinth.com/mod/symbol-chat)
Easy to use emoji and symbol picker
![Symbol Chat integration](https://cdn.modrinth.com/data/q2fYGCpL/images/697e21c67cc5a134e4258c52d84e5124b4710c60.png)

## Remapped characters (for developers)
In order to have any support for emoji consisting of sequences they have been
remapped to unused single characters. An index of these can be found in
/assets/emoji_remappings/lang/en_us.json.

For example, `ud83dudc69u200dud83dudd2c` (👩+🔬=👩‍🔬)
is mapped to `udb80udf30` using this translation snippet:

“`json
“ud83dudc69u200dud83dudd2c”: “udb80udf30”
“`

**Please note that vanilla has no mechanism to
automatically convert to the remapped form.**
A custom emoji picker or some kind of mod/plugin is
required to make using these a smooth experience.

Because the index acts as a language file, a server side chat listener
could detect emoji sequences and turn them into translations like this one:

“`json
{“translate”: “ud83dudc69u200dud83dudd2c”}
“`

Any client with the pack installed can then perform the remapping for the server.
If the pack is not installed or the sequence is not found then it will just
fall back to displaying the sequence. This means that the server doesn’t need a
complete list of emoji sequences, just a way to detect potential ones.

(The [Unicode website](https://unicode.org/Public/emoji/latest/)
contains data files describing what is an emoji.)

## Shortcodes (for developers)
Shortcodes are a popular way to insert emoji by name. An index of shortcodes
can be found in /assets/emoji_shortcodes/lang/en_us.json.

For example, `:thinking:` is mapped to `ud83eudd14` (🤔):

“`json
“thinking”: “ud83eudd14”
“`

Emoji that need remapping already map to the remapped version.

**Please note that vanilla has no mechanism to
automatically convert shortcodes into emoji.**
Some kind of mod/plugin is required.

Because the index acts as a language file, a server side chat listener could
detect shortcodes and turn them into translations like this one:

“`json
{“translate”: “:thinking:”}
“`

Any client with the pack installed can then convert it for the server. If the
pack is not installed or the shortcode is not found then it will just fall back
to displaying the shortcode. This means that the server doesn’t need a complete
list of shortcodes, just a way to detect potential ones by finding substrings
beginning and ending with a colon `:`.

### Custom emoji?
Custom emoji could be created in a similar way by adding them to unused code
points of the default font and adding a translation with a shortcode.
For example, this translation snippet adds the shortcode `:pog:` for the
character `uE502`:

“`json
“:pog:”: “uE502”
“`

## Reverse shortcodes (for developers)
Maybe you want to display a name for each emoji, in some hover text for example.
That is where reverse shortcodes come in. An index of these can be found in
/assets/emoji_shortcodes_reverse/lang/en_us.json.

For example, `u200cud83eudd14` (`‌` + 🤔) is mapped to `:thinking:` using
this translation snippet:

“`json
“u200cud83eudd14”: “:thinking:”
“`

`u200c` is added to each entry to allow the index to be used as a language file
without conflicting with the other indexes. If the pack is not installed or the
emoji is not found then it will just fall back to displaying the characters,
including the invisible `u200c`.

A server side chat listener could detect shortcodes and
turn them into emoji with tooltips like this one:
“`json
{“translate”: “:thinking:”, “hoverEvent”: {“action”: “show_text”, “contents”: “:thinking:”}}
“`

With reverse shortcodes, it could also detect emoji and
emoji sequences and also give them tooltips like this one:
“`json
{“translate”:”ud83eudd14″,”hoverEvent”:{“action”:”show_text”,”contents”:{“translate”:”u200cud83eudd14″}}}
“`

## License
Graphics based on Twemoji Copyright (c) 2018 Twitter, Inc and other contributors, licensed under Creative Commons Attribution 4.0 International

Pixel art and resource pack adaptation Copyright (c) 2020 AmberW, licensed under Creative Commons Attribution 4.0 International