[Open Source] - Queue

NV6

the opensource person(?)
Premium
Feedback score
8
Posts
383
Reactions
223
Resources
1
!! NOTE !!
I'm currently recording this under a different repository, feel free to check it out: https://github.com/NoSequel/queue-recode

Queue Plugin

This is a very extensible and easy to use unfinished queue system, primarily for Bukkit.

Screenshots
unknown.png

Features
  • Multiple queues per server (set the target of a server using /queuemeta setserver <queue> <server>)
  • Very easy to make new implementations, most code is shared between all implementations.
  • Able to join multiple queues at the same time, position synchronized across network instances.
  • Very extensible structure easily allowing for new features.
For more information about features and such, please consult the README.md within the github repository.

Configurations
Code:
messages:
  queue:
    help:
      header: '&6=== &eViewing usages of &6/queuemeta ==='
      format: '&equeuemeta %sub_label% &6%sub_arguments% - %description%'
      sub_commands: |-
        [
          {
            "subcommandName": "help",
            "arguments": "",
            "description": "Show the message you\u0027re viewing now."
          },
          {
            "subcommandName": "list",
            "arguments": "",
            "description": "Display all the registered queues."
          },
          {
            "subcommandName": "create",
            "arguments": "\u003cname\u003e",
            "description": "Create a new queue."
          },
          {
            "subcommandName": "setserver",
            "arguments": "\u003cqueue\u003e \u003cserver\u003e",
            "description": "Set the target server of a queue."
          }
        ]
    created: '&eSuccessfully created a queue with the name &d%queue_name%'
    info:
      header: '&6=== &eViewing all registered queues &6==='
      entry: '&e%queue_name% &7| &f%target_server%'
    server:
      update: '&eYou have set &d%queue_name%&e''s target server to &d%target_server%'
    join: '&6You have joined the &f%queue_name% &6queue.'
    send: '&6Trying to send you to the &f%server_name% &6server.'
Code:
queues: |-
  [
    "{\"identifier\":\"potato\",\"server_target\":\"N/A\"}",
    "{\"identifier\":\"hors\",\"server_target\":\"N/A\"}"
  ]
Code:
local-server: '{"identifier":"dev-1"}'
servers: |-
  [
    "{\"identifier\":\"hcteams-eu\"}"
  ]
Code:
redis:
  authorization: |-
    {
      "hostname": "127.0.0.1",
      "port": 6379,
      "password": ""
    }

Prices
- Fully opensource, and free to use.

Bug Policy
Report any bugs to the owner (NV6) or on the github repository.

Public Libraries Used

Note
This project is unfinished, but feel free to base your own queue system off of this if you want. If you want a future rich and completed queue system, feel free to look at growlygg's thread.
 
Type
Offering
Last edited:

NV6

the opensource person(?)
Premium
Feedback score
8
Posts
383
Reactions
223
Resources
1
The fact that Growly was selling a fork of this for $100 was pretty insane.
His version isn't a fork of this - but I do agree $100 is a lot :p. I must say though, his queue system is pretty feature rich, and has probably been more thoroughly tested than this.
 
Last edited:

GabyTM

@gabytm / gabytm.me/discord
Supreme
Feedback score
44
Posts
427
Reactions
190
Resources
6
Interesting project but I have a question about the configs, if you want to use json format, why don't you just use it instead of yaml?
hmvBHUR.png
 

NV6

the opensource person(?)
Premium
Feedback score
8
Posts
383
Reactions
223
Resources
1
Interesting project but I have a question about the configs, if you want to use json format, why don't you just use it instead of yaml?
hmvBHUR.png
This is due to a limitation within my configuration API whenever using the type adapters, and because I still wanted to use a somewhat human-readable configuration, I decided to save certain objects as a JSON string instead of some extremely hard to configure string. I might resolve this issue within my configuration API soon and push an update to the queue repository as well.
 

GabyTM

@gabytm / gabytm.me/discord
Supreme
Feedback score
44
Posts
427
Reactions
190
Resources
6
This is due to a limitation within my configuration API whenever using the type adapters, and because I still wanted to use a somewhat human-readable configuration, I decided to save certain objects as a JSON string instead of some extremely hard to configure string. I might resolve this issue within my configuration API soon and push an update to the queue repository as well.
I don't really agree that one line JSON (escaped or not) is that "human readable"
 

NV6

the opensource person(?)
Premium
Feedback score
8
Posts
383
Reactions
223
Resources
1
I don't really agree that one line JSON (escaped or not) is that "human readable"
You're right, I'm planning to make a better structure for this while I'm redoing the synchronization/data structure of the queue itself.
 
Top