An open API service indexing awesome lists of open source software.

https://github.com/mrquackduck/messagesonhead

Minecraft Paper plugin (1.19.4+) that shows messages of players above their heads.
https://github.com/mrquackduck/messagesonhead

java messages minecraft papermc papermc-plugin

Last synced: 4 months ago
JSON representation

Minecraft Paper plugin (1.19.4+) that shows messages of players above their heads.

Awesome Lists containing this project

README

          


MessagesOnHead





**MessagesOnHead** is a **Paper (1.19.4+)** plugin that shows messages above players' heads for a little time when they send messages to the chat.\
The plugin's functionality is based on the [Text Display](https://minecraft.wiki/w/Display#Text_Displays) entity.

### 👀 Screenshots

### 🌠 Key features
- **Limit per line**: you can configure the symbols limit for each line in the `symbolsPerLine` field.
- **Max symbols limit**: you can configure the max amount of symbols per message in the `symbolsLimit` field (_'...' will be appended if the limit is reached_).
- **Timer**: You can enable/disable the timer at the end of the message that shows how much time is left until the message is gone.
- **Time scaling**: you can make longer messages exist for more time.
- **Colors and style**: you can choose the color of the text, its background, whether the text is shadowed and the color for the timer.
- **Rotation**: you may configure how a text display will rotate in the `pivotAxis` field.
- **PlaceholderAPI support**: you can configure a placeholder that will color your text displays.

### 🔞 Permissions

- `messagesonhead.show` _(**true** by default)_ — Whether messages will appear above player's head.
- `messagesonhead.admin` _(for **operators** by default)_ — Allows to use the `/moh` command.

### 💻 Commands

- `/moh info` — shows commands info.
- `/moh reload` — reloads the config and makes a cleanup by removing all entities related to the plugin.
- `/moh say ` — says a message on behalf of the player.

Aliases: `/messagesonhead`.

### 📄 Default config

```yml
symbolsPerLine: 30
# If the limit is reached, the three dots will be added at the end. -1 means there's no limit
symbolsLimit: -1
# Initial amount of seconds for the message to exist
timeToExist: 2

# Whether a longer message will exist for more time
scalingEnabled: true
# Scaling coefficient per symbol in seconds. For example, a message with 50 symbols
# will exist for extra 5 seconds if the coefficient is set to 0.1 (because 0.1 * 50 = 5)
scalingCoefficient: 0.05

# Whether messages should be displayed on the same level as the nickname (for servers where nicknames are disabled)
lowerMode: true

textColor: "#FFFFFF"

timerEnabled: true
# Minimum message length threshold for the timer to be displayed
minSymbolsForTimer: 0
timerFormat: " (%.1f)"
timerColor: "#F4CA16"

backgroundEnabled: true
backgroundColor: "#000000"
# Range: [0, 100]
backgroundTransparencyPercentage: 100

# Whether a text will have a shadow
isShadowed: true

# How a text display can pivot:
# VERTICAL - Can pivot around vertical axis
# HORIZONTAL - Can pivot around horizontal axis
# CENTER - Can pivot around center point
# FIXED - No rotation
pivotAxis: "VERTICAL"

# You may enable this if you use a plugin for per-player chat color customization (e.g., EZColors, ChatColor etc.)
placeholderApiIntegration: false
# Name of a placeholder that will be put before each text line
colorPlaceholder: "%ezcolors_color%"
# Format for text lines if `placeholderApiIntegration` is true
lineFormat: "&[defaultColor]&[colorPlaceholder][message]"

messages:
"prefix": "F4CA16[MessagesOnHead]"
"info-content": " D9E6EDCommands list:
\n &f/moh reload - D9E6EDReloads the config and makes a cleanup by removing all entities related to the plugin.
\n &f/moh say - D9E6EDSay a message on behalf of the player."
"reloaded": " D9E6EDReloaded!"
"player-not-found": " Player not found."
"command-not-found": " &cCommand not found."
"error-during-reload": " &cAn error occurred during reload! Check console for details."
```

### 🚀 Installation guide

> [!IMPORTANT]
> Before getting started, make sure that the plugin's version is **compatible** with your server version.

1. Download the latest version of the plugin from the Releases tab.
1. Put the downloaded `.jar` into the `/plugins` folder of your server.
1. Restart your server or enter the `/reload` command.