chiralpenguin / MatsuQueue

Fork of MatsuQueue specifically adapted and updated for Purity Vanilla.
https://www.purityvanilla.com
MIT License
8 stars 0 forks source link

Reload Command #2

Closed chiralpenguin closed 4 years ago

chiralpenguin commented 4 years ago

Description

Want to add a reload command that allows the capacity of a slot type to be changed while the server is running, as it could be useful for servers that need to adapt their player limits without restarting.

How it will work

The reload command will stop the UpdateQueues task, reload the capacity for each of the current clusters and send the number of players the slots have increased by to the destination server. If the capacity was decreased, players will not be kicked but once enough leave, the new slot capacity will be in place.

Alternatively, it will save the current slot and queue information then reload the config file to get the new slot capacities. The server will then restore the slot and queue information.

chiralpenguin commented 4 years ago

Implemented with https://github.com/nitricspace/MatsuQueueBungee/commit/a7327db01fabae80af44b660c458b64715871c83. The slots can be updated using 'updateslots' from console and the original slotsMap is preserved. If slots are increased, players are sent to the destination server to make up the increase.

chiralpenguin commented 4 years ago

Bug

When used to decrease the number of slots on Purity Vanilla, players can still join directly without going through the queue even though there are more players online than the new capacity of the slot type. Need to look into this.

It seems like after the queue is decreased, if a player leaves the server then their slot is counted as 'empty' for players joining the server, but players from the queue aren't moved in to fill it.

chiralpenguin commented 4 years ago

Fixed in 8dd6cf2fb7766bcc16668ecaadaebe0767b9ac2d