Back to mods
ChatChannels project artwork

CurseForge · Minecraft mod

ChatChannels

**ChatChannels** is an advanced, server‑side chat channels system for **Minecraft 1.20.1 (Forge)**.

Choose a version Pick your version below, then grab the matching file.

Quick answer

Which ChatChannels release should I use?

Updated today
Latest stable file ChatChannels-1.20.1-forge-V1.3.jar
Game version 1.20.1
Loader Forge

ChatChannels-1.20.1-forge-V1.3.jar targets 1.20.1 with Forge. The project page does not say whether this file belongs on the client, dedicated server, or both. No extra mods listed for this file.

Where it goes

Is ChatChannels required on the client, server, or both?

The project page does not say whether this file belongs on the client, dedicated server, or both.

Client Source doesn’t say
Dedicated server Source doesn’t say
Loader for this release Forge
Required install it here Optional supported, not mandatory Not supported do not install here Source doesn’t say do not assume

The source does not explicitly classify this release as client-only or server-only.

What else does ChatChannels-1.20.1-forge-V1.3.jar need?

ChatChannels-1.20.1-forge-V1.3.jar. Change the file and its required mods may change too.

No extra mods listed for this file

This file does not list any required mods. Do not add a library just because a different file uses it.

This file does not list any required or optional mods.

Before you install it

Add ChatChannels without breaking your instance.

Built for ChatChannels-1.20.1-forge-V1.3.jar. Pick another file and the loader, install side or required mods may change.

  1. 01

    Stick to this file

    Use ChatChannels-1.20.1-forge-V1.3.jar. It targets 1.20.1 with Forge; another release may have different loader, side or dependency requirements.

  2. 02

    Bring the mods it needs

    This file does not list any required mods. Do not add a library just because a different file uses it.

  3. 03

    Put it on the correct side

    The project page does not say whether this file belongs on the client, dedicated server, or both.

  4. 04

    Pick the file you checked

    Use the “Get this file” button beside ChatChannels-1.20.1-forge-V1.3.jar. It opens that exact file at the source.

About this project

What does ChatChannels add?

ChatChannels

**ChatChannels** is an advanced, both‑side chat channels system for **Minecraft 1.20.1 (Forge)**.

It adds configurable global/local/trade/staff channels, private messages, rate limiting, logging, and integration with popular permission systems.


✨ Features

  • **Multiple chat channels out of the box**

  • global – server‑wide chat

  • local – proximity chat with configurable radius

  • trade – trading / market channel

  • staff – staff‑only channel (permission‑gated)

  • pm – private messages channel (used internally)

  • **Fully configurable channels**

  • Custom id, display name, type, prefix, color, radius and default channel

  • Per‑channel **permission node** (optional) – restrict who can see/use each channel

  • **Permission system integration**

  • **LuckPerms** support (via official API)

  • **FTB Ranks** support (ranks.snbt permissions)

  • Fallback to **vanilla op level 4** if no permission plugin is available

  • **Per‑player chat state**

  • Remember last used channel per player

  • Mute specific channels

  • Ignore specific players

  • **Rate limiting / anti‑spam**

  • Configurable messages‑per‑time window per player

  • **Logging**

  • All channel messages can be logged for moderation (server‑side)

  • **Server config options**

  • Local chat radius

  • Rate limit (messages / seconds)

  • Optional **“joined/left channel”** system messages


🔌 Installation / Sides

ChatChannels is a **server‑focused mod**, but it must be installed on **both the server and all connecting clients**.

  • **Singleplayer / Open to LAN**

  • Install the mod on the client. The integrated server will automatically run with the same mod.

  • **Dedicated servers**

  • Put the mod JAR into the mods folder on the **server**.

  • Also include the same JAR in the **client modpack** for all players who join the server.

The mod is built as a standard Forge mod with side = BOTH:

it contains server‑side logic (channels, permissions, configs, logging) and client‑side code for handling network packets and displaying chat channels.


🧩 Requirements & Compatibility

  • **Minecraft:** 1.20.1

  • **Loader:** Forge 47.x (built and tested against **Forge 47.4.0**)

  • **Java:** 17

**Works on:**

  • **Dedicated servers** – core logic runs server‑side

  • **Clients:** the mod is intended to be installed on both **server and client** for best experience (channel UI, packets, etc.)

**Optional integrations (not required, but supported):**

  • **LuckPerms** – for permission checks like chat.channels.global

  • **FTB Ranks** – for permission nodes and rank‑based name formatting:

  • Permission nodes in ranks.snbt such as:

  • chat.channels.global

  • chat.channels.local

  • chat.channels.trade

  • chat.channels.staff

  • Rank name formats via ftbranks.name_format (used as privilege tags)

If neither LuckPerms nor FTB Ranks are present, the mod falls back to vanilla operator level checks (hasPermissions(4)).


⚙️ Configuration Overview

The mod generates its configs on first run. There are **three main config files**:

1. config/chatchannels.json

Defines all chat channels and global rate limiting.

**Fields per channel:**

  • id – internal channel ID (e.g. "global", "local", "trade", "staff", "pm")

  • name – display name shown in the UI (e.g. "Global", "Local")

  • type – how the channel behaves:

  • GLOBAL, LOCAL, TRADE, STAFF, TEAM, PRIVATE, CUSTOM

  • prefix – short prefix before messages, e.g. "[G]", "[Local]", "[Trade]"

  • color – hex color string, e.g. "#FFFFFF", "#FFD700"

  • radius – for LOCAL channels: radius in blocks; 0 = global‑like broadcast

  • default – true if this should be the default channel for new players

  • permission – **permission node required** to use the channel

  • Example defaults:

  • chat.channels.global

  • chat.channels.local

  • chat.channels.trade

  • chat.channels.staff

  • If set to an empty string "", **no permission is required** for that channel.

**Rate limit section:**


"rate\_limit": {

"messages": 5,

"per\_seconds": 3

}
  • messages – how many messages a player may send

  • per_seconds – time window in seconds

If the limit is exceeded, the player receives a system message like "You are sending messages too fast."


2. serverconfig/chatchannels-server.toml

Server‑side gameplay settings:

  • localChat.radius

Default radius (in blocks) for the default LOCAL channel.

  • rateLimit.messages

Same as in chatchannels.json, but exposed as Forge server config.

  • rateLimit.seconds

Time window for rate limiting.

  • channels.showSwitchMessages

  • true (default) – show server messages when a player joins or leaves a channel:

  • Joined channel <id>

  • Left channel <id>

  • false – do not send these system messages.

These messages are sent when the player uses the channel command / UI that triggers **JOIN/LEAVE** actions.


3. config/chatchannels_privileges.json

Controls **colors for privilege tags** (rank labels) shown before player names in chat.

  • defaultColor – hex color for unknown/unspecified tags (e.g. "#FFD700")

  • tags – map from **privilege tag string** to a hex color:

  • The tag is derived from:

  1. LuckPerms prefix (if available), OR

  2. ftbranks.name_format (if available), OR

  3. "OP" for server operators

**Default example:**


{

"defaultColor": "#FFD700",

"tags": {

"Игрок": "#AAAAAA",

"VIP": "#55FFFF",

"Модератор": "#55FF55",

"Админ": "#FF5555",

"OP": "#FF5555"

}

}

You can customize this file to match your server’s rank names and colors.


🔑 Permissions

By default, the following permission nodes are used:

  • chat.channels.global – talk in the global channel

  • chat.channels.local – talk in the local channel

  • chat.channels.trade – talk in the trade channel

  • chat.channels.staff – access the staff channel (for moderators/admins)

These nodes can be controlled via:

  • **LuckPerms** (assign them to users/groups), or

  • **FTB Ranks** (ranks.snbt), for example:


default: {

...

chat.channels.global: true

chat.channels.local: true

chat.channels.trade: true

}

vip: {

...

chat.channels.global: true

chat.channels.local: true

chat.channels.trade: true

}

If you want a channel to be available to everyone without permissions, simply set its permission field in chatchannels.json to an empty string "".


📝 Notes

  • All config files are **generated automatically** on first server start.

  • Safe to customize and reload between server restarts.

  • The mod does **not** add commands for channel creation yet — custom channels are defined purely through chatchannels.json.

Project description from CurseForge.

Pick your setup

ChatChannels by Minecraft version and loader

Choose the version and loader you play, then open the matching release.

1 available setups

Check the dependencies, then try the file in a copied instance before changing a world you care about.

Recent files

ChatChannels versions and loaders

3 of 3 releases match

Looking for an older file? The official CurseForge project page is in Resources.