7.7 KiB
RedisBungee fork By Limework
if you are here for transferring players to another proxy when the first proxy crashes or whatever this plugin won't do it, tell mojang to implement transfer packet. Click here, for more information about transfer packet
The original project of RedisBungee is no longer maintained, so we have forked the plugin. RedisBungee uses Redis with Java client Jedis to Synchronize players data between BungeeCord or Velocity* proxies
Velocity*: version 3.1.2 or above is only supported, any version below that might work but might be unstable #40
Downloads
or from github releases
https://github.com/ProxioDev/RedisBungee/releases
notes
If you are looking to use Original RedisBungee without a change to internals, with critical bugs fixed, please use version 0.6.5 and java docs For legacy Version 0.6.5 as its last version before internal changes. please note that you will not get support for any old builds unless critical bugs effecting both 0.6.5 and 0.7.0 or above.
SpigotMC resource page: click
Supported Redis versions
Redis version | Supported |
---|---|
1.x.x | ✖ |
2.x.x | ✖ |
3.x.x | ✔ |
4.x.x | ✔ |
5.x.x | ✔ |
6.x.x | ✔ |
7.x.x | ✔ |
Implementing RedisBungee in your plugin:
RedisBungee is distributed as a Gradle project.
Setup jitpack repository
maven
<repositories>
<repository>
<id>jitpack.io</id>
<url>https://jitpack.io</url>
</repository>
</repositories>
gradle (kotlin dsl)
repositories {
maven("https://jitpack.io/")
}
BungeeCord
add this in your project dependencies
maven
<dependency>
<groupId>com.github.proxiodev.redisbungee</groupId>
<artifactId>RedisBungee-Bungee</artifactId>
<version>VERSION</version>
<scope>provided</scope>
<!-- <classifier>all</classifier> USE THIS IF YOU WANT TO USE INCLUDED JEDIS LIB BECAUSE OF RELOCATION -->
</dependency>
gradle (kotlin dsl)
implementation("com.github.ProxioDev.redisbungee:RedisBungee-Bungee:0.11.0")
// USE THIS IF YOU WANT TO USE INCLUDED JEDIS LIB BECAUSE OF RELOACTION AND REMOVE THE ABOVE STATEMENT
implementation("com.github.ProxioDev.redisbungee:RedisBungee-Bungee:0.11.0:all") {
exclude("redis.clients", "jedis")
}
then in your project plugin.yml add RedisBungee
to depends
like this
name: "yourplugin"
main: your.main.class
version: 1.0.0-SNAPSHOT
author: idk
depends: [ RedisBungee ]
Velocity
maven
<dependency>
<groupId>com.github.proxiodev.redisbungee</groupId>
<artifactId>RedisBungee-Velocity</artifactId>
<version>VERSION</version>
<scope>provided</scope>
<!-- <classifier>all</classifier> USE THIS IF YOU WANT TO USE INCLUDED JEDIS LIB BECAUSE OF RELOCATION -->
</dependency>
gradle (kotlin dsl)
implementation("com.github.ProxioDev.redisbungee:RedisBungee-Velocity:0.11.0")
// USE THIS IF YOU WANT TO USE INCLUDED JEDIS LIB BECAUSE OF RELOACTION AND REMOVE THE ABOVE STATEMENT
implementation("com.github.ProxioDev.redisbungee:RedisBungee-Velocity:0.11.0:all") {
exclude("redis.clients", "jedis")
}
then to make your plugin depends on RedisBungee, make sure your plugin class Annotation
have @Dependency(id = "redisbungee")
like this
@Plugin(
id = "myplugin",
name = "My Plugin",
version = "0.1.0-beta",
dependencies = {
@Dependency(id = "redisbungee")
}
)
public class PluginMainClass {
}
Getting the latest commits to your code
If you want to use the latest commits without waiting for releases. first, install it to your maven local repo
git clone https://github.com/ProxioDev/RedisBungee.git
cd RedisBungee
./gradlew publishToMavenLocal
then use any of these in your project.
<dependency>
<groupId>com.imaginarycode.minecraft</groupId>
<artifactId>RedisBungee-Bungee</artifactId>
<version>VERSION</version>
<scope>provided</scope>
<!-- <classifier>all</classifier> USE THIS IF YOU WANT TO USE INCLUDED JEDIS LIB BECAUSE OF RELOCATION -->
</dependency>
<dependency>
<groupId>com.imaginarycode.minecraft</groupId>
<artifactId>RedisBungee-Velocity</artifactId>
<version>VERSION</version>
<scope>provided</scope>
<!-- <classifier>all</classifier> USE THIS IF YOU WANT TO USE INCLUDED JEDIS LIB BECAUSE OF RELOCATION -->
</dependency>
Javadocs
- API: https://ci.limework.net/RedisBungee/RedisBungee-API/build/docs/javadoc/
- Velocity: https://ci.limework.net/RedisBungee/RedisBungee-Velocity/build/docs/javadoc/
- Bungeecord: https://ci.limework.net/RedisBungee/RedisBungee-Bungee/build/docs/javadoc/
Configuration
REDISBUNGEE REQUIRES A REDIS SERVER, preferably with reasonably low latency. The default config is saved when the plugin first starts.
compatibility with original RedisBungee in Bungeecord ecosystem
This fork ensures compatibility with old plugins, so it should work as drop replacement, but since Api has been split from the platform there some changes that have to be done, so your plugin might not work if:
- there is none at the moment, please report any findings at the issue page.
Cluster mode compatibility in version 0.8.0:
If you are using static legacy method RedisBungee#getPool()
it might fail in:
- if Cluster mode is enabled, due fact its Uses different classes
- if JedisPool compatibility mode is disabled in the config due fact project internally switched to JedisPooled than Jedis
Support
You can join our matrix room here
License
This project is distributed under Eclipse Public License 1.0
You can find it here
You can find the original RedisBungee is by astei and project can be found here or spigot page here, but its no longer available
YourKit
YourKit supports open source projects with innovative and intelligent tools for monitoring and profiling Java and .NET applications. YourKit is the creator of YourKit Java Profiler, YourKit .NET Profiler and YourKit YouMonitor.