Queue program

Status
This thread has been locked.

Krali

Feedback score
0
Posts
11
Reactions
5
Resources
0
(google tans)
Hello, I am looking for someone who can create a "queue" program, which will therefore have to manage a "queue". The basic objective is very simple, when the server is full, in order to prevent players wanting to connect spamming the connection to the server until we reach it, we will put them in a queue and everyone this will connect each in turn in peace and quiet.

The program must be EXTREMELY optimized, it must be able to handle for example 2000 people in the queue without lag or crashes. Namely that the queue must communicate with a plugin (therefore also code a plugin) for the retrieval of information such as for example, the pseudo player permissions (for priority), if the server is full or not, if the whitelist is on or off and if the serv is up. Because indeed, there must be a priority system, if the player has file.1 permission, he will have absolute priority and will pass in front of all the others (except those with the same priority as him), if he has file priority .2 it will pass in front of all the players having no priority or a priority lower than 2 etc, it is also necessary to recover the state of the server (on or off) and the whitelist, because the program must not attempt to connect a player on a server which is not ON or which has the whitelist activated .. in the same way you have to retrieve the connected ones, because the program must not connect a player if the server is already full. Here is a bit of the description which is ultimately a basic queue.

However, you should know that the servers are not connected to each other by Bungeecord, for example the mining server is mainly used for mining (Kappa) and avoid destroying the faction map too much, players can then transfer their minerals to the faction servers with a command (via a DATABASE link to the faction server). What I mean here is that the program must also know if the player is already connected or not on one of the servers in order to prevent him from connecting to 2 servers at the same time since he there is no bungee. Because otherwise the player can simply launch 2 launchers, and be on the faction server and at the same time on the mining server, and you wonder what interest for the player? He cannot play on 2 servers at the same time, and although we have several servers including farm servers, the player could go to the farm server while being afk to grow the plantations, and at the same time be on the faction server. pvp quietly, or even, we have several mining servers, the player could go on 2 mining at the same time, and try to duplicate the ores via the transfer command, well in short the risks are numerous

We will do a simple example.

Suppose we have 3 VPS. 1 With the Mining server, 1 with the faction server and 1 with the queue program.

The player wants to go to the "Faction" server. It launches our launcher and arrives on the client (custom), so there will be 2 buttons (one to join the faction server and 1 to join the mining). He clicked to join the faction server. When it actually clicks it will not connect it directly to the server (like when you put the ip of a server and click on connected with Minecraft vanilla) it will enter the queue, when it enters it will be number X in the queue puts the program will have to ask the plugin on the faction server, the player's permissions, because if it has certain permissions it will have priority and therefore will pass in front of non-priority players. But then from that, the server will have to know how many players there are on the faction, because if it is at 400/400, the queue will not move and the player will have to wait, and he will have to check if the player is not ALREADY on one of the servers. But, given that we are with our own launcher, the player can also while being on a server, decided to join another server without going back to the client (he escapes ingame and clicks on join Xserver), this is very important , because in general the players do on the mining server when the faction is full, that means that it can be on the mining and undermined quietly while being in the queue and waiting for their connection.

Finally, the last feature. I spoke to you previously about the priorities, here is how it works: file.X, it is a permission, the X will be replaced by a number, 1 is the most priority and therefore 999 the least priority. I pass in front of ALL the players having a LOWER priority than me, if the player has the same as me I do not pass him in front. BUT, there is also a priority if one leaves one server temporarily for another. The problem is this, some might want to mine for 10 minutes and then return to normal faction activity, however the player will not want to go mining, as he knows that if he does, he will have to wait in the queue. potentially long wait, in order to avoid this problem, we have devised the following method.
If I leave the X server for the Y server, and then I go back to the X server from the Y server, I would have a priority (a priority less powerful than the permission)

For example, I am on the faction, I go to the mining server, if I have not logged out of mining, and I decide to return to the faction server from the mining server, then I will have priority.

It all sounds complicated, but in reality it's a simple queue, with 2 additional features, it's a program that shouldn't take long to code, below you have screens of our current queue waiting, because yes we already have one but it dates from years ago, and has optimization problems and some disturbing bugs, but we had achieved it in 3 hours or less. If you have the skills contact me here by MP, if you have any questions do not hesitate

Client custom image : http://prntscr.com/vnk7ji
Message when im in a queue http://prntscr.com/vnk8ko
When im ingame and want to join another server : http://prntscr.com/vnk8uj http://prntscr.com/vnk98q
 
PebbleHost
High performance, consistent uptime and fast support. Minecraft hosting that just works.

Kzer0

Supreme
Feedback score
1
Posts
77
Reactions
10
Resources
0
Hey there Krali, This project looks like it would be super cool, and I may know some people to help you complete this! I am a sales rep for a freelancing company called Mixelate, and I know we have some very experienced devs that may be able to pull this off for you in a fast and friendly manner! Please if you are interested follow the instructions below :)


How to get started:
1.
Join https://discord.gg/VafycTytQh
2. Enter #create-ticket
3. Click the shopping cart emoji to create a new commission
 

Krali

Feedback score
0
Posts
11
Reactions
5
Resources
0
Hey there Krali, This project looks like it would be super cool, and I may know some people to help you complete this! I am a sales rep for a freelancing company called Mixelate, and I know we have some very experienced devs that may be able to pull this off for you in a fast and friendly manner! Please if you are interested follow the instructions below :)

Hi ! We will see what we can do with them, thank you !
 
Status
This thread has been locked.
Top