I love queueing, but I'm not going to pretend that it doesn't feel unfinished. I'm not asking for flags to handle hindering states like paralysis, stun, prone, etc. All I'm asking for is a couple of extra commands for working with queues - and a slight change in functionality to existing commands - to round out the functionality. I've already submitted these using the IDEA command in-game, but honestly posting on the forums does seem to have a better success rate.
Change QUEUE REPLACE <queue> <index> <command> to add to the queue if there's no command in the specified index (i.e. make it the same as if you'd called QUEUE ADD <queue> <command>). This just seems like a no-brainer. If I'm trying to replace a command in an index it's because I think there's a command there that needs replacing and I want the command I'm trying to replace it with in my queue. In the case that there isn't a command there, I've either gotten confused about what I currently have queued or, more likely, the queues have been processed between me sending the command and the command reaching the game.
Two new commands:
QUEUE INSERT <queue> <index> <command>. Should be pretty self-explanatory: insert the specified command at the specified index in the specified queue. Any commands at, or above, that index in the queue will be pushed up by one. Any commands that now exceed the maximum size of the queue will be removed. Like the requested change for QUEUE REPLACE above, if the specified index doesn't currently have a command in it, simply treat it like a QUEUE ADD. QUEUE PREPEND isn't always suitable (just because I don't want a command right at the end of the queue doesn't mean it's suitable to be at the very start of the queue), and having to call QUEUE REPLACE and then potentially multiple QUEUE ADD commands seems unnecessary (though if you make the requested change to QUEUE REPLACE above I could live with still having to do so).
QUEUE REMOVE <queue> <index>. If I can add commands to queues then I should also be able to remove them, without having to clear the entire queue and re-add anything I still want. Anything above the specified index would obviously be moved down by one.