Commit Graph

52 Commits

Author SHA1 Message Date
ME1312
7a4d28b113
Update BungeeCord
The official BungeeCord fork hit us with a surprise incompatibility recently. Yikes.
2020-01-18 00:13:10 -05:00
ME1312
bfcb076cfd
Update SubData 2019-10-18 18:24:58 -04:00
ME1312
bccbfb39c9
Add a grace period on rogue SubServer detection
Async subdata shenanigans made rogue SubServer detection a little inacurrate. Specifically in regards to the last commit.

This is the fix to that
2019-08-30 15:44:54 -04:00
ME1312
81d37b8b1e
Reduce dependance on SubServers.Bungee
SubServers.Host can now seamlessly reconnect to SubServers.Bungee, even if it's been restarted, without restarting uneffected servers.

Also, you can now shutdown SubServers.Bungee without turning off remote servers. Isn't that neat?
2019-08-29 20:01:52 -04:00
ME1312
be8f87d17c
Add the Update command
And several related UI changes to SubServers.Client
2019-06-16 23:13:48 -04:00
ME1312
8514ea5c26
Use .setCancelServers() for fallbacks
This method (as far as I know) is exclusive to GalaxiBungee. The old method is still available as a fallback.
2019-05-23 13:03:14 -04:00
ME1312
b808a62fcb
Add support for GalaxiBungee 2019-05-16 18:36:41 -04:00
ME1312
185b6b84bb
Mirror changes in SubServers.Sync 2019-05-13 22:02:38 -04:00
ME1312
776183510e
Config Updater & Smart Fallback Update 2019-04-29 11:05:06 -04:00
ME1312
fcde0bc845
Add Version support to YAMLConfig 2019-01-17 12:44:47 -05:00
ME1312
118ac28e4c
Don't follow symlinks for directory copies 2019-01-14 18:47:43 -05:00
ME1312
622ef32b4e
#32 Update the utility class 2019-01-14 18:28:18 -05:00
ME1312
651c61312e
Make JNA dependency optional 2019-01-09 16:41:37 -05:00
ME1312
94a95de495
Name SubServers threads
This change does not apply to SubServers.Client because those apps use the platform's native scheduler instead of threads
2019-01-06 01:58:13 -05:00
ME1312
32cd201697
Allow null to be passed to YAMLValue 2018-11-17 12:39:37 -05:00
ME1312
114f4f2209
Add support for unicode escapes outside of the char limit 2018-10-30 15:12:53 -04:00
ME1312
3b9b4ac566
Fix for saving unicode characters in YAML 2018-10-18 15:38:00 -04:00
ME1312
52c6da2517
Choose fallback based on confidence score
The fallback server chosen when a server goes down is now chosen based on SubServers' confidence that the server can recieve the player in question.

If there is a tie, the first server to achieve a high score is chosen. Servers meeting these requirements will get the highest score currently possible:
-> Fallback servers should not be white-listed (`Restricted: false`)
-> Fallback servers should be visible (`Hidden: false`)
-> Fallback subservers should be running
-> SubServers trusts that fallback servers connected to SubData are online
2018-10-14 03:26:23 -04:00
ME1312
3911b6e867
Add UPnP Forwarding Option 2018-10-07 19:25:08 -04:00
ME1312
bc5acab41d
Replace Auto-Restart and Temporary Flags with Stop Actions
Stop Actions will is the replacement for both the Auto Restart and Temporary flags. To define that the server should restart on stop, use the RESTART keyword. To get the same result that you would get using the temporary flag, use the REMOVE_SERVER keyword.

Additionally, there is now a DELETE_SERVER keyword. This keyword does the same thing as the REMOVE_SERVER keyword, except it deletes the directory on the server ran from.

If you would like nothing special to happen when the server stops, use the NONE keyword.
2018-08-29 21:55:59 -04:00
ME1312
a781370fbb
Allow raw binary to be sent over SubData
This allows files to be transfered faster over the new system.
2018-08-23 23:35:22 -04:00
ME1312
7cd9c9bc4c
Switch SubData Packets from JSON to MessagePack encoding
This is a change to how packets are transferred; the API has not been changed.

While the difference may be unnoticable when using unencrypted packets, because of MessagePack's compact size and better handling of byte values encrypted packets should transfer faster.
2018-08-23 22:32:49 -04:00
ME1312
e74178e21c
Slight configuration change 2018-08-06 02:08:55 -04:00
ME1312
4aa943953f
Flesh out the Proxy API
- Proxies connected to Redis are downloaded on startup/reload
- Named proxies are no longer removed on disconnect
- Proxies now show up in `/sub list`
- Proxies now have Add/Remove events in the API
- Proxies are included in the response of the `DownloadServerList` packet
2018-08-05 17:41:17 -04:00
ME1312
b8ee251011
Add options to sync commonly altered BungeeCord values 2018-08-04 23:29:52 -04:00
ME1312
319618fe71
Create a more straightforward way for interacting with unstable methods 2018-07-28 22:09:47 -04:00
ME1312
08a7d6d176
Misc changes 2018-07-19 15:34:58 -04:00
ME1312
27b1d6b51a
Extend SubAPI to wrap the SubData packet centered APIs
Simple requests like those used to list hosts or servers shouldn't require messing around trying to keep up with the SubData Direct protocol. It should be easy, right?

Now, SubAPI includes methods simalar to those seen in SubServers.Bungee for accessing data for Hosts, Servers, SubServers, Proxies, & Players easily. Requests the SubData Packet API is already capable of making will be included as methods in these variables.
2018-06-30 23:46:58 -04:00
ME1312
15713d58b4
Use the VanillaCord repo for vanilla builds 2018-06-19 21:24:16 -04:00
ME1312
9f2618778f
Sign all builds with a Snapshot ID
All builds of commonly updated SubServers apps are now auto-signed with a unique Snapshot ID simalar to the ones Mojang uses. This will replace the beta version number for unreleased builds.
2018-06-02 15:02:03 -04:00
ME1312
75b9b688cc Rewrite SubData API for JSON dependancy changes
This commit removes the org.JSON library where alternatives are already provided (Bungee & Bukkit provide Gson). This change was made to improve compatability with BungeeCord plugins and reduce file sizes.

This means big changes to the SubData API, which heavily relied on org.JSON. Now we submit our data through YAMLSection to be converted and sent over the network.
2018-04-14 21:53:51 -04:00
ME1312
ce84fd2216 Finalize Pre-Release 2 2018-04-07 20:38:57 -04:00
ME1312
573184ff91 Add bungee.yml for installation instruction 2018-04-06 20:10:25 -04:00
ME1312
265ac4b253 Host/Client now send Metrics data
https://bstats.org/plugin/bungeecord/SubServers%202
https://bstats.org/plugin/other/SubServers%20Host
https://bstats.org/plugin/bungeecord/SubServers%20Sync
https://bstats.org/plugin/bukkit/SubServers%20Client
2018-03-27 00:31:38 -04:00
ME1312
56070001a6 Minor changes 2018-03-21 16:45:59 -04:00
ME1312
ce51a991a0 Add more VersionTypes 2018-03-16 18:25:02 -04:00
ME1312
eb9bf034b4 Add a way to parse (non-extended) layered versions 2018-03-15 22:45:54 -04:00
ME1312
12a74b3474 Rewrite what compares layered versions 2018-03-14 17:50:15 -04:00
ME1312
bb7cfa9e57 Fix /sub delete permission error on windows 2018-03-14 03:01:44 -04:00
ME1312
bddbb692cd Make the version system layered
The versioning system just got more complex (on the backend of course)
2018-03-13 23:38:26 -04:00
ME1312
92c649eabe Make Name field optional for SubServers.Client
SubServers.Bungee can now link servers to subdata clients via connection address and port number.

Since this still has the chance to fail, the `Name` field will appear if no servers were found this way, and will be used the same as before. SubCreator made servers will still have the `Name` value present and filled out for assurance.
2018-01-29 01:04:36 -05:00
ME1312
7a5eac83fd Update Libraries 2018-01-05 17:30:01 -05:00
ME1312
562072df3f Lang API Rewrite // Add TabCompletes to Sync 2018-01-02 17:29:25 -05:00
ME1312
b3a40311a1 Simplify YAMLSection methods 2017-12-21 18:37:39 -05:00
ME1312
6bb7b1ef17 Allow YAMLSection to be converted to Map<String, ?> 2017-12-21 11:02:47 -05:00
ME1312
c9afe48674 Correct config loading issue
This solves a 'file in use' error on windows
2017-12-14 19:50:39 -05:00
ME1312
0bf5f16e09 /sub reload can now perform soft reloads
/sub reload - can now perform soft reloads
/greload - still performs hard resets

Soft Reloads mean that SubServers will load new data from the config and attempt to merge it with what is already in memory.

This is good if you need to make some quick changes, since it will only stop servers if a major change has been made to them.

However, this has the potential to cause issues, which is why the Hard Reset will continue to be tied to bungeecord command.
2017-12-09 03:43:29 -05:00
ME1312
556d947981 Add Proper RedisBungee Support 2017-12-08 02:35:50 -05:00
ME1312
5050baedf8 Assume 1.13 Material enum values // Correct Patched Signatures 2017-12-07 17:51:06 -05:00
ME1312
a019383bc3 Preserve YAML element order 2017-11-22 16:58:33 -05:00