Home›Java›Mods›ReactChat
ReactChat
ModsJava

ReactChat

Java mod listed for Minecraft 1.12. Downloads from the MC Java Mods app on Android.

⬇ Download on Spigot
[​IMG]

What is it?

ReactChat allows you to add "reactions" to chat messages, alike to reacting on Slack or Discord! Reactions are in-game items / player heads that can be given specific names in configuration. Users can click on a message to add a reaction -- the sender of the message will receive a notification when a reaction is added to his/her message.

Features

- Ability to create any custom reaction with name & item/skull
- Configurable reaction limit per user, along with other options
- Doesn't override links sent in chat
- Up to 27 custom reactions

ReactChat in Action

[​IMG]
[​IMG]

Installation


1) Stop your Bukkit/Spigot server.
2) Drag and drop the ReactChat .jar into the plugins folder.
3) Start your server.
A config.yml file will be created on installation in the plugin directory (/plugins/ReactChat/config.yml). If not created, restart the server again.

Note: ReactChat may negatively interact with other chat plugins, possibly causing duplicate messages. There is no way to avoid this, other than to disable the conflicting plugin.

Commands + Permissions

/reactchat [int] -- Opens an inventory associated with a message. Should not be used directly, instead used when clicking a message.

reactchat.react
-- Allows a user to add reactions to messages
(recommended default)
reactchat.receive -- Allows users to react to this user's chat messages
(recommended default)

Default / Basic Config Info

The first time the server is started with ReactChat, config.yml and messages.yml files are created at /plugins/ReactChat/[file]. All values can be altered once the files are created.

config.yml:
Code (Text):
# # # #  ||  # # # #
# ReactChat v0.2.2 #
# # # #  ||  # # # #
# The maximum amount of reactions a user can add to a single message. Set to 18 for max.
# Default 3 | Recommended 2-8
reactionLimit: 3

# The amount of new messages sent before a message expires.
# Default 50 | Recommended 20-100
maxMessages: 50

# Allow users to add reactions to their own messages.
# Default false
allowSelfReacting: false

# Item type for reaction menu opener
# Default 'EYE_OF_ENDER' | List here: https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/Material.html
menu-item: 'EYE_OF_ENDER'

# Create reactions to add to the menu -- defaults can be changed.
# Number of reactions limited to 27.
#
# Settings:
# friendlyname - Name of item seen in inventory
# position - Slot number in inventory (starts at 0, max 26)
# id - Item ID (397 for skull)
# skullid (optional) - Base64 value of a skull (if using skull texture)
# Extra info on spigot info page
reactions:
  funny:
    friendlyname: "Funny"
    position: 0
    id: 397
    skullid: eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvNTA1OWQ1OWViNGU1OWMzMWVlY2Y5ZWNlMmY5Y2YzOTM0ZTQ1YzBlYzQ3NmZjODZiZmFlZjhlYTkxM2VhNzEwIn19fQ
  sad:
    friendlyname: "Sad"
    position: 1
    id: 397
    skullid: eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvODNmZGNmMDQyZGFjYzczMmI2OTk1ODJjYWU3YzU5YTY1OWM4NmM1N2U0MzE0MmEyY2M4OWU0ZDllZjAzNyJ9fX0
  love:
    friendlyname: "Love"
    position: 2
    id: 397
    skullid: eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvMTI5ZmI5ZjU5M2I2YWU1MzNkZmE4Y2U3OTYxNWZjYzM1ODk0YTQyY2JiNDFkZTU5OGQ2OTQ3NjczNTJmZSJ9fX0
  derp:
    friendlyname: "Derp!"
    position: 3
    id: 397
    skullid: eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvM2JhYWJlNzI0ZWFlNTljNWQxM2Y0NDJjN2RjNWQyYjFjNmI3MGMyZjgzMzY0YTQ4OGNlNTk3M2FlODBiNGMzIn19fQ
  crazy:
    friendlyname: "Crazy"
    position: 4
    id: 397
    skullid: eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvNzFiZWNhY2VjODU4YTE5ODQ4ODYwYjI1MjJjMzI5MzZhZGYxNTg4YzFlZjQyMzc5NDAzZmVmODNkYTRiYiJ9fX0
  dead:
    friendlyname: "Dead"
    position: 5
    id: 397
    skullid: eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvYjM3MWU0ZTFjZjZhMWEzNmZkYWUyNzEzN2ZkOWI4NzQ4ZTYxNjkyOTk5MjVmOWFmMmJlMzAxZTU0Mjk4YzczIn19fQ
  happy:
    friendlyname: "Happy"
    position: 6
    id: 397
    skullid: eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvNTJlOTgxNjVkZWVmNGVkNjIxOTUzOTIxYzFlZjgxN2RjNjM4YWY3MWMxOTM0YTQyODdiNjlkN2EzMWY2YjgifX19
  weary:
    friendlyname: "Weary"
    position: 7
    id: 397
    skullid: eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvMTQ5NjhhYzVhZjMxNDY4MjZmYTJiMGQ0ZGQxMTRmZGExOTdmOGIyOGY0NzUwNTUzZjNmODg4MzZhMjFmYWM5In19fQ
  surprise:
    friendlyname: "Surprise"
    position: 8
    id: 397
    skullid: eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvYmMyYjliOWFlNjIyYmQ2OGFkZmY3MTgwZjgyMDZlYzQ0OTRhYmJmYTEzMGU5NGE1ODRlYzY5MmU4OTg0YWIyIn19fQ
  cool:
    friendlyname: "Cool"
    position: 9
    id: 397
    skullid: eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvODY4ZjRjZWY5NDlmMzJlMzNlYzVhZTg0NWY5YzU2OTgzY2JlMTMzNzVhNGRlYzQ2ZTViYmZiN2RjYjYifX19
  kiss:
    friendlyname: "Kiss"
    position: 10
    id: 397
    skullid: eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvNTQ1YmQxOGEyYWFmNDY5ZmFkNzJlNTJjZGU2Y2ZiMDJiZmJhYTViZmVkMmE4MTUxMjc3Zjc3OWViY2RjZWMxIn19fQ
  wink:
    friendlyname: "Wink"
    position: 11
    id: 397
    skullid: eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvZjRlYTJkNmY5MzlmZWZlZmY1ZDEyMmU2M2RkMjZmYThhNDI3ZGY5MGIyOTI4YmMxZmE4OWE4MjUyYTdlIn19fQ
  agree:
    friendlyname: "Agree"
    position: 12
    id: 397
    skullid: eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvOGE5OTM0MmUyYzczYTlmMzgyMjYyOGU3OTY0ODgyMzRmMjU4NDQ2ZjVhMmQ0ZDU5ZGRlNGFhODdkYjk4In19fQ
  disagree:
    friendlyname: "Disagree"
    position: 13
    id: 397
    skullid: eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvMTZjNjBkYTQxNGJmMDM3MTU5YzhiZThkMDlhOGVjYjkxOWJmODlhMWEyMTUwMWI1YjJlYTc1OTYzOTE4YjdiIn19fQ
  lit:
    friendlyname: "Lit"
    position: 14
    id: 50
  idigthat:
    friendlyname: "I Dig That"
    position: 15
    id: 256
messages.yml:
Code (Text):
## Possible parameters are individually listed for each message
## Enable/disable a set prefix for each message

prefix: '&7[&6RC&7] '

## {max} - see "maxMessages" in config
## {limit} - see "reactionLimit" in config
## {player} - typer of command
help-message:
  - '&6Click on a message to add a reaction.'
  - '&6If a message is {max} messages old, reacting to it is not possible.'
help-message-prefix: true

error:
  - '&6Error encountered.'
error-prefix: true

no-permission:
  - &6You don't have permission to do this.'
no-permission-prefix: true

message-not-exist:
  - '&6Message does not exist.'
message-not-exist-prefix: true

message-expired:
  - '&6Reacting has expired for this message.'
message-expired-prefix: true

integer-pls:
  - '&6Please type an integer.'
integer-pls-prefix: true
 
## {reaction} - Name of reaction
## {username} - Message creator
reaction-name: '&6&l{reaction}'

hide-reactions: '&6&lHide Menu'

see-reactions: '&6&lAdd a Reaction'

## {username} - Message creator
reaction-lore:
  - '&6React to &e{username}'

## {username} - Message creator
## {users} - Users who have used this reaction on this message
reaction-list-lore:
  - '&6Reactions:'
  - '&e&o{users}'
 
## {username} - Message creator
hover-msg: '&6Click to react to &e{username}'

## {reaction} - Name of reaction
## {reactor} - User who reacted to this message
receive-reaction:
  - '&6Received reaction &e{reaction}&6 from &e{reactor}.'
receive-reaction-prefix: false

## {reaction} - Name of reaction
## {username} - Message creator
send-reaction:
  - '&6Reacted with &e{reaction}&6 to &e{username}.'
send-reaction-prefix: false

## {reaction} - Name of reaction
## {username} - Message creator
self-reaction:
  - '&6Reacted with &e{reaction}&6 to yourself.'
self-reaction-prefix: false

## {username} - Message creator (& reactor)
no-self-react:
  - '&6You cannot react to your own message!'
no-self-react-prefix: false
 
## {username} - Message creator
reaction-max:
  - '&6This message has reached the reaction limit.'
reaction-max-prefix: false

## {username} - Message creator
## {limit} - see "reactionLimit" in config
user-limit:
  - '&6You cannot add more than {limit} reactions to a message!'
user-limit-prefix: false
 
"skullid" is a Base64 encoded URL for a skull. A Base64 URL can be created for any head by going to a website such as http://www.freshcoal.com/heads/index.php, inserting the username of a player with a skull you want, and copying the "value" in the command given.

If you have any questions about the config, please feel free to message me or comment in the discussion.

Future


(not all are certain to be added in the future)
- Reaction spam prevention (customizable)
- Spy chat of all reactions sent between all users (for moderation)
- Option to set reactions above action bar
- Increase maximum amount of reactions from 27; multiple pages of reactions

Have a suggestion for a feature to be added? Please post in the discussion!

Commands

Plugin details

Read from the plugin's own plugin.yml.

Quick facts

Install steps are the general flow for this file type — How to install Minecraft Java mods & modpacks walks through it step by step.

ReactChat is a free Minecraft Java mod. Compatible with Minecraft 1.12. Downloaded 390 times (via Spigot). Download it and open it directly in the game.

Explore more