Jump to content
Message added by myst1c,

Do you need help? Do you have any questions or suggestions?

Join my discord to contact me - click

5 Screenshots

  • 946
  • 5
  • 145.23 kB
  • Update details
    v1.0.01
    Released
    Download size145.23 kB
    Total versions4
    Time between versions 23 days
    Typical update pace About every 19 days
    Freshness 61 days ago

depends on

Works with

About MyChat

MyChat - a powerful and versatile chat system for players, offering extensive customization and exciting features that introduce new ways to communicate and interact on your server.MyChat-.png.3e887a3d2292283fe77015acc8913de3.png

Functions:

1. Chat Customization

  • Prefixes, colors, and formatting
  • CAPS lock prevention (hello everyone. THIS IS MY CHAT PLUGIN. it works perfectly. → Hello everyone. This is my chat plugin. It works perfectly.)
  • Forbidden words and nickname replacement
  • Temporary chat blocks and player-specific mutes

2. Mentions & Private Messaging

  • Mention players (@player)
  • Mention all players (@everyone) - requires permission
  • Mention groups - requires permission
  • Send private messages (/msg)
  • Quickly reply to the last player you messaged.
  • Sound notifications for messages and mentions
  • Personal Rename System
  • Group Messaging by Status

MyChat-Tegs.gif.caa82b28ce6510a613d5d11d7ff58524.gif

3. Chat Moderation & Anti-Spam

  • Chat and voice mute (/mute <chat/voice> <sec> <reason>)
  • Temporary timeouts to prevent spam
  • Automatic message replacement for bad words
  • Log all actions to Discord (messages, mutes, blocked words)

4. Dynamic Messages & Auto Responses

  • Custom chat commands with variables (online count, joining players, etc.)
  • Automatic messages on player join/leave
  • Auto-responder for specific keywords
  • Timed messages in chat

Commands:

  • /chat - open the settings interface
  • /msg <player> <message> - private message
  • /reply - quickly respond to the last player you talked to
  • /mute <player> <chat/voice> <time> <reason> - mute player
  • /unmute <player> <chat/voice> <reason> - unmute player
  • /rename <player> <name> - assign a custom name visible only to you
  • /rename <player> - remove your custom name for that player
  • /<group.name> <message> - send a message to all players with a specific status

Permissions:

  • mychat.admin - access to administrative commands (mute, unmute, etc.)
  • mychat.mention.everyone - allows mentioning all players with '@everyone'

Configuration:

Spoiler
{
  "Settings: General": {
    "Notification type (1 - chat | 2 - toast | 3 - both)": 3,
    "Chat message format": "%info%: %message%",
    "Apply text typography corrections": true,
    "Message send cooldown (sec)": 8,
    "Chat Commands": {
      "Commands to open the chat interface": [
        "chat",
        "cs"
      ],
      "Commands to send private messages": [
        "pm",
        "msg",
        "privatemessage"
      ],
      "Commands to reply or repeat the last message": [
        "r",
        "reply"
      ],
      "Commands to mute players": [
        "mute"
      ],
      "Commands to unmute players": [
        "unmute"
      ],
      "Commands to set a custom nickname": [
        "rename",
        "customname"
      ]
    }
  },
  "Settings: Mentions": {
    "Enable player mentions": true,
    "Mention sound": "assets/bundled/prefabs/fx/notice/loot.drag.dropsuccess.fx.prefab",
    "Everyone mention": {
      "Trigger words for everyone mention": [
        "everyone",
        "all",
        "все"
      ],
      "Mention color": "#B8A9C9",
      "Sound notification": "assets/bundled/prefabs/fx/notice/loot.drag.dropsuccess.fx.prefab"
    }
  },
  "Settings: Broadcast": {
    "Random join messages": {
      "Avatar (SteamID)": 0,
      "Sound notification": null,
      "Messages": {
        "en": [
          "%nick% got into this server from %country%",
          "%nick% crashed on server from %country%"
        ],
        "ru": [
          "%nick% залетел на этот сервер из %country%",
          "%nick% упал на сервер из %country%"
        ]
      }
    },
    "Random leave messages": {
      "Avatar (SteamID)": 0,
      "Sound notification": null,
      "Messages": {
        "en": [
          "%nick% is out of the game :(",
          "%nick% dropped from the server"
        ],
        "ru": [
          "%nick% вышел из игры :(",
          "%nick% выпал с сервера"
        ]
      }
    },
    "Timed broadcast messages (seconds)": {
      "3600": {
        "Avatar (SteamID)": 0,
        "Sound notification": "assets/bundled/prefabs/fx/invite_notice.prefab",
        "Messages": {
          "en": [
            "We are waiting for you in our store - <color=#84B4DD>server.store</color>",
            "Tired of pharma?\nSo why haven't you logged into - <color=#84B4DD>server.store</color> yet"
          ],
          "ru": [
            "Ждем вас в нашем магазине - <color=#84B4DD>server.store</color>",
            "Устал от фарма?\nТак почему же ты еще не зашел на - <color=#84B4DD>server.store</color>"
          ]
        }
      }
    }
  },
  "Settings: Auto-reply": {
    "0": {
      "Trigger words": [
        "wipe",
        "вайп"
      ],
      "Reply": {
        "en": {
          "Avatar (SteamID)": 0,
          "Message": "The wipe will take place on October 7."
        },
        "ru": {
          "Avatar (SteamID)": 0,
          "Message": "Вайп произойдет 7 октября."
        }
      }
    },
    "1": {
      "Trigger words": [
        "admin",
        "moder",
        "админ",
        "модер"
      ],
      "Reply": {
        "en": {
          "Avatar (SteamID)": 0,
          "Message": "The administration is always watching you!"
        },
        "ru": {
          "Avatar (SteamID)": 0,
          "Message": "Администрация всегда наблюдает за вами!"
        }
      }
    }
  },
  "Settings: Blocked words": {
    "Mask for blocked words": "***",
    "Block links in chat": true,
    "Allowed links": [
      "server.store",
      "server.stats"
    ],
    "Forbidden words in nicknames": [
      "negr",
      "faggot",
      "idiot"
    ],
    "Forbidden words in messages": [
      "negr",
      "faggot",
      "idiot"
    ]
  },
  "Settings: Custom commands": {
    "info": {
      "en": {
        "Avatar (SteamID)": 0,
        "Message": "Welcome %nick% to our server!\nYou are connecting from %country%."
      },
      "ru": {
        "Avatar (SteamID)": 0,
        "Message": "Добро пожаловать, %nick%, на наш сервер!\nВы зашли из %country%."
      }
    },
    "pop": {
      "en": {
        "Avatar (SteamID)": 0,
        "Message": "There are %online% active players online, %sleepers% sleeping.\n%incoming% joining.\nYour ping: %ping% ms."
      },
      "ru": {
        "Avatar (SteamID)": 0,
        "Message": "На сервере сейчас %online% активных игроков, %sleepers% спят.\nЗаходят %incoming%.\nВаш пинг: %ping% мс."
      }
    }
  },
  "Settings: Sounds": {
    "Chat mention sound": "assets/bundled/prefabs/fx/notice/loot.drag.dropsuccess.fx.prefab",
    "Private message sound": "assets/bundled/prefabs/fx/notice/loot.drag.dropsuccess.fx.prefab"
  },
  "Settings: Statuses": {
    "default": {
      "Prefix types": [
        "[%prefix%]"
      ],
      "Prefixes": [
        "PLAYER"
      ],
      "Prefix colors": [
        "#BBC47E"
      ],
      "Nickname colors": [
        "#FFFFFF"
      ],
      "Message colors": [
        "#FFFFFF"
      ],
      "Personal mention color": "#84B4DD",
      "Permission for group broadcast messages": "mychat.moder",
      "Group mention settings": {
        "Trigger words for group mention": [
          "default"
        ],
        "Mention color": "#BBC47E",
        "Sound notification": "assets/bundled/prefabs/fx/notice/loot.drag.dropsuccess.fx.prefab",
        "Permission for group mention": "mychat.moder"
      }
    },
    "vip": {
      "Prefix types": [
        "[%prefix%]",
        "%prefix% |",
        "%prefix% ·"
      ],
      "Prefixes": [
        "VIP",
        "†"
      ],
      "Prefix colors": [
        "#E0947A",
        "#BBC47E"
      ],
      "Nickname colors": [
        "#84B4DD",
        "#D1B283"
      ],
      "Message colors": [
        "#FFFFFF",
        "#84B4DD"
      ],
      "Personal mention color": "#84B4DD",
      "Permission for group broadcast messages": "mychat.moder",
      "Group mention settings": {
        "Trigger words for group mention": [
          "vip"
        ],
        "Mention color": "#D1B283",
        "Sound notification": "assets/bundled/prefabs/fx/notice/loot.drag.dropsuccess.fx.prefab",
        "Permission for group mention": "mychat.moder"
      }
    }
  },
  "Settings: Logging": {
    "Global chat logging": {
      "Webhook URL": "https://discord.com/api/webhooks/XX/XXX",
      "Avatar": "%playerAvatar%",
      "Display name": "%playerNick%",
      "Message template": "%playerPrefix% %playerNick%: %message%"
    },
    "Team chat logging": {
      "Webhook URL": "https://discord.com/api/webhooks/XX/XXX",
      "Avatar": "%playerAvatar%",
      "Display name": "%playerNick%",
      "Message template": "[TEAM] %playerPrefix% %playerNick%: %message%"
    },
    "Private chat logging": {
      "Webhook URL": "https://discord.com/api/webhooks/XX/XXX",
      "Avatar": "%playerAvatar%",
      "Display name": "%playerNick%",
      "Message template": "%playerPrefix% %playerNick% отправил %targetNick%: %message%"
    },
    "Chat/voice mute logs": {
      "Webhook URL": "https://discord.com/api/webhooks/XX/XXX",
      "Avatar": "%adminAvatar%",
      "Display name": "%adminNick%",
      "Message template": "%adminNick% выдал <мут/размут> <чата/голосового чата> игроку %targetNick%\nПричина: %reason%\nВремя: %time%"
    }
  }
}

API:

Spoiler
PlayerSettings API_GetPlayerSettings(ulong userID) - Returns players chat customization settings.
bool API_IsMuteChat(ulong userID) - Checks if the player currently has an active chat mute.
bool API_IsMuteVoice(ulong userID) - Checks if the player currently has an active voice mute.
void API_SendMessageToPlayer(ulong userID, string message, string prefix = null, string avatarID = "0") - Sends a message directly to a player in chat.

public class PlayerSettings
{
    public string prefixType, prefix, prefixColor, nickColor, messageColor;
    public bool onPrivateMessage, onMention, onSound;
}

Hooks:

Spoiler
OnPlayerMuted(BasePlayer admin, BasePlayer target, double time, string reason, bool isVoice)  Called when a player is muted (chat or voice)
OnPlayerUnmuted(BasePlayer admin, BasePlayer target, string reason, bool isVoice)  Called when a player is unmuted
OnSendBadWord(BasePlayer player, string defMessage)  Called when a forbidden word is detected in a message
  • Like 1

myst1c's Collection

User Feedback

2.3m

Downloads

Total number of downloads.

10.5k

Customers

Total customers served.

151.9k

Files Sold

Total number of files sold.

3.2m

Payments Processed

Total payments processed.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.