Skip to content

Repository files navigation

Aelysium Wordmark Image

👋 Welcome to RustyConnector

Velocity PaperMC Folia Fabric Aelysium Build License

RustyConnector is a load-balancing plugin that can run on Velocity/Paper/Folia networks, which allows your proxy to automatically register or unregister sub-servers while it's running.

🧭 Links


Wiki

Wanna learn how to get started? Look here!


Download

Download from GitHub, or check out the plugin release pages.


Support

Join our Discord community here for support!
(Support is offered to paying server members only)


Report Bugs

Experiencing annoying bugs while using the plugin? Report them here to help us squash them.

🚀 Plugin Release Page


Modrinth

Click to go to Modrinth plugin release page.


Hangar

Click to go to Hangar plugin release page.


⭐ Core Features

  • ✅ Register new servers to the proxy during runtime

  • ✅ Organize servers into Families

  • ✅ Integrated Load Balancing

  • ✅ Set soft and hard player limits for servers

  • ✅ Supports Kubernetes/Docker

  • ✅ End-to-end packet encryption (AES-256)`

  • ✅ Comprehensive API

  • ✅ Fully Extensive Plugin System

🤔 Returning Features

The v0.9.0 rewrite has removed many "extra" features in previous versions. These features are being incrementally released as external modules you can install if you need them.

  • 🔳 Static Family

  • 🔳 Anchors/Hub

  • 🔳 Player Registry (If a haze provider exists, we can persist player data to the database.)

  • 🔳 Parties

  • 🔳 Friends

  • 🔳 TPA

  • 🔳 Ranked Family

  • 🔳 Forced Hosts (RC natively supports Velocity's forced hosts via "virtual family servers")

  • 🔳 Discord Webhook

  • 🔳 Redis Magic Link (RC v0.9.0 now uses websockets instead of Redis by default)

🤔 Upcoming Features

  • ✅ Absolute Redundancy Architecture (v0.9)

  • ✅ Stateful packet communication (v0.9)

  • ✅ Native Websocket Support (v0.9)

  • 🔳 Kubernetes-Native Dynamic Scaling

  • 🔳 Comprehensive Git-Ops

  • 🔳 RabbitMQ Support

  • 🔳 REST API Module

  • 🔳 Viewport Integrated Dashboard (Release Version TBD)


🛠️ Building & Testing

RustyConnector builds three artifacts from one Gradle (Kotlin DSL) build: the Velocity proxy plugin, the Paper backend plugin, and the Fabric backend mod.

Setup

The build's only prerequisite is JDK 21. Everything runs through the Gradle wrapper (./gradlew), which pins Gradle 9.6.0 (required by the Fabric Loom toolchain); Gradle uses a JDK 21 it finds on the system but won't download one. Get JDK 21 either way:

  • With Nixnix develop (or direnv allow) opens a shell with JDK 21, Gradle 9, Maven, and just, and sets JAVA_HOME.
  • Without Nix — install JDK 21 yourself. Add just too for the task recipes below, or call ./gradlew directly.

Common tasks (just)

Recipe What it does
just build Build the velocity / paper / fabric jars (./gradlew build).
just clean Remove build outputs.
just test Build, stand up the integration cluster, run the bot scenarios.
just up Stand up the integration cluster (boot, wire, verify registration).
just down Tear the cluster down and wipe its data.
just logs Follow cluster logs.
just bot [scenario] Run a single bot scenario (default fallback).

just --list shows the full set. Build artifacts land in <platform>/build/libs/rustyconnector-<platform>-<version>.jar.

Integration test harness (Docker)

just test / just up stand up a real cluster in Docker — a Velocity proxy with Paper and Fabric backends — and drive a mineflayer bot through it to assert connect / fallback / transfer behaviour against the freshly-built jars. This path needs Docker (with the Compose plugin); it does not need the Nix shell.

See test-harness/README.md for the cluster topology, the bot scenarios, the wiring details, and troubleshooting.


🎨 Statistics

🌌 Networks Served (Click to view):

RustyConnector bstats graph

2025 © Aelysium Group LLC

About

A player and server connection manager for Velocity based Minecraft Networks!

Topics

Resources

Security policy

Stars

117 stars

Watchers

2 watching

Forks

Releases

Packages

Used by

Contributors

Languages