Paper plugin (1.19.4+) that brings custom emojis to the chat and tab complete! Resource pack auto generation
ImageEmojis is a Paper (1.19.4+) plugin that allows you to add your custom emojis on your server.
[IMPORTANT] The plugin doesn't support Spigot yet due to the lack of compatibility with many features of Paper API.
π Screenshots
π» Commands
/emojis list
β opens a book with all currently added emojis./emojis update
β fetches the latest version of the emojis resource pack from the server. Intended to be used in case when the admin updated emojis and reloaded the plugin while you were playing. (Alternatively, you can just rejoin and not use this command)./emojis reload
β reloads the plugin. Generates the resource pack based on the./plugins/ImageEmojis/emojis/
directory.
Aliases: /ie
, /imageemojis
.
π Permissions
imageemojis.admin
(for operators by default) β Allows to use/emojis reload
.imageemojis.update
β Allows to use/emojis update
.imageemojis.list
β Allows to use/emojis list
.
π Key features
Automated resource pack generation β the resource pack is generated every time the plugin starts or gets reloaded. The only thing you need to do is provide your server IP in the configuration and open the TCP port on the server (5000 by default).
Chat suggestions - emoji suggestions when a player types a message in chat. You can choose from three suggestion modes:
NONE
- disable chat suggestions.TEMPLATES
(set by default) - suggest templates of emojis when typing (e.g., :clueless:).ACTUAL
- suggest actual emojis (their UTF-8 symbols) when typing. (e.g.,).
Ability to merge emojis with your server resource pack: you can set the
mergeWithServerResourcePack
field totrue
in theconfig.yml
and put your resource pack into the../ImageEmojis/
directory with theserverResourcePack.zip
filename (the filename can be configured).
[NOTE] You should disable your resource pack in theserver.properties
if you enabled it earlier.Sign replacement β you can enable/disable replacement of emoji templates on signs.
Anvil replacement β you can enable/disable replacement of emoji templates when renaming an item in the anvil.
Command replacement β you can enable/disable replacement of emoji templates when sending commands. By default, the plugin automatically preprocesses all commands sent by players and changes emoji templates to actual emojis.
π Default config
[CAUTION] Don't forget to put your public IP into the serverIp
field.
Also, you should open the TCP port on your machine for the plugin to work. Port 5000 by default.
Otherwise, nothing will work.
serverIp: "127.0.0.1" # Your public server IP goes here
# The port the resource pack will be hosted on. When the plugin launches, an HTTP server is starting on that port.
# It should be opened on the machine so that players can download the resource pack.
webServerPort: 5000
# Resource pack enforcement policies:
# NONE - The resource pack won't be loaded on join. This option can fit servers where players prefer to download the resource pack manually
# OPTIONAL - Players can decline the resource pack from loading on join
# REQUIRED - Players are forced to play with the resource pack
enforcementPolicy: "OPTIONAL"
replaceInAnvil: true # Replace emojis in anvils? (e.g., when renaming items).
replaceInSigns: true # Replace emojis in signs? (e.g., after editing them).
replaceInCommands: true # Replace emojis when sending a command? (e.g., in the "/msg" or "/say" commands).
# This feature MAY NOT WORK if you use chat formatters such as "VaultChatFormatter" or "LPC" due to their incompatibility with Paper Components.
# If you are looking for a simple chat formatter that doesn't break messages, you can consider using mine: https://github.com/MrQuackDuck/PlainChatFormatter
emojiHoverEnabled: true # Whether an emoji name will appear when you put your cursor over the emoji symbol in the chat
emojiHoverColor: "#AAAAAA" # The color of the text in hover
# Chat suggestions modes (when typing a message in the chat and hitting TAB on the keyboard):
# NONE - No suggestions.
# TEMPLATES - Suggest templates (e.g.: ":sob:").
# ACTUAL - Suggest actual emoji (e.g.: "π").
suggestionMode: "TEMPLATES"
# Should the plugin merge the "emojis.zip" resource pack with the server resource pack?
# If "true", you should put your resource pack in the "/plugins/ImageEmojis/" directory.
# The output will be generated within the "emojis.zip" archive.
mergeWithServerResourcePack: false
mergeServerResourcePackName: "serverResourcePack.zip" # Name of the resource pack to merge "emojis.zip" with
messages:
"resource-pack-description": "&nImage Emojis"
"only-players": "&cOnly players can use this command!"
"info-content": "&#F4CA16[ImageEmojis] &#B3BEC4There are currently &#D8E5EC&n%s&r&#B3BEC4 emojis!
\n &#D8E5EC&n/emojis list&r&#B3BEC4 - see the emojis list.
\n &#D8E5EC&n/emojis update&r&#B3BEC4 - fetch the latest version of the resource pack if it was updated during current game session."
"resource-pack-up-to-date": "&#F4CA16[ImageEmojis] &#B3BEC4The resource pack is now up to date!"
"reloaded": "&#F4CA16[ImageEmojis] &#B3BEC4Reloaded!"
"command-not-found": "&#F4CA16[ImageEmojis] &cOops! That command doesn't exist or you don't have enough permissions."
"command-disabled": "&#F4CA16[ImageEmojis] &#B3BEC4This command is disabled on that server."
"an-error-occurred": "&#F4CA16[ImageEmojis] &cAn error occurred during reload! Check the console logs for details."
π Installation guide
[IMPORTANT] Before getting started, make sure the plugin's version is compatible with your server version.
- Download the latest version of the plugin from the Releases tab.
- Put the downloaded
.jar
into the./plugins
folder of your server. - Restart your server or enter the
reload
command. - Go to the
./plugins/ImageEmojis
directory and openconfig.yml
. - Make sure to put your server's public IP into the
serverIp
field. - Open a TCP port (5000 by default) on your server equal to the
webServerPort
field from theconfig.yml
. - Run the
/emojis reload
command.
Congrats! Now you're ready to use the plugin. Put your emojis into the ../ImageEmojis/emojis/
directory, reload the plugin, and enter the /emojis update
command on your client (or just rejoin)!