A chat relay between Minecraft server and IRC with no mods.
- No mods needed
- Support Java and Bedrock servers, vanilla and modded servers
- Can be run on Windows, Linux and macOS
Java Edition:
Bedrock Edition:
- Bedrock Dedicated Server (Only server start up / shutdown and player join / leave messages)
- Chat
/say
message- Server start up / shutdown
- Player join / leave
- Player death
- Achievement
- Install NodeJS.
- Install MC-Repeater globally using
npm install -g mcrepeater
. - In your Minecraft server directory, create a bash / batch file (e.g.
start.sh
orstart.bat
), then write your Minecraft start command in it. For Java servers, it looks like:For Bedrock servers, it's usually:java -Xmx1024M -Xms1024M -jar server.jar nogui
LD_LIBRARY_PATH=. ./bedrock_server
- Create
config.json
in the same directory and write configurations in it. - Run MC-Repeater using the command
mcrepeater
. You don't need to start Minecraft server manually because it's automatically started by MC-Repeater.
Here's some simple config.json
examples:
{
"serverStart": "start.sh",
"serverType": "java",
"bots": [
{
"botType": "zulip",
"botHost": "example-org.example.com",
"botName": "[email protected]",
"channel": "example-stream/example-topic",
"key": "your-bot-api-key"
}
],
"language": "en-us"
}
{
"serverStart": "start.sh",
"serverType": "java",
"bots": [
{
"botType": "koishi",
"botHost": "bot.your-host.com",
"channel": "your-channel",
"key": "your-secret-key"
}
],
"language": "en-us"
}
- serverStart: Path to your Minecraft server starting bash / batch file.
- serverType: Type of your server. Can be
java
,paper
orbedrock
. - autoRestart (optional): A boolean value which determine whether the MC-Repeater will auto restart your server after your server crashed (default:
false
).
An array for bot configurations:
- botType: Your bot type which determines how the message will be sent. Can be
zulip
orkoishi
orlocal
(for debugging). - botHost: Hostname of your bot server.
- botName: User name of your bot. For Zulip, it's your bot e-mail address. It is not needed for Koishi.
- channel: The channel you want to send information to. For Zulip, it's
"example-stream/example-topic"
. - key: The API key or secret key for your bot. Usually provided by your bot server.
- language: Your language. Currently support
en-us
andzh-cn
.
- throttleInterval (optional): The minimum interval at which messages are sent (default:
0
). - offlineTimeout (optional): The minimum time to determine a player is offline (default:
0
).
-
customMessage (optional): Custom messages to override original messages
Example of
customMessage
:"customMessage": { "join": "Ob $1 joined the game.", "leave": "Ob $1 left the game.", "advancements": { "Diamonds!": "Diorites!" }, "deathReasons": { "magic": "$1 was killed by mogic!", }, "mobs": { "Ender Dragon": "Dragon Bro" } }
-
messageMask (optional): Block certain type of messages.
Message Type Description join The message of a player joined the game leave The message of a player left the game start Server start message stop Server stop message chat Chat message from players server Chat message from the server advancement The message of a player achieved an advancement death Player death message Example of
messageMask
:messageMask: ["join", "leave", "death"]
Licensed under the MIT License.