Chat Handler 1.0.2

Register now to download for free
A plugin that helps with server moderation and chat restriction.
Tags
Tags
None
HzvKShs.png


A powerful moderation tool designed to block and/or limit many common problems. This plugin is the successor to my old chat restriction plugin, ChatUtility. All buyers of ChatUtility will be transferred to this plugin, so you will not have to re-purchase the plugin. In addition, to all those users who are using DeluxeChat in their server, message me on Skype (via.synic) and I will provide you a DeluxeChat compatible version.

FEATURES:

Anti-Advertising
- Chat Handler uses two powerful regular expressions (sequence of characters that define a search pattern) for both URLs and IPs advertised in the chat. If a player advertises, the server owner can specify in the configuration file what command should be executed such as a mute or ban command. In addition, the server owner can also toggle the option to alert staff of the advertiser and the message containing the advertisement. I have also included a white-list as well as a blacklist in the file.

Capitals Limiter
- The configuration file allows users to specify the maximum amount of capital letters that can be outputted in the chat for one word. For example, if the maximum is set to '3', the sentence, "I HAVE A LOT OF CATS LOL." Then the output would be, "I have a LOT OF cats LOL." So any words that contain a number of capitalized letters that are above the maximum will be forced to lowercase.

Character Limiter
- This feature will reduce the amount of consecutive repetitive letters to the number specified in the file. For example, if the maximum repetitions is set to '2', the sentence "I haveeeeeeeee to goooooooooo peeeeeeeee." will reduce to "I havee to goo pee."

Chat Cooldown
- Players will not be allowed to send messages until after a couple of seconds defined in the config. If the time is set to '3', then users can only send messages after every 3 seconds from their last message, allowing chat to flow nicely.

Repetitive Message Blocker
- This feature will prevent users from sending the same message twice. Although, the chat cooldown may be in place, this will ultimately prevent users from sending the same message again and again.

Swear Protection
- For this feature, I have given server owners the option to either block messages sent containing swear words (defined in the configuration file), or have the plugin censor the words with asterisks.

Warn System (NEW)
- As requested by many users, I have added a fully functional warn system that will trigger certain punishments after being warned consecutively. In the configuration file, server owners can specify the valid reasons for warning, such as "Racism" or "Harassment". This feature however, is a bit limited. Only three warnings can be held against a player. The first warn does nothing. The second warn performs a command (you can specify, but mute by default). The third warn performs a command (you can specify, but temp-ban by default). I've added a time frame in which these warns will still remain attached to the user. After this time frame is up (30 minutes by default), the warns will reset.

Staff Chat (NEW)
- This is a small addition but I thought it would be nifty feature to include. Staff can use the command, "/s <message>" to relay messages between other staff members. The format of the staff chat can also be edited with color codes.

Lock / Clear Chat
- This is a continued feature from ChatUtility where staff can clear or lock the chat with certain commands.

* The configuration file allows you to disable and enable any of these features at your own will. The only feature that you cannot disable is the lock and clear chat commands. *

CONFIGURATION FILE:
Code:
#===============================================[ Notes ]================================================#
# name: ChatHandler                                                                                      #
# author: Hid                                                                                            #
# version: 1.0                                                                                           #
# notice: Please read my guide text file before changing variables in this config file.                  #
#========================================================================================================#

MAIN_MODULE:
    prefix-enabled: true
    prefix: "&aChat &8//&7 "
    no-permission: "&eYou do not have permission to execute this command."
    improper-usage: "&eImproper usage. Proper usage for this command: /clearchat | /lockchat | /staff <msg>. | warn <player> <reason>."
    target-offline: "&eThe specified player is currently offline."

CHAT_MESSAGES:
    clear-chat: "&7The chat has been &acleared &7by &e{sender}&7."
    lock-chat: "&7The chat has been &clocked&7 by &e{sender}&7."
    unlock-chat: "&7The chat has been &aunlocked&7 by &e{sender}&7."
    chat-status: "&eThe chat is currently locked."

STAFF_CHAT_MODULE:
    enabled: true
    format: "&8(&e{sender}&8) &7: &a{message}"

WARN_MODULE:
    enabled: true
    sender-message: "&eWarned player successfully."
    target-message: "&7You have been warned for &e{reason}&7."
    invalid-warn-type: "&eThe specified warn reason is invalid."
    in-cooldown: "&eThe specified player is currently under a warn cooldown."
    within-time-frame: 1800
    warn-cooldown: 5
  
    first-offense-broadcast: "&e{sender} &7has warned &e{target} &7for &e{reason}&7."
  
    second-offense: mute {target} 5m
    second-offense-broadcast: "&e{sender} &7has warned &e{target} &7for &e{reason}&7, resulting in a mute."
  
    third-offense: tempban {target} 30m Third Offense
    third-offense-broadcast: "&e{sender} &7has warned &e{target} &7for &e{reason}&7, resulting in a tempban."
  
    warn-types:
    - Racism
    - Harassment

COOLDOWN_MODULE:
    enabled: true
    message: "&ePlease wait before sending your next message."
    time: 3

MESSAGE_MODULE:
    enabled: true
    message: "&ePlease do not send the same message."

CHARACTER_MODULE:
    enabled: true
    maximum-characters: 2

CAPITALS_MODULE:
    enabled: true
    maximum-caps: 3

SWEAR_MODULE:
    enabled: true
    censor: false
    message: "&ePlease do not swear."
    blacklist:
    - fuck

ADVERTISING_MODULE:
    enabled: true
    message: "&eYou have been muted for advertising."
    alert-staff: true
    alert-staff-message: "&e{target} &7may have advertised: &e{message}&7."
    url-regex: "([\\w\\-]+)([\\[\\]\\)\\(\\{\\}\\s]+)?(dot|d0t|dawt|,|\\.)([\\[\\]\\)\\(\\{\\}\\s]+)?(com|net|org|biz|info|mobi|asia|us|co|de|me|pw|ca|tv|in|es|au|cc|uk|fr|pe|ch|bz|ws|sg|li|cm|pe|nu|io)"
    ip-regex: "(\\d+)([\\[\\]\\)\\(\\{\\}\\s]+)?(dot|d0t|dawt|,|\\.)([\\[\\]\\)\\(\\{\\}\\s]+)?(\\d+)([\\[\\]\\)\\(\\{\\}\\s]+)?(dot|d0t|dawt|,|\\.)([\\[\\]\\)\\(\\{\\}\\s]+)?(\\d+)([\\[\\]\\)\\(\\{\\}\\s]+)?(dot|d0t|dawt|,|\\.)([\\[\\]\\)\\(\\{\\}\\s]+)?(\\d+)"

    punishments:
    - mute {target} 15m

    whitelist:
    - gyazo.com

    blacklist:
    - mineplex
COMMANDS/PERMISSIONS
Code:
commands:[/SIZE][/FONT][/LEFT][/SIZE][/FONT][/COLOR][/SIZE][/FONT][/COLOR][/FONT][/COLOR][/SIZE][/FONT][/FONT][/COLOR][/SIZE][/FONT][/FONT][/COLOR][/SIZE][/FONT][/FONT]
[FONT=Georgia][FONT=Trebuchet MS][SIZE=4][COLOR=#00ffff][FONT=Georgia][FONT=Trebuchet MS][SIZE=4][COLOR=#00ffff][FONT=Georgia][FONT=Trebuchet MS][SIZE=4][COLOR=#ffffff][FONT=Georgia][COLOR=rgb(44, 44, 44)][FONT=Trebuchet MS][SIZE=4][SIZE=4][FONT=Georgia][COLOR=rgb(44, 44, 44)][FONT=Trebuchet MS][SIZE=4][LEFT]       lockchat:[/COLOR][/FONT]
[FONT=Georgia][COLOR=rgb(44, 44, 44)]            aliases: [lc, lockc, lchat]
            description: The base command for locking chat.
       clearchat:
            aliases: [cc, clearc, cchat]
            description: The base command for clearing chat.
       warn:
            aliases: [w]
            description: The base command for warning players.
       staff:
            aliases: [s, sc]
            description: The base command for talking within staff chat.

permissions:
     chat.clear:
            description: The permission used to give access to ./clearchat.
     chat.lock:
            description: The permission used to give access to ./lockchat.
     chat.staff:
            description: The permission used to give access to ./staff.
     chat.warn:
            description: The permission used to give access to ./warn.
     chat.lock.bypass:
            description: The permission used to allow players to talk during a locked chat.
     chat.cooldown.bypass:
            description: The permission used to allow players to talk without a cooldown.
     chat.swear.bypass:
            description: The permission used to allow players to say blacklisted words.
     chat.caps.bypass:
            description: The permission used to allow players to freely use capitalized letters.
     chat.character.repeat.bypass:
            description: The permission used to allow players to talk with duplicate letters.
     chat.message.repeat.bypass:
            description: The permission used to allow players to say duplicate messages.
     chat.advertise.bypass:
            description: The permission used to allow players to advertise URLs or IPs.
     chat.advertise.alert:
            description: The permission used to allow players to be alerted of an advertisement.
     chat.blacklist.bypass:
            description: The permission used to allow players to bypass blacklisted words, IPs, or URLs.
     chat.bypass.*:
            description: The permission used to give all bypass related permissions.
            children:
                chat.lock.bypass: true
                chat.blacklist.bypass: true
                chat.cooldown.bypass: true
                chat.caps.bypass: true
                chat.spam.bypass: true
                chat.message.repeat.bypass: true
                chat.character.repeat.bypass: true
                chat.advertise.bypass: true
NOTES:
- This plugin has been tested on both 1.7 and 1.8 and does work on both versions. However, I am not responsible if the plugin does not work on the protocol-hack jar.

- For some reason, I wasn't able to upload .zip files so the default jar is Java 8. If you would like a Java 7 jar file, please private message me.

- I have also included a detailed guide that describes each variable in the configuration file.

TERMS OF SERVICE:
- Unless the provided Java 7 jar does not work with your Java 7 server, no refunds will be given.
- You are not allowed to resell or distribute this plugin.
- You are not allowed to take credit for this plugin or claim it as yours.
- You are not allowed to decompile the plugin and/or modify its source.

Latest updates

  1. Chat Handler v1.0.2

    Updates: Added Java 7 support. Fixed white-list issue.

Author

Synic

Owner
Author
Synic
Downloads
16
Views
752
First release
Last update
Rating
0.00 star(s) 0 ratings
Top
You need to upgrade!
Our dark style is reserved for our Premium members. Upgrade here.