ChatBot [Fully Customizable] 6.1

Talk to an extremely customizable virtual bot that responds to anything you configure on your server

  1. Optic_Fusion1
    Native Minecraft Version:
    1.17
    Tested Minecraft Versions:
    • 1.17
    Source Code:
    https://github.com/OpticFusion1/ChatBot
    Chatbot is a very simple to use plugin, that allows you to create and talk to a FULLY CUSTOMIZED bot on your server. It works by choosing from phrases YOU can specify in the config to respond to anything your players might say. The possibilities are infinite!​

    COMMANDS
    /bot enable <fileName|all>
    - Enables the specified bot or every bot - chatbot.enable
    /bot list - lists every enabled bot - chatbot.list
    /bot add <botname> <message> <response> - Adds a misc response to a certain bot - chatbot.add
    /bot disable <botname|all> - Disable all or a specfic bot - chatbot.disable
    /bot reload <config|all|botname> - Reloads the config, all bots, or a specific bot - chatbot.reload

    FEATURES
    Change your bot's name
    Change your bot's prefix
    Change the messages your bot will response with
    Change the sentences your bot will respond to
    Randomized messages for every response
    Allows you to add responses in 2 different ways, with a meth in game to allow for easy bot customization
    Allows for adding on to messages that already have responses
    If no sentences are matched, the bot will choose from generic responses
    Reponse option for messages that don't include your bot's name
    Toggle whether you can trigger the bot or not
    Change the response time of a bot
    Hex color support as well as & color code support
    Lightweight
    Compatible with any plugin
    Responds to a variety of different events
    You're able to send the response only to the bot activator by adding -s to the end of the message
    Has PlaceholderAPI and MVdWPlaceholderAPI support
    Bots have the ability to execute commands with the [cmd] tag
    You can add an infinite amount of bots

    Supported Events
    entitydeath
    playerdeath
    playerjoin
    playerquit
    playeradvancementdone

    PLACEHOLDERS

    PLAYERDEATHEVENT & ENTITYDEATHEVENT

    %dropped_xp_amount%, %drop_amount%, %killed_name%, %killer_name%, %entity_type%
    PLAYERJOIN
    %join_message%
    PLAYERADVANCEMENTDONE
    %advancement_key%
    %advancement_namespace%
    %advancement_criteria%​

    BOT
    %bot_name%, %bot_name_lowercase%, %bot_name_uppercase%, %bot_prefix%, %bot_prefix_lowercase%, %bot_prefix_uppercase%
    PLAYER
    %player_name%, %player_name_lowercase%, %player_name_uppercase%, %player_displayname%, %player_displayname_lowercase%, %player_displayname_uppercase%
    RANDOM
    %random_int%​

    EVENTS
    BotEnableEvent
    BotDisableEvent
    BotReloadEvent

    TAG BLOCKS

    COMMAND

    The [cmd] tag allows you to run commands as either the console or as the player
    Usage: [cmd type=<op|normal>]<command>[/cmd]
    Example: [cmd type=op]ban %player_name%[/cmd]

    PERMISSION
    The [perm] tag allows you to do something if the player has the correct permission
    Usage: [perm=<permission node>]<thing to do>[/perm]
    Example: [perm=chatbot.example]hello[/perm]

    SOUND
    The [sound] tag allows you to play specific sounds
    Usage: [sound]<sound>[/sound]
    Example: [sound]MUSIC_DISK_13[/sound]

    WAIT
    The [wait] block waits a specified amount of time before running something
    It supports ticks (t, tick, ticks), milliseconds (ms, milli, millis, millisecond, milliseconds), seconds (s, sec, secs, second, seconds), minutes (m, min, mins, minute, minutes), hours (h, hour, hours), and years (y, year, years)
    Usage: [wait=<time>]<thing to run>[/wait]
    Example: [wait=1day][cmd type=op]give %player_name% diamonds 64[/cmd][/wait]
    HOW TO USE
    Player's require the "chatbot.use.<botname>" permission e.g. "chatbot.use.ChatBot" to use specific bots
    The bot works on a principle of pre-generated sentences, coupled with randomness. From the "responses" branch in the config, you can branch out into multiple, sentences of varying complexity. Here's an example
    Code (Text):
    responses:
     how:
      are:
       you:
        - "Not great!"
        - "Great!"
    In this instance, the sentence that would trigger a response from the bot is "how are you". And the bot will randomly choose between "Good!", and "Not great." for it's answer! You can have as many of these as you want, and you can do nothing but expand the bot!
    Anything under the "responses" branch requires you to type the bot name first for example ChatBot how are you.
    If it's under the "miscellaneous" section then you don't have to type the bot name

    Regexes:
    All regexes go within the <botname>-regexes.txt file.
    Regex for the default bot for example would go within the "default-regexes.txt" file

Recent Updates

  1. [6.1]
  2. [6.0.0]
  3. [5.19.2]

Recent Reviews

  1. Shuuin
    Shuuin
    4/5,
    Version: 6.0.0
    Works great, would be cool if there was a better explaination for the other reponces. It confused me
  2. j0nny
    j0nny
    1/5,
    Version: 5.19
    downloaded today but this says work but it no doesn't, can please how work because it does not?
    1. Optic_Fusion1
      Author's Response
      There's a support server for a reason
  3. Erikk_GP
    Erikk_GP
    5/5,
    Version: 5.11
    Good plugin and author is working hard to improve it all the time. Limited only by my own lack of skill :P
  4. SonodaUmi
    SonodaUmi
    5/5,
    Version: 5.4
    Amazing plugin. I can't describe how easy to customize and understand it is. Also great support from the Author!
  5. KatTheCrafter
    KatTheCrafter
    5/5,
    Version: 5.1
    I love this plugin. The initial learning curve for this type of REGEX was a little daunting, but after some patience and perseverance, I was able to create a chatbot that listens for key words/phrases, and responds in an almost human-like way. It's astoundingly useful on our server (so much so that we've configured ours to handle almost 100% of what a junior staff member would be expected to know - answering server questions, performing tasks like changing time or weather by request, cleaning up dropped entities..) and have even programmed dice-rolling and coin tosses into the mix, just for fun.
    Our ChatBot is an absolutely vital member of the server, and even when players are alone, they don't have to feel alone. Our ChatBot is programmed to respond to various player needs - and feelings - and has become an absolute hit with all of the players. Without question, it is one of the most popular (and useful) plugins we have ever installed!
    1. Optic_Fusion1
      Author's Response
      Thanks for the review :)
  6. SSKirillSS
    SSKirillSS
    5/5,
    Version: 4.26
    Great plugin, fully customizable, only one sad thing - at 1.12 per-word responses doesn't work. But, still 5 stars, because this plugin designed for 1.15 ;)
  7. Minkizz
    Minkizz
    5/5,
    Version: 4.26
    wow, it's a good bot plugin, it's... very good, i love your plgins, but please do more updates
  8. trollcraft.pl
    trollcraft.pl
    4/5,
    Version: 4.26
    I have a problem, because when players use a bot, only I can see his messages, and no matter what permissions a player has. Only I can see the message. Please help.
    1. Optic_Fusion1
      Author's Response
  9. fangster
    fangster
    5/5,
    Version: 4.25
    With a bit of imagination the possibilities are endless! From my point of view, it's amazing. It's what I was looking for. It would've been great if the bot wasn't case sensitive. Or at least have an option to turn case sensitivity on or off. It's a bit annoying to add additional responses just for a letter the player might forget to capitalize or not.
    1. Optic_Fusion1
      Author's Response
      I *thought* i dealt with the case sensitivity issue in a previous update, strange.. I'll have to look into it.

      Also thanks <3
  10. Myp4ik_Gabri
    Myp4ik_Gabri
    5/5,
    Version: 4.15
    The plugin is excellent, but .. you can tell how to add several actions to the bot, for example: execute a command and send a text message. And yes, I didn’t understand how to add or where to add -s so that the message was sent personally to the player, I added it to the end of the message but it was displayed along with the message, and when I put the quotation mark the plugin crashed