https://github.com/phoenix616/connectorplugin
Plugin to simplify communication between multiple Minecraft servers (and proxies) in a network. Supports plugin messages, redis and MQTT (e.g. using RabbitMQ or Google Cloud. MQTT is untested rn!). RedisBungee alternative.
https://github.com/phoenix616/connectorplugin
bukkit bukkit-plugin bungee bungee-plugin bungeecord google-cloud-pubsub minecraft mqtt paper proxy pubsub rabbitmq redis redis-pubsub redisbungee spigot velocity velocity-plugin waterfall waterfall-plugin
Last synced: 5 months ago
JSON representation
Plugin to simplify communication between multiple Minecraft servers (and proxies) in a network. Supports plugin messages, redis and MQTT (e.g. using RabbitMQ or Google Cloud. MQTT is untested rn!). RedisBungee alternative.
- Host: GitHub
- URL: https://github.com/phoenix616/connectorplugin
- Owner: Phoenix616
- License: agpl-3.0
- Created: 2020-10-14T18:30:14.000Z (about 5 years ago)
- Default Branch: master
- Last Pushed: 2025-07-17T15:11:24.000Z (5 months ago)
- Last Synced: 2025-07-17T17:46:11.717Z (5 months ago)
- Topics: bukkit, bukkit-plugin, bungee, bungee-plugin, bungeecord, google-cloud-pubsub, minecraft, mqtt, paper, proxy, pubsub, rabbitmq, redis, redis-pubsub, redisbungee, spigot, velocity, velocity-plugin, waterfall, waterfall-plugin
- Language: Java
- Homepage: https://wiki.phoenix616.dev/plugin/connectorplugin/
- Size: 281 KB
- Stars: 62
- Watchers: 4
- Forks: 8
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# ConnectorPlugin
Plugin to simplify communication between multiple Minecraft servers in a network (and their proxy). Support Spigot/Paper, BungeeCord and Velocity.
This includes a bridging utility and some basic commands to use the provided utility functionality but it is mostly meant to be depended on by other plugins so they can easily query and send data between servers without having to implement that logic themselves.
## Features
- [x] Send arbitrary data to servers and proxies
- [x] Send commands to other servers and proxies
- [x] Server-side command registration from proxy
- [x] Location querying
- [ ] Server state querying
- [x] Teleporting (Including multi-proxy player to player teleportation)
- [ ] Proxy-side Vault/Tresor integration
## Communication Methods
- [x] Plugin Messages (limited functionality)
- [ ] peer-to-peer
- [x] redis pub sub
- [x] MQTT (E.g. with RabbitMQ)
## Commands
### On the Spigot server
> `/connectorplugin`
> *Permission:* `connectorplugin.command`
> *Aliases:* `connector`, `connectorcommand`, `connplugin`, `cp`
>
>> `teleport [ [ [ ]]]`
>> Teleport a player to the specified server/world/location
>> *Permission:* `connectorplugin.command.teleport`
>> *Aliases:* `tp`, `send`
>
>> `teleporttoplayer []`
>> Teleport yourself to the player or the player to the target player
>> *Permission:* `connectorplugin.command.teleporttoplayer`
>> *Aliases:* `teleportplayer`, `tpp`
>
>> `servercommand ...`
>> Executes command in the console of the specified server
>> *Permission:* `connectorplugin.command.servercommand`
>> *Aliases:* `serverconsole`, `serverconsolecommand`, `server`, `scc`
>
>> `servercommand p: ...`
>> Executes command in the console of the server the player is connected to
>> *Permission:* `connectorplugin.command.servercommand`
>> *Aliases:* `serverconsole`, `serverconsolecommand`, `server`, `scc`
>
>> `proxycommand ...`
>> Execute a command on all other proxies
>> *Permission:* `connectorplugin.command.proxycommand`
>> *Aliases:* `proxyconsole`, `proxyconsolecommand`, `proxy`, `pcc`
>
>> `proxyplayercommand ...`
>> Execute a command as a player on the proxy they are connected to
>> *Permission:* `connectorplugin.command.proxyplayercommand`
>> *Aliases:* `proxyplayer`, `player`, `ppc`
### On the Proxies
### Main Bungee command
> `/connectorpluginbungee`
> *Permission:* `connectorplugin.command`
> *Aliases:* `connectorbungee`, `connectorcommandbungee`, `connpluginbungee`, `cpb`
>
>
### Main Velocity command
> `/connectorpluginvelocity`
> *Permission:* `connectorplugin.command`
> *Aliases:* `connectorvelocity`, `connectorcommandvelocity`, `connpluginvelocity`, `cpv`
>
### Proxy sub commands
>> `teleport [ [ [ ]]]`
>> Teleport a player to the specified server/world/location
>> *Permission:* `connectorplugin.command.teleport`
>> *Aliases:* `tp`, `send`
>
>> `teleporttoplayer []`
>> Teleport yourself to the player or the player to the target player
>> *Permission:* `connectorplugin.command.teleporttoplayer`
>> *Aliases:* `teleportplayer`, `tpp`
>
>> `servercommand ...`
>> Executes command in the console of the specified server
>> *Permission:* `connectorplugin.command.servercommand`
>> *Aliases:* `serverconsole`, `serverconsolecommand`, `server`, `scc`
>
>> `servercommand p: ...`
>> Executes command in the console of the server the player is connected to
>> *Permission:* `connectorplugin.command.servercommand`
>> *Aliases:* `serverconsole`, `serverconsolecommand`, `server`, `scc`
>
>> `serverplayercommand ...`
>> Execute a command as the target player on their server
>> *Permission:* `connectorplugin.command.serverplayercommand`
>> *Aliases:* `serverplayer`, `player`, `spc`
>
>> `proxycommand ...`
>> Execute a command on all other proxies
>> *Permission:* `connectorplugin.command.proxycommand`
>> *Aliases:* `proxyconsole`, `proxyconsolecommand`, `proxy`, `pcc`
## Developer Info
### Usage
[Javadocs](https://docs.phoenix616.dev/connectorplugin/)
Check [the wiki](https://wiki.phoenix616.dev/plugin:connectorplugin:usage:start) for usage examples.
### Maven Info
```xml
minebench-repo
https://repo.minebench.de/
```
```xml
de.themoep.connectorplugin
[bukkit|bungee|velocity]
1.2-SNAPSHOT
provided
```
## Download
Latest development builds can be found on the Minebench.de Jenkins: https://ci.minebench.de/job/ConnectorPlugin/
## License
This project is [licensed](LICENSE) under the AGPLv3:
```
ConnectorPlugin
Copyright (C) 2021 Max Lee aka Phoenix616 (max@themoep.de)
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License as published
by the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU Affero General Public License for more details.
You should have received a copy of the GNU Affero General Public License
along with this program. If not, see .
```