Commit Graph

73 Commits

Author SHA1 Message Date
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
3ff2459258
Allow custom formatting of server directories in SubCreator 2019-07-29 20:20:38 -04:00
ME1312
30dd28547f
Add a post-start event 2019-06-25 17:13:27 -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
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
61ee89cfe3
Mirror changes in SubServers.Host 2019-05-12 23:28:27 -04:00
ME1312
7059b5cad7
General Fixes & Module Updates 2019-05-11 17:23:31 -04:00
ME1312
504dc7bac4
Implement Multi-Channel SubData 2019-05-09 22:43:34 -04:00
ME1312
1952e7b940
Implement several new packet types 2019-05-09 16:17:15 -04:00
ME1312
3dab84c0eb
Begin rewrite for SubData 2 2019-04-18 10:02:09 -04:00
ME1312
6131790245
Add an option to space out auto-starting servers 2019-01-29 22:05:59 -05:00
ME1312
024dde444c
Update client auto-linking 2019-01-26 21:04:53 -05:00
ME1312
7158e0a3da
Fix SubData's log stream 2019-01-22 12:48:47 -05:00
ME1312
361acf7b17
Add a dedicated restart packet
I don't reccommend using this packet over the start & stop combination because of the lack of feedback you get in comparision.

However, if the server sending the packet is requesting to restart itself then this is your only option, so that's why it's here.
2019-01-20 17:49:12 -05:00
ME1312
fcde0bc845
Add Version support to YAMLConfig 2019-01-17 12:44:47 -05:00
ME1312
75a872252f
#35 Add command line variables to SubServers
Also, a fix for #34
2019-01-17 10:39:15 -05:00
ME1312
622ef32b4e
#32 Update the utility class 2019-01-14 18:28:18 -05:00
ME1312
6218b873ca
Expand on the API for restricted servers 2019-01-10 15:52:38 -05:00
ME1312
0d46c5b604
Add a restart command 2019-01-07 16:09:20 -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
eb70ebaeea
Revise logging GC strategy 2019-01-04 23:35:20 -05:00
ME1312
1845e9d8f9
Remove the archaic Executable type
Since it was virually no different from one, this has been replaced by a String.

Additionally, the interpreter for start scripts can now be changed from cmd.exe to git bash on windows systems by using the `bash` or `sh` commands.
2019-01-04 16:51:58 -05:00
ME1312
ba2a69a568
Make the port argument optional
Not sure what port to use? Now SubServers can decide on a port number on it's own.
2018-10-08 17:07:44 -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
cb7b3964f2
Send off reload packet only when api.ready 2018-08-10 15:58:17 -04:00
ME1312
545565512b
Restructure the Download packet group
The Download group of packets was in desperate need for a restructuring.

Now, instead of using `DownloadServerList` to list everything, different object types now are downloaded through their own seperate packets. (Improving network efficiency)
2018-08-09 14:54:56 -04:00
ME1312
38eec66a4b
Further define proxy status colors
The proxies section of the list command now functions like the rest. You can hover over proxies in-game to get more status information on them.

The colors shown are as follows:
Green (Optimal): Proxy is connected to both Redis and SubData
Blue (Available): Proxy is connected to SubData only
White (External): Proxy is connected to Redis only
Red (Disabled): Proxy is offline
2018-08-05 22:07:18 -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
5f69459e62
Add more ways to detect minecraft version 2018-05-23 22:27:20 -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
56070001a6 Minor changes 2018-03-21 16:45:59 -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
56f8d3dfba Remove package.xml requirement for SubServers.Host 2018-02-19 17:59:51 -05: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
754b418e7d Register SubServers.Sync Proxies to name for API access 2018-01-22 10:01:33 -05:00
ME1312
eb18c01b22 Rewrite Launch & PluginLoader for SubServers.Host
This commit changes the way SubServers.Host launches itself and loads it's plugins. Overall loading plugins this way is more efficient, faster, and can cause less problems than before.

Plugins will still use the package.xml & @SubPlugin annotation system to be loaded.

Also, there are some changes to the logger that better support async logging.
2018-01-21 15:45:27 -05:00
ME1312
b72103c0f0 Make Server API use existing fields from BungeeServerInfo 2018-01-12 16:56:22 -05:00
ME1312
ada14c0889 Add reload packet for ExHosts and Servers using Client 2017-12-13 19:04:58 -05:00
ME1312
617297b5b6 Finalize RedisBungee support 2017-12-10 09:14:49 -05:00
ME1312
91ca559e4a Host & Server objects are now signed (prevents desyncs across apps) 2017-12-09 19:30:06 -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
ME1312
ba09bab93a Add Server Grouping 2017-08-26 01:19:59 -04:00