DuckChat 1.12

Cross server chat made easy.

  1. CyberTiger

    A bukkit plugin for cross server chat.
    • Does not require BungeeCord
    • Supports cross server private messages.
    • Simple to configure.
    • Supports multiple channels.
    • Supports server local channels.
    • Supports prefixes and suffixes.
    • Supports nicknames.


    Permission: duckchat.channels

    List available channels.

    /join <channel>
    Permission: duckchat.join

    Join a chat channel.

    /part <channel>
    Permission: duckchat.part

    Leave a chat channel.

    /channel <channel>

    Change the channel you are currently speaking on.

    /chlist [channel]
    Permission: duckchat.chlist

    List players currently listening to a channel.

    /me <action>

    Perform an action on your current channel.

    /tell <player> <message>
    Permission: duckchat.message
    • /whisper
    • /msg
    • /m
    • /t

    Send a message to a player.

    /reply <message>
    Permission: duckchat.reply
    • /r

    Reply to the last player that private messaged you.

    /dc say <message>
    Permission: duckchat.say

    The same as chatting without commands, except also usable by console, since it's occasionally useful to be able to chat on channels as console.

    /broadcast [-g] <message>
    Permission: duckchat.broadcast
    • /bc

    Broadcast a message to the server you're on, or with -g to everyone on all of the servers in the network.

    /rexec <-g|<server>> <command>
    Permission: duckchat.rexec

    Execute a command on the server specified as console, or if -g is specified on all servers.


    Allows a player to use color codes in chat with &.

    Allows a player to use format codes in chat with &.


    Allows a player to use color codes in private messages with &.


    Allows a player to use format codes in private messages with &.


    Allows a player to use color codes in broadcasts.


    Allows a player to use format codes in broadcasts.


    Allows a player to bypass channel limits on message and repetition rates.


    Code (Text):
    # Name of JGroups cluster.
    # Sets the name of the jgroups cluster to connect to, this must be the same
    # on all the servers you want to be in the same cluster.
    # clusterName: duckchat

    # Name of this server, defaults to using server-name from
    # If you don't wish to set server-name in, or you wish
    # to use a different value here, uncomment this.
    # nodename: Unknown

    # Default channel name.
    defaultChannel: global

    # Store players by UUID.
    useUUIDs: true

    # Use IPv4
    useIPv4: true

    # Address to use for multicast networking

    # Notify players about servers joining
    notifyServerJoin: true

    # Notify players about servers leaving
    notifyServerLeave: true

    # Notify players about players joining
    notifyPlayerJoin: true

    # Notify players about players leaving
    notifyPlayerLeave: true

    # Shortcuts for accessing channels.
    # Include a space in the shortcut if you wish it to require a space.
      '! ': global

    # Network config
    # Should not be needed unless you want to try using strange configurations.
    # network: udp.xml

    # List of channels.

    # format parameters.
    # 1 - Channel name
    # 2 - Nodename
    # 3 - World name
    # 4 - player name
    # 5 - player prefix
    # 6 - player display name
    # 7 - player suffix.
    # 8 - Message or action.
                    owned: false
                    localAutoJoin: false
                    messageFormat: '[%1$s %6$s] %8$s'
                    actionFormat: '[%1$s] %6$s %8$s'
                    globalAutoJoin: true
    #                permission: some.permission
    # Optional per channel spam configuration below.
    # Limits channel members to 4 messages per 10 seconds.
    #                spamWindow: 10000
    #                spamThreshold: 4
    # Limits channel members to 3 repeated messages per 60 seconds.
    #                repeatWindow: 60000
    #                repeatThreshold: 3

    # Uncomment and rename this for a locally owned channel
    #        local:
    #                owned: true
    #                localAutoJoin: true
    #                globalAutoJoin: false
    #                permission: some.permission
    Installation notes

    • Ensure you have server-name set to a unique name for each server you want to use this plugin with, or set nodename to a unique name in config.yml for each server.
    • By default this plugin only shares chat between servers on the same machine, if you wish to use it between multiple hosts, they must all be on the same subnet, and you must change bindAddress in config.yml to the address of the network interface on that subnet.
    • If your machines aren't all on the same subnet, then you can use a vpn to simulate them all being on the same subnet, but it's not a supported configuration (I've done it, it works, VPNs are a pain to setup).


Recent Updates

  1. Updated for Spigot 1.9
  2. 1.11
  3. 1.10

Recent Reviews

  1. Pontusedberg
    Version: 1.7
    Very good chat pluggin!