Carbon 是一个基于频道、功能强大的现代聊天插件,几乎所有设置和格式都可以配置。
需要 Java 21+ 。
## 特性
- 使用 [MiniMessage](https://docs.adventure.kyori.net/minimessage/format.html) 进行消息格式化,支持 RGB、点击、悬停以及 JSON 聊天支持的所有内容。
- 聊天频道,带有加入/离开命令、半径/世界特定的频道等。
- 聊天清除
- 使用 Redis、NATS 或 RabbitMQ 进行跨服务器聊天。
- 静音和忽略其他玩家
- 使用 `
- ` 链接物品和使用像 `` 和 `` 这样的占位符链接盔甲
- 基本的组队系统和组队聊天
- EssentialsXDiscord 和 DiscordSRV 支持
- `@Username` 带有高亮和声音的 Ping
- 可配置前缀和命令的快速聊天
- mcMMO、FactionsUUID 和 Towny 的自定义频道
- 多语言支持。 自动检测玩家的地区设置,并在可用时使用其语言的翻译。
Carbon 在所有平台上都需要 [LuckPerms](https://luckperms.net)。
频道配置示例
```hocon
# 频道的键,用于跟踪频道。
# 您只需要更改键的第二部分。"global" 默认。
# 值用于命令,这可能是您要更改的内容。
key="carbon:global"
# 此频道的聊天格式。
format {
# 基本的聊天格式。
# "default_format" 格式是您想要编辑的主要格式。
# "console" 格式显示在控制台中。
# "discord" 格式显示在支持的 Discord 集成中。
# 键是组名,值是聊天格式(MiniMessage)。
basic {
"default_format"=": "
discord=""
console="[] : "
}
# 语言相关的聊天格式。
locales {
"en_US" {}
}
}
# 如果消息以这个前缀开头,则消息将被发送到此频道。(要禁用此频道的快速前缀,请将其留空/空白)
quick-prefix=""
should-register-commands=true
command-aliases=[]
# 玩家必须在多大距离内才能看到彼此的消息。
# 值 '0' 需要玩家位于同一世界中。
# 在 Velocity 上,'0' 需要玩家位于同一服务器上。
radius=-1
# 如果为 true,玩家将能够看到他们是否没有将消息发送给任何人
# 因为他们超出了半径范围。
empty-radius-recipients-message=true
cooldowns {}
cooldown=-1
```
依赖信息
发布版本和测试版本到 Maven Central
Maven
```xml
de.hexaoxi
carbonchat-api
3.0.0-beta.28
provided
```
Gradle
```kotlin
repositories {
mavenCentral()
}
dependencies {
compileOnly("de.hexaoxi:carbonchat-api:3.0.0-beta.28")
}
```
## Javadocs
https://javadocs.dev/de.hexaoxi/carbonchat-api