Skip to content
This repository has been archived by the owner on Oct 23, 2024. It is now read-only.

Per World Chat Formatting

kangarko edited this page Aug 14, 2017 · 1 revision

ChatControl can format the chat differently depending on what permissions the player has. This can be used to give players different chat format depending on what world they are in (given your permission plugin supports that).

This tutorial shows you how to do it. Requirements: ChatControl + a permission plugin

1. Set-Up Groups with Different Chat Formats

Below is an example of how you can set-up different chat formats for different groups. Here, we will be having different formats for (all) survival worlds, skyblock worlds and the hub/lobby world.

You can also make chat formats in your chat.yml file and only write the format name to the Interactive_Format key. For all values, please see the default settings file.

settings.yml

# file: plugins/ChatControl/settings.yml

Groups:
  Enabled: true
  Group_List:
    survival:
      Interactive_Format: "(sur) &6{Guilds_name}%&r {pl_prefix} {nick}{pl_suffix}&r: {message}"

    hub:
      Interactive_Format: "(h) {nick}&r: {message}"

    skyblock:
      Interactive_Format: "(sky) &a{ISLAND_LEVEL} {nick}&r: {message}"

2. Give Players Permissions

The second and the last step (it is so easy!) is to use your permission plugin to give the players per-world permissions. This example uses PermissionsEx, but you can use any plugin supporting it.

Note that the repetitive code is not ChatControl's fault, but a lack of support in the specific permission plugin.

# file: plugins/PermissionsEx/permissions.yml

groups:
  Player:
    permissions:
    - ... # Normal permissions for all worlds

    worlds: 
      world:
        permissions:
          - chatcontrol.group.survival
      world_nether:
        permissions:
          - chatcontrol.group.survival
      world_the_end:
        permissions:
          - chatcontrol.group.survival
          
      skyblock:
        permissions:
          - chatcontrol.group.skyblock
      
      hub:
        permissions:
          - chatcontrol.group.hub