PDA

View Full Version : TagBot


IsZi
November 23rd, 2002, 20:39
Okay, here's a bot I thought up a little bit ago, but I haven't really started work on yet. Mostly just brainstorming. So far, I'm planning on doing this in a WBS script, (WinBot Scripting language) since I don't really know any other IRC bot scripting language just yet. So, please limit your replies to information that would apply to WBS, unless you want to attach a full tutorial for whatever language you're gonna talk about. ;)

What I want TagBot to do, is to be able to go in a channel and, on command, start a game of "IRC Tag". Features of this game may include:

Multiple Rounds in one Match
Ability for players in one game, on one channel, to play another game independant of that channel, but hosted by the same Bot.
Ability for a player to go AFK, and not be taggable during that time.
No tag-backs
Timed rounds.
Marks a player as "Dead" (Unable to play in future rounds, until Match is ended.) when they have lost a round.
Round Time shortens as end of match is near. (Like around the 3rd-to-last round.)
Help Command
Prevent a user from becoming Live again by simply leaving and re-joining.
Maybe be able to host one game over multiple channels/servers?
Winner of each Round/Match is automatically "it" for next Round/Match.
Test if a targeted nick is in the channel, before executing the tag command.


Here's a list of commands I know I'm going to need for the bot:

!startgame {vars} - Starts a game, with {vars} being stuff to set things like Round Time, maybe a limit to the Rounds in a Match, perhaps an option to allow/disallow player joins after Round 1, etc. This should be done via PM to the Bot.
!play - Join current game.
!afk - Set as AFK.
!b2k - (Might change the command name.) Set as back.
!quit - Quit the game. (May not re-enter until next match.)
!tag {nick} - Tag the person using the nick specified in {nick}.

There's a bunch of other stuff, but I can't think right now. I'm thinking that, in order to enforce some of the game rules (like keeping "Dead" players from comging "Live" again, by finding a workaround) I might have to assign a random ID number to each Round and/or Match. This, among many other variables would need to be stored in variables named for each player, and the channel the game is on. (i.e.: PlayerName.GameChannel.VariableName) Or, to keep players from changing nicks to re-set their variables, put the player's hostmask instead of their nick, in the name of the variable.

Anyone that wants to help, please feel free to post suggestions.

Thanks.

-(Oc)-Mavric
November 24th, 2002, 07:49
Interesting... I have a Quiz Bot, but you would have to add all his questions.. Which may be a good thing, because you sould make them all about Americas Army if you wanted to.... :) Most IRC bots are coded in a C++ Markup, If you know and understand C++ you can code in all of them... :)

Learjet
November 24th, 2002, 19:41
What in the heck are you guys talking about LOL

Geez
:?: :!:
learjet

IsZi
November 24th, 2002, 19:42
Nope, the only languages I "speak" (and my memory is quite rusty in these, as well) are HTML, JavaScript, BASIC, and... well, does BAT file scripting count?

-(Oc)-Mavric
November 24th, 2002, 23:20
Basic is a lot like C++ with a few diffrences, It may be basic I'm think of...

Strange_One
January 20th, 2003, 15:16
C++ is an OOPL, Basic is command line isn't it? Maybe C and Basic are a little bit similar, but I have several versions of C++ and the are all OO. :roll:

gamemastax
November 16th, 2003, 11:27
basic CAN be command-line, though usually it isn't. It's also mostly a dead language. I used it when I was 5 years old lol. Unless you're talking about VBasic... which is much different and is harder; and yes, similar, but less complicated than, C++.