ME1312 / SubServers-2

SubServers – The Minecraft Server Management Platform
Apache License 2.0
91 stars 23 forks source link

Velocity support #64

Closed ChipWolf closed 3 years ago

ChipWolf commented 3 years ago

What Should Be Added

Velocity support in addition to BungeeCord support

Why It Should be Added

Many networks use Velocity rather than BungeeCord & could benefit from SubServers

What's The Alternative

Manually doing everything SubServers does

ME1312 commented 3 years ago

The problem with this is that Velocity is no simple BungeeCord fork. It is its own separate code base, in fact. Which would mean what you're asking for is a rewrite of SubServers.Bungee and/or SubServers.Sync.

So, this probably just isn't going to happen until SubServers 3... or until Velocity sees wider adoption. They're currently at 2% of the market in that regard (according to bstats.org).

ME1312 commented 3 years ago

After further consideration, I have decided that only SubServers.Sync is required to achieve this in our current state. And so, I will be moving this feature up to 2.18 at the latest. This is possible because:

Followers of this thread will be notified when a snapshot build containing the universal jar is available. Devs should expect a seperate, but similar API alongside the following common APIs you may already be familiar with: SubServers.Client.Common, SubDataClient, GalaxiUtil, etc.

ME1312 commented 3 years ago

The first snapshot build of this is now available. There are a few missing features (notably, listener attribute syncing), but it should provide the same general functionality. For installation instructions, visit this updated wiki page.

This topic will remain pinned until those missing features get added, but further bug reports and such should be reported as separate issues.

kubo6472 commented 3 years ago

Just wanted to ask this :)

ChipWolf commented 3 years ago

@ME1312 we exclusively use velocity, do I need to run a bungee server for subdata still?

ME1312 commented 3 years ago

Yes, for this the controller instance (SubServers.Bungee) must be run separately — which you'd probably want to do anyway if you care about multi-proxy, uptime, etc.

ChipWolf commented 3 years ago

Yes, for this the controller instance (SubServers.Bungee) must be run separately — which you'd probably want to do anyway if you care about multi-proxy, uptime, etc.

Absolutely, any plans to have a standalone SubData?

ME1312 commented 3 years ago

I was thinking that if I were to rewrite again that I'd move it over to GalaxiEngine, but for now I don't really see the need to. In your case, I'd expect BungeeCord to be pretty light-weight since it's going to be doing mostly nothing.

ajh123 commented 5 months ago

Waterfall (a fork of BungeeCord with better performance) is now dead its probably a good idea to have SubServers.Bungee be rewritten (if there's time) now.