Skip to content

A client-side multi-loader Minecraft mod that plays a ping sound when your name is mentioned, with options to create custom alerts.

License

Notifications You must be signed in to change notification settings

TerminalMC/ChatNotify

Repository files navigation

Icon

ChatNotify

Plays a ping sound when your name is mentioned, with options to create custom alerts.

Environment Latest Minecraft

Loader Loader Loader

Download on Modrinth Download on CurseForge Download on GitHub

Features

  • Custom triggers - never worry about missing a message again!
  • Choose notification sounds from the full range of built-in and resourcepack sound effects.
  • Adjust sound volume and pitch per-notification.
  • Customize message highlighting with a color picker and format controls.
  • Use regex patterns, inclusion and exclusion triggers for fine-grained control.
  • Add automatic response messages or trigger CommandKeys macros.

How it Works

  1. ChatNotify has a list of Notifications, each of which has one or more Triggers.
  2. When a new message arrives in chat, ChatNotify starts checking the triggers of each notification.
  3. If a trigger matches the chat message, the corresponding notification will be activated. By default;
    1. The message will be edited to highlight the trigger that activated the notification.
    2. A sound will be played.
  • You can create and customize your own notifications via the options screen, which can be opened via ModMenu on Fabric, or the mod list on NeoForge.

Setup

When you open the options screen, you'll see a list of notifications. You can set the notification trigger, color and sound here.

Trigger types

To change the trigger type, click the ~ button to the left of the text field.

  • Normal
    • This is what you probably want to use at first. Normal triggers aren't case-sensitive (so a trigger hello will match messages containing HELLO), and they don't match partial words (so a trigger rock will match rock! but not rocket or rock932).
  • Key
    • In vanilla, each type of chat message has a different translation key (such as chat.type.text or chat.type.advancement.task). You can use a key-type trigger to match all messages of that type.
    • Note: Many servers remove keys from messages, which will prevent this type of key from working. To check if a message has a key, use the trigger editor (see below).
  • Regex
    • If you want more precise control, you can switch to this type and enter a regex pattern in the text field.
    • Consider using the trigger editor (see below) and/or a tool such as regex101 to help create regex patterns.

Trigger editor

Click the ✎ button to the right of the text field to open the trigger editor.

In the trigger editor, recent chat messages will be displayed in a list (most recent first). Use the Filter and Restyle buttons to preview the effect of your trigger.

Click on a message to view the text and translation key (if any) so you can copy them.

Additionally, some common keys are available for selection in the Key Selector.

Trigger List

If you want to add more triggers, go back to Notifications and click on the options button to the left of the color button. You'll now see a list of triggers, which you can edit as desired.

Style target

Sometimes for key-type and regex-type triggers you may want to highlight a different part of the message to what the trigger matches.

Adding a style target allows you to specify what part of the message should be highlighted. If the style target doesn't match the message, the trigger will be used as normal.

Format

Sound

All built-in and resourcepack sounds can be used (click on the text field). Additionally, some sounds are available for quick selection.

The sound source controls which of Minecraft's volume control sliders will affect the notification sound, in addition to the volume control slider provided here.

Inclusion

Inclusion triggers do nothing by themselves, but if a trigger from the Triggers list matches a message, ChatNotify will check all the triggers in this list and only activate the notification if they all match.

Exclusion

Exclusion triggers are the reverse of Inclusion triggers; before activating a notification, ChatNotify will check all the triggers in this list and only proceed with activation if none of them match the message.

Response

Response messages will be sent in chat when the notification is activated.

Use with caution, as you can easily make a notification send a response which triggers the notification again in a loop, which will spam chat and then crash the game.

Custom Messages

These are special ways of showing notifications, as an alternative to the normal 'play a sound and highlight the message'.

Controls

These options apply to all notifications, and control various aspects of ChatNotify's behavior. You should not generally need to change them (you can if you want, of course), but the Detect and Send Mode options can be useful in certain cases of conflict with other mods.

Defaults

If you want new notifications to have a particular color or sound by default, you can set that here.

Prefixes

When ChatNotify is not using Chat Heads to detect the message sender, it will store your sent messages and compare them to incoming messages to determine which messages were sent by you. If you're on a server that modifies your messages, that system may not work properly, so prefixes can help.

If you're still being notified on every message that you send (because it contains your name) try installing Chat Heads and setting Sender Detection Mode to Combined in the Controls tab.

GUI Tweaks

Special Widgets

ChatNotify uses a range of custom GUI widgets which behave differently to normal Minecraft.

  1. Color (🌒) and sound (πŸ”Š) status buttons on the options screen support right-click to toggle status.
  2. Text fields have been modified to support double-clicking, triple-clicking or clicking and dragging to select text.
  3. Text fields have also been modified to support CTRL+Z to undo and CTRL+Y to redo edits. Note that edit history will be erased whenever the GUI is refreshed, which often happens when you click on a different widget.
  4. Fullscreen overlay widgets such as the color picker and drop-down text field support clicking outside to cancel and close.
Chat Height Slider
  • ChatNotify modifies the chat height slider (in Minecraft's Chat Settings) to increase the maximum value to 500px.
  • Your existing setting will stay the same unless you decide to change it.

Dependencies

Fabric: Fabric API, ModMenu

NeoForge: None

Compatibility

If you encounter issues, please report on Discord or GitHub.

Contact

Discord Server

GitHub Issues

License

About

A client-side multi-loader Minecraft mod that plays a ping sound when your name is mentioned, with options to create custom alerts.

Topics

Resources

License

Stars

Watchers

Forks

Contributors 4

  •  
  •  
  •  
  •  

Languages