5

I am making a mini-game for my server, working with version 1.7.10, and using spigot/bukkit.

Is there any way to disable players from chatting, but still allow for any command outputs to still appear, for example, a command blocking executing /tellraw.

I want all players to be unable to use chat, including the /msg, /tell and /say commands.

4
  • Hmm... I don't actually think this is possible without plugins, but I'm not certain
    – Unionhawk
    Commented Apr 5, 2016 at 19:27
  • Try constantly pressing F3+D... not good idea
    – user143228
    Commented Apr 6, 2016 at 9:20
  • 1
    You have to use a plugin and block everything, in bukkit this would be the event called PlayerChatEvent, you could use e.Cancel everytime the event is called.
    – Baumi
    Commented Apr 6, 2016 at 9:22
  • Options>Chat Settings>Chat: Commands Only
    – rappatic
    Commented Apr 7, 2016 at 20:45

2 Answers 2

2

You can use this: http://dev.bukkit.org/bukkit-plugins/per-world-chat-plus/

But needed thing is that you create its own map for the "event", so players will be on separate map (So you need some Multiverse plugin). The plus side of this is that players will be ABLE to chat, but only with people on same map - so it is possibly to make team events or so, still maintaining that the "main" chat will be totally separated from them.

However probably for the /tell etc commands you will need to use permissions (and yes, you can disable permission to chat on per-world basis, too, however that is kinda brutal and not player friendly...) , if there is no feature in that plugin for this, too.

So all you need is to find permission nodes for all commands you want to disable and (via PEX for example) disable those commands in the world your game is being played in. For PEX , just use something like this with negative permission and putting it into the world you have it in :

/pex group default add -<permission.node.you.want.to.disable> <worldname>

This will make all people in default group to not be able to use those commands in the world mentioned, but they will be able to use them otherwise.


Another possible solution can be with WorldGuard plugin, then you don't need to have separate world ( but it still be better) , only defined region. Then you can use flags (example):

/region flag <name of region> blocked-cmds /tell,/say,/msg,/t,/pm
/region flag <name of region> send-chat deny
/region flag <name of region> receive-chat deny

HOWEVER I did not tested if those last two flags won't disable also sending of commands and receiving /tellraw messages. (if it is for pure player chat or total chat with everything in it). It will be better solution, if it won't block everything, but well, I'm unable to test it for now.

-2

Find this plugin here.

This useful plugin, ClearChat, allows you to clear other players' chats.

If you want to, you can create a command block loop to constantly clear players' chats. Just use the command /cc.

Unfortunately, this does not include functionality to disable chat commands. You might be able to disable those using PermissionsEx. That documentation is located here under the "User's permission management" subheader.

Hope this helps,

HewwoCraziness

2
  • Will this work cuz whenever u download a plugin it seems the new commands u get from the plugin can't be used in a command block.
    – gamer103
    Commented Apr 12, 2016 at 0:20
  • @gamer103 Yes it should. If the commands don't work then please send a screenshot.
    – Eric
    Commented Apr 12, 2016 at 21:52

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.