Notification Systems is a versatile plugin designed to deliver messages directly to players on your server — even when they’re offline.
Seamlessly integrate it into other plugins, such as Skill Tree, or trigger notifications manually through commands for complete flexibility.
Each notification can include a custom title, message, and an optional redemption button, giving you the power to reward players with items, currency, points, or trigger client-side commands — all tailored to your server’s needs.
The idea behind the plugin is to allow server owners to send critical information to players, with the option to run commands that target said players.
For example, you can send a notification to all players that have joined your server (regardless of their online status), with a redemption button that will give each of them 500 scrap.
The following commands can be run in your server console, or player console (with the notificationsystem.admin permission).
The commands are broken up in 3 sections: Title, body, redemptions, each of which is differentiated using "[]".
Parameters:
- Userid: target player's Steam64 id.
- Message icon id: the skin id that you want to appear on the notification list. Setting to 0 will default to the message item id icon.
- Message item id: the item image you want to appear on the notification list (-769647921 = skull.trophy). Setting to 0 will default o the config icon.
- Title: Must be formatted with square brackets and surrounded by quotation marks like so: "[Title here]"
- Body: Must be formatted the same way as the title, with square brackets and quotation marks, like so: "[description here]"
-
Redemptions: Must also have the square brackets and quotation marks, but also allow for an optional parameter of running it as a server command or client command.
Here is the formatting for running a server command: "[(inventory.giveto {id} scrap 500, true)]"
Here is the formatting for running a client command: "[(chat.say "/sprize", false)]"
Here is the formatting for running both: "[(inventory.giveto {id} scrap 500, true),(chat.say "/sprize", false)]"
Command: notification.add <userid> <message icon id> <message item id> "[Title]" "[Description]" "[(command1,bool:isServer)(command2,bool:isServer)]"
Command: notification.all <message icon id> <message item id> "[Title]" "[Description]" "[(command1,bool:isServer)(command2,bool:isServer)]"
Example of a full command:
notification.add 123445667878213 "[Title goes here]" "[Here is my message, there are many others like it, but this is mine]" "[(inventory.giveto {id} scrap 500. true)]"
notification.all "[Title goes here]" "[Here is my message, there are many others like it, but this is mine]" "[(inventory.giveto {id} scrap 500. true)]"
void AddAll(string title, string body, int itemID, ulong picID = 0, string sprite = null, List<(string, bool)> commands = null)
void Add(ulong id, string title, string body, int itemID, ulong picID = 0, string sprite = null, List<(string, bool)> commands = null)

