Welcome to the Achaea Forums! Please be sure to read the Forum Rules.

QUEUE GMCP Interface

NizarisNizaris The Holy City of MhaldorMember Posts: 537 ✭✭✭✭✭ - Grand Achaean
I'm playing around with the server-side QUEUE system at the moment. I notice that there is a limit of six commands in the queue. Depending on a combo required for a given "turn", it is foreseeable that a queued combo could exceed this six-command limit. Therefore, it is advantageous to maintain a client-side, erm ... queue, of commands to queue server-side. This allows the programmer to track on the client the number of items in the server's queue, and to queue new commands as slots on the server's queue become available.

It's currently possible to do this programmatically by polling QUEUE LIST; however, without an event being raised by the server when a command on the server queue is executed, this needs to be done periodically and with a high frequency. Since the queue is meant to improve performance in the face of lag, this is counter-productive.

Therefore, I recommend one of the following two solutions:
  1. A complete GMCP interface to the queue system that clients can monitor for events.
  2. A line from the server and displayed in the game client that informs the client that a command has been executed from the queue.
Personally, I prefer the GMCP interface.

Thanks,
Nizaris
image

Comments

  • NizarisNizaris The Holy City of MhaldorMember Posts: 537 ✭✭✭✭✭ - Grand Achaean
    Nevermind. This exists as a system echo when CONFIG USEQUEUEING and CONFIG SHOWQUEUEALERTS are both set to on. However, SVO gags the lines by default.
    image
  • KlendathuKlendathu Eye of the StormMember Posts: 3,178 @@ - Legendary Achaean
    Don't forget, you can also queue multiple commands with a command separator too, up to 10 per position.

    Tharos, the Announcer of Delos shouts, "It's near the end of the egghunt and I still haven't figured out how to pronounce Clean-dat-hoo."
    Nizaris
  • NizarisNizaris The Holy City of MhaldorMember Posts: 537 ✭✭✭✭✭ - Grand Achaean
    @Klendathu, how does one do that without the command separator being interpreted as a new command by the client, rather than a new command by the server?
    image
  • MorthifMorthif Member Posts: 1,688 @@ - Legendary Achaean
    use a different command separator in your client then the IG one
    Nizaris
  • AntoniusAntonius Member Posts: 4,926 @@ - Legendary Achaean
    Klendathu said:
    Don't forget, you can also queue multiple commands with a command separator too, up to 10 per position.
    You can also queue in-game aliases (as long as you don't also use a command separator to try to queue multiple things*), and they don't have a command limit; there's a character limit on them, but it's large enough that you should never hit it. For in-game aliases, / should always be treated as a command separator, regardless of what your in-game command separator is.

    * For example, assume you have an in-game alias called "dostuff", and your command separator is "||", you can do QUEUE ADD EQBAL DOSTUFF but you can't do QUEUE ADD EQBAL STAND||DOSTUFF.
    Nizaris said:
    Nevermind. This exists as a system echo when CONFIG USEQUEUEING and CONFIG SHOWQUEUEALERTS are both set to on. However, SVO gags the lines by default.
    CONFIG USEQUEUEING is confusingly named. You don't need it on to use queueing, and you don't need it on to see the queue messages (that's what SHOWQUEUEALERTS does). If you use the QUEUE commands to add items to the queue, they will run whether or not you have USEQUEUEING set to on. The only thing USEQUEUEING does is turn on the automatic queueing when you try to use a command that requires balance/equilibrium and it fails because you don't have that balance. It should really be called something like AUTOMATICQUEUEING.
    TressanNizarisValaria
Sign In to Comment.