IRC Pick-Up Game Operator Bot


(Crytiqal) #1

I have created an IRC bot that will allow users to easily create and join pick-up games for etqw (and any other game).

To check it out, join the #aero.esports irc channel on Quakenet.
http://webchat.quakenet.org/
http://www.splashdamage.com/chat

mIRC: http://www.mirc.com/
XChat: http://xchat.org/

To view a list of available games:
!create
This will return a list of available games. (Feel free to ask for more games to be added)

To view a list of available default servers for a game:
!serverlist <game>
This will return a list of available servers. (Feel free to ask for more servers to be added)

To view a list of available pugs in queue:
!queue
This will return a list of available pugs to join.

To view additional information about a specific pug:
!info <game> <mode>
For example: !info etqw 4v4
This will return a list of teams and their players, currently signed up for the pug.
If no <game> and/or <mode> values are supplied, it will return the info of the pug you are currently in queue for.
(Additional information like server IP will likely be added in the future)

To create a pick-up game:
!create <game> <mode> <optional server>
For example: !create etqw 4v4 OR !create etqw 4v4 server1 OR !create etqw 4v4 123.456.7.890:27733 mypw
<game>: pick a game that is supported
<mode>: pick a gamemode that is supported for that game (4v4/6v6 etc) If a game supports 2v2v2, or asymmetrical teams (2v6v4) then the bot is also capable of handling those. (Feel free to ask for more modes to be added)
<optional server>: If you leave this value blank, the bot will automatically select a default server from the list, that is not currently in use by another pug in queue. You can also specify which default server you would like to use, by entering the desired value given by typing !serverlist <game>. In addition, you can also specify your own server ip and password in the following syntax: <ip:port> <pw>. If this ip is already in use by another pug, you are asked to provide a different server.

You will automatically be the owner of the pug, and be granted special commands such as !start and !remove.
(Additional commands like !kick,!ban,!unban, !shuffle will likely be added in the future)

To join a pick-up game:
!join <game> <mode> <team>
For example: !join etqw 4v4 2 (joins team 2)
Provide the <mode> because several pick-up games with different modes of the same game can be in queue at the same time!
Provide the number of the team you would like to join! (1/2/3/4 etc)
If you fail to provide a team number, the bot will respond that you will have to pick a team.

To view how many players are needed:
!need
This will show how many players are still needed for the pug you are currently enlisted in.

To leave a pick-up game:
!leave
This will remove you from the pug you are currently enlisted in.
(If you are the owner of the pug, the ownership will be given to the next player in the line-up. If no such player is found, the pug will be removed from queue)

To remove a pick-up game:
!remove
This will remove the entire pug from the queue.
(Only pick-up owners have the power to remove a pug from queue)

To force start a pick-up game:
!start
Only pick-up owners can use this command to force start a Pick-Up Game.

When a pick-up is filled, every player will be notified to join the server by having the ip and password sent to them in a pm. The pug will then be removed from queue and another one of the same game and mode may be started. (You can always start mutliple pugs at the same time if they are not identical)
[strike]If you change your nickname or quit the channel while you are in a pug queue, the bot will automatically remove you from the line-up and, if needed, grant ownership to the next person in line![/strike]
You can now freely change your nickname and the bot will update your name in the pug queue list!
Also, the bot will only automatically remove you from the line-up and, if needed, grant ownership to the next person in line if you leave ALL the channels on which the bot is hosted.

To check it out, join the #aero.esports irc channel on Quakenet!

Greetings,
Crytiqal.Aero

UPDATE:
The Pick-Up Game Operator Bot can now handle cross channel communication!

It is currently active on:
#aero.esports
#aero.pugbot
#etqw.ftmleague
#etqw.gather

PS: If any bugs come up (eventhough i severly tested every scenario i could think of), please report them to me in the irc channel. Thank you!


(NerdoManiac) #2

[QUOTE=Crytiqal;394669]Thebotnow has multichannel support. You can idle in #aero.esports but also in #etqw.ftmleague and join in on gathers that are formed crosschannels.

There is 1 feature i am working on, which is when you leave one of these two channels you will get removed from the pug.
I will make it so that when you leave one channel, but are still online on another channel where the irc bot is, you will keep your position in the pug without being removed.[/QUOTE]

Nice I’ve been looking of a IRC bot to tell people when I will be online :slight_smile:


(Shelly) #3

Good job, awesome :slight_smile:

Come join the irc channel #aero.esports and let the gathers begin. ^^


(Crytiqal) #4

Currently there are two default servers available to host pick-up games!

There are still some more pro mod servers that are empty and unused.
If you would like to enlist your server to be in the serverlist, please contact me.


(Crytiqal) #5

bring up my post


(Crytiqal) #6

The bot now has multichannel support. You can idle in #aero.esports but also in #etqw.ftmleague and join in on gathers that are formed crosschannels.

There is 1 feature i am working on, which is when you leave one of these two channels you will get removed from the pug.
I will make it so that when you leave one channel, but are still online on another channel where the irc bot is, you will keep your position in the pug without being removed.


(Crytiqal) #7

The feature now works.

The bot handles pick-up games cross several channels, e.g. #aero.esports, #aero.pugbot and #etqw.ftmleague
You can idle in any of these channels and participate in pick-up games created across channels.

Example 1:
Person 1 is idling in #aero.esports
Person 2 is idling in #etqw.ftmleague

Person 2 creates a PUG, Person 1 can join that PUG and vice versa.
If Person 1 disconnects from #aero.esports, he will be removed from the PUG.

Example 2:
Person 1 is idling in #aero.esports AND #etqw.ftmleague
Person 2 is idling in #etqw.ftmleague

Person 2 creates a PUG, Person 1 joins that PUG.
If Person 1 disconnects from only 1 channel (#aero.esports OR #etqw.ftmleague) he will NOT be removed.
Only if you disconnect from ALL the participating channels, you will be removed from the PUG queue.


(Seanza) #8

Do you want access to #etqw.gather?


(Crytiqal) #9

New improved version released. plz close this thread.