Skip to content

@ME1312 ME1312 released this Jun 12, 2021

Download release 2.17a (21w24k)

As usual for major versions, this release is not network compatible with the previous one, so make sure to update all your SubServers Apps when you decide to update.

RemotePlayer, Revisited

Since it's safe to say that paying for a plugin that's no longer being developed is probably a bad idea, here is our solution. You may remember that, all the way at the bottom of our previous release notes, we released something called the RemotePlayer API for developers. From now on, SubServers apps will be relying solely on that — with a few additions of course.

SubServers.Sync will now sync player connection data network-wide, in addition to the existing dynamic server library, effectively replacing RedisBungee. You can still use RedisBungee if you have plugins with a need for it, though.

Server Termination, Revisited

Don't you just hate it when you use /end but suddenly realize one of your servers isn't responding? You try your best but BungeeCord just won't let you send the command. Not anymore. You can now send commands while SubServers is shutting down.

Additionally, Linux users can now use /sub terminate to terminate a session directly instead of letting the JVM potentially screw up the operation. Pretty neat, huh?

Some other things happened

  • You can now use /greload without restarting your whole network
  • /sub update can now be used to change the template of subservers
  • The permissions required for /sub teleport have changed to make it more accessible
  • Temporary servers are no longer stored in servers.yml
  • Smart Fallback now has more customization options
  • Some recent UI bugs in SubServers.Client have been fixed
  • SubServers.Client now provides PlaceholderAPI placeholders
  • SubServers.Client now uses TitleAPI instead of TitleManager on older servers
  • SubData can now hit higher speeds than ever before
  • VanillaCord had a big update of its own

For Developers

  • SubServers can now fully load itself before onEnable() is called for plugins
  • Plugins that register drivers should now do so onLoad()
  • Two new common APIs have been introduced
  • Objects are now fully initialized before sending events such as SubAddServerEvent
  • SubEditServerEvent no longer fires for changes made through the API
  • GalaxiEngine has had some structural changes
Assets 2

@ME1312 ME1312 released this Jun 26, 2020

Download release 2.16a (20w26d)

An Anniversary Edition!

This release roughly marks 5 years of SubServers. Did you know?
-> The very first version of SubServers (Classic) was 1.8.3a in the middle of 2015.
-> The first version of SubServers 2, the rewrite, was 2.11.2a at the start of 2017.
-> The rest of the family of apps as they are now were released not too soon after; later that year.

Like usual with these major versions, this release is not network compatible with the previous one, so make sure to update all your SubServers Apps when you decide to update.

The Power Management Update

Exactly two years ago, SubServers 2.12.1e introduced the concept of grouping servers together. Since then, it could be used to do... well, nothing. But that changes now.

Introducing the redesigned command and permission format. You can now select multiple servers using a comma separated list, a group they belong to, or a host that provides for them in a single node/command. For detailed information on the new format, visit this shiny new wiki page.

SubCreator File Replacement

As plugins tackle more complex issues, they require more metadata in their configs. SubCreator can now provide that metadata to them by making replacements of specific variables in specific files. Although it won't do so by default. To see how to take advantage of this new functionality, see the updated SubCreator wiki page.

Additionally, SubCreator can now replace old/modified server files with newer/fresh template files when updating a server. Again, though, it won't do so by default.

On BungeeCord Fork Compatibility

In the update notes for the SubServers 2.15a revisions, you may remember that BungeeCord has recently changed some of their internal methods regarding server object creation — and that was a big problem for us.

Since then, we have actually found a fix for this problem. So, you don't have to keep track of all those messy version numbers anymore to use SubServers.

But wait, there's more

  • The server-side teleport command /sub teleport has finally arrived (from SubServers Classic!)
  • /sub delete is now available on the other console-based apps
  • SubServers.Host can now load local templates from ./Templates
  • Removing a default template's Version property will now keep it from being updated
  • The driver BUILT-IN is now known as VIRTUAL
  • SubCreator will now install a properly signed version of SubServers.Client
  • Fixed /sub reload templates for redownloading template files (for SubServers.Host)
  • Fixed /sub reload for reloading template.yml files

For Developers

  • The RemotePlayer Data API is now available
  • The SmartFallback API has been rewritten to become more useful
  • The "Master" Proxy can now be requested by name
  • SubData 2 and GalaxiEngine have been updated
Assets 2

@ME1312 ME1312 released this Feb 16, 2020

Download release 2.15.2a (20w08a)

Even Java has betrayed us...

This release is not network compatible with the previous one, so make sure to keep your SubServers Apps up-to-date. Despite that, though, this release is all about maintaining compatibility. The following items were changes to our dependencies that we had to create fixes for to remain compatible.

Time moves forward

  • Waterfall no longer uses BungeeCord's default behavior for handling servers
  • BungeeCord has altered their internal methods for creating servers
  • SubData now uses a potentially faster method of handling control characters
  • Java has placed some new, inconsistent restrictions on those who launch processes
Assets 2

@ME1312 ME1312 released this Dec 18, 2019

Download release 2.15a (20w03a)

Hold on, 2.15? What ever happened to 2.14?

Well, as the keen-eyed among you who went searching for it have noticed, 2.14 has been available in a stable state for ages in the form of snapshot builds, while 2.13 stuck around as something of an LTS build. This release structure doesn't really make sense for SubServers, though, so we'll be returning to the regular release format after this version.

All that aside, though, this is the release with all of the shiny new features I hinted at previously. This release is not network compatible with the previous release (2.13), so you're going to have to get all your SubServers Apps updated for this. Also, since it's been quite a while, tracking these changes has gotten quite difficult. As such, this change log is most likely incomplete.

SubCreator: Update

These days it's more important than ever to to keep your servers up-to-date. But yet, SubCreator only keeps one version of each release in it's cache. Wouldn't it be nice if we could just run SubCreator again over the same server files?

Yeah, that would be pretty nice. That's why we added /sub update

The update command can be used once a day to rebuild and cache yourself a newer build of your server software (where supported). You can then take that updated cache and use it to update the rest of your servers as well. Edit the Template option in your servers.yml to use this feature on existing servers.

The Paper Template

The long requested Paper template is finally here. As you may already know, paper is a fork that provides various features, optimizations, and configurations that Spigot does not, similar to what Waterfall is to BungeeCord. The most immediately obvious one being that you're not required to run a Buildtools like program to get your hands on it.

Like other templates that have been added after the fact, those of you who are updating will have to download this template yourselves, or remove/rename the Templates folder to obtain this new template.

SubData 2

This release comes with the latest iteration of SubData: SubData 2. Aside from being a little faster than it's predecessor, it is also a lot more flexible in it's formatting. Allowing for even the largest of files to be sent over the network with ease. It can also be used in multi-channel mode, for when one data stream just isn't enough.

Configuration Updation

To those of you who hate me because of how frequently I update lang.yml or wern't really into the whole idea of visiting the wiki in your free time to compare and update your configs manually but still want the new features, this is for you.

Instead of just replacing your config file with a newer one, we're now going to auto-update your old one with new values based on what you already had. Also, this has the side effect of neatly sorting your config values as well! Hooray!

But wait, there's more

  • You can now make the [Version] SubCreator argument optional for templates that don't require it
  • Added smarter fallback server selection
  • Added RSA/AES type encryption
  • Servers may now be deleted immediately from API and through their Stop-Action
  • Servers have been moved to their own config file (servers.yml)
  • Recently Deleted now clears deleted servers periodically (even without restarting)
  • SubServers Apps can now start up semi-normally while SubServers.Bungee is offline
  • Several new environment variables are available to SubServers and SubCreator (for batch/shell scripting)
  • Processes launched by SubServers Apps now make a conscious effort to use the same Java version as the app that launched them

For Developers

  • SubServers.Client based apps are now on par with many API features of SubServers.Bungee
  • Added SubCreatedEvent for SubCreator
  • Added SubStartedEvent for SubServers with SubServers.Client installed
  • Added SubNetworkLoginEvent for all SubServers Apps
  • Many SubServers util classes are now being provided by GalaxiEngine
  • Some services have been moved
Assets 2

@ME1312 ME1312 released this Apr 26, 2019

Download release 2.13.2d (19w17a)

This release fills a gap where the more feature-packed 2.14 isn't ready yet but an urgent fix is required for anyone wanting to use SubServers.Client in Minecraft 1.14.

So until then, let's just keep using the 2.13 versioning. What could possibly go wrong? Besides, 1.14 shouldn't be used in production servers yet anyway, right? 😉

What's new in this version

  • You can now space out Run-On-Launch servers using Run-On-Launch-Timeout
  • There's a fancy new warning ping message for when your back-end servers are known to be offline

Fixes in this version

  • Fixed something that broke in 1.14
  • Fixed an issue related to changes in version formatting within the Sponge Web API
  • SubServers who are known offline are now invalidated as options for fallback when a server goes down
Assets 2

@ME1312 ME1312 released this Jan 22, 2019

Download release 2.13.2c (19​w0​4b)

This release makes SubServers even more configurable than it was before. Additionally, this release also should have better memory performance than previous versions of SubServers.

The new environment

For the first time since it's inception, the SubServers executable command handler has been updated. Now, commands are executed in the environment of the system (cmd on windows, sh for anyone else). Additionally, there are custom variables injected into these environments specific to each SubServer that you may use in your scripts (for SubServers) (for SubCreator).

What else is new in this version

  • The /sub restart short-hand command has finally been added
  • /sub stop and /sub kill can now stop all servers using the wildcard character: *
  • SubCreator now uses the full-fat Executable command to launch scripts instead of just a file location
  • Windows users can now use the bash and sh commands in the Executable option
  • Log-Creator is now a per-host config option
  • Console-only commands now have tab completes
  • Outdated copies of the default templates no longer get loaded by default

Fixes in this version

  • SubServers can now properly terminate child processes on Windows
  • SubServers now handles symlinks correctly
  • /sub sudo overrides the log option again like it should
  • Moved logging flags to their own variables in SubServers.Host (fixes possible errors with multi-threading)

For Developers

  • Threads created by SubServers are now properly named
  • There are links where necessary to SubServers' main dependencies in the Javadocs
  • Players can now be whitelisted through the API when using the restricted option
  • The Executable class has been rewritten to be more useful
  • Util now has short-hand methods for reflection
  • Version is now a type embedded into YAMLConfig
Assets 2

@ME1312 ME1312 released this Dec 22, 2018

Download release 2.13.2b (18w51b)

We've fixed some things

  • Internal loggers now tie up loose ends properly
  • Access rules for restricted servers have been corrected
  • Fixed an NPE regarding SubServers.Client and auto-detecting the server link
  • SubServers.Host now has proper command auto-completion support
  • SubServers.Host has been updated to GalaxiEngine 3.2.0a
  • SubServers.Client should now be unaffected by server-side chat modification plugins
  • SubServers' lang.yml now supports the expandable \u{...} JavaScript Unicode escape notation
  • SubCreator's replacement of port=xxxxx now results in port=25565 instead of port=25565xxxxx for values in
  • The source code for the Templates directory is easier to get at now (no more modifying zip files)
Assets 2

@ME1312 ME1312 released this Oct 23, 2018

Download release 2.13.2a (18w43e)

This release has a focus on allowing SubServers to do more of the work for you. There are new configuration options available for the new features.

SubServers just got smarter

  • It can forward your ports for you (only when UPnP is available)
  • It can pick it's own port number in SubCreator
  • It will choose a fallback server based on how confident it is that you'll be able to connect

What's been fixed

  • Only select from stable Sponge versions in SubCreator
  • Fixed bug with unicode escapes when saving YAML
Assets 2

@ME1312 ME1312 released this Oct 4, 2018

Download release 2.13.1a (18w40b)

This release has a bunch of little changes to make SubServers better. This release is not network compatible with the previous release, so you will have to make sure all your SubServers apps get updated.

What's new in this version

  • Rewrote /sub info to make it more useful
  • Proxies now have a bigger presence throughout SubServers when using 2 or more
  • SubServers.Sync can now sync over commonly altered BungeeCord config values
  • Stopping a server or kicking users server-side will now send them to the fallback server (unless they were actually on the fallback server) when force_default_server is enabled.
  • Auto-Restart has been replaced with Stop-Action (See Configuration)

Fixes in this version

  • Add support for the new WaterfallConsole revision
  • Fixed a syntax issue with wget in SubCreator (delete the Templates folder to get this fix)
  • Look for the old Gson location when using older Bukkit/Spigot builds

For Developers

  • There is now a proper API for the client side apps (See SubAPI.class)
  • SubServers.Host is now built on GalaxiEngine 3 (which means plugins now go through that)
  • The SubServers dataset download packet has been separated by type
  • Only send the reload packet when the API is ready to be called
  • Packets now have better support for transferring raw binary data
  • Packets are now converted MessagePack instead of JSON before they are sent
  • Packet handles are now namespaced
  • The Temporary flag has been replaced with a StopAction value
Assets 2

@ME1312 ME1312 released this Jul 28, 2018

Download release 2.13a (18w30bk)

The final release of 2.13a has come. This release includes fixes related to changes in backend distribution and to the Templates folder.

The Sponge template in this version will now build SpongeVanilla (Sponge without Forge). SpongeForge has moved to the Forge template. To get this template, you can download it or backup and remove the templates folder for it to be regenerated.

Assets 2