[FUN][CHAT] ServerBot V0.4 - It's like an IRC Bot for Minecraft! - [740]

Discussion in 'Inactive/Unsupported Plugins' started by lego6245, Feb 5, 2011.

?

What should the Next Feature I work on be?

  1. More parsing like {P}

    12.3%
  2. A cool command

    43.6%
  3. Different sorts of catches

    12.9%
  4. "Friends" system

    31.3%
  1. Offline

    lego6245

    ServerBot - You've got a friend in me: IRC Bot-like creation with catch/response system.

    Version: v0.4 - "Why does the <init>() keep existing!" edition

    About
    Styled after many an IRC bot, ServerBot is a customizable bot with a catch/response system that lets you program responses for key phrases or questions directed at your Bot. In the future, the bot will have functions like:
    • Dice rolling
    • Lotto
    • RSS feeds
    • Tweeting
    • Googling
    • Quick references
    • Time both Server and Local
    • Any any other suggestions
    For now, with v0.1, we have the catch system online. With v0.3 the friends system was activated.


    Download
    Zip File with Config

    Base Level Configuration
    In the config.yml file inside the ServerBot folder, there are five main options so far. They are pretty self explanatory (name is the bot's name, color is the [0-9a-f] letter designating the color), save for the last three: action, spoken, and other. Those are part of the Catch System, outlined below.

    Catch System
    There are three types of catches. Action catches, Spoken catches, and Other catches. Action catches are used when the player uses the /me command. Spoken catches are used then the player sends a normal chat message. Other catches are other messages used elsewhere throughout the program. The format is thus:

    Yay! A hug from {P}!: [hugs]
    I like waffles, {P}: [does, like waffles?]

    The way this works is simple. The first bit is the actual response you want. Notice the {P}. This inserts the players name at that spot. The second bit after the colon, in bracket, is the before/after clause. The first part, before the comma, is what should come before the bot's name. The second part, after the comma, is what should come after the name. Avoid using commas in your actual catches, as it probably will break things. This is the format for Spoken/Action catches. Other catches are similar, except instead of having a before/after, you have just the ID of the other catch. A list of IDs are provided below, and they are self explanatory.
    • playerjoinop
    • playerjoinfriend
    • playerleaveop
    • playerleavefriend
    • playerkickfull
    • playerkickbanned
    • playerkickother
    Parsing
    In your responses, you can use certain parsers. These will input things that you might not want to remain constant, i.e. the players name or the current time. Here is a list of current Parses. Add them in like in the example above.
    • {P} - Player Name
    • {B} - Bot Name
    • {T} - Time (Real World)
    • {D} - Date (Real World)
    • {ST} - Time (Server)
    • {DT} - Descriptive Time (Real World)
    • {SDT} - Descriptive Time (Server)
    Change Log
    Version 0.4
    • Compatible with most recent recommended build.
    • Fixed a few lingering Friends system issues. Preparing full implementation.
    Version 0.3b1
    • Friends system in place. May be buggy.
    Version 0.2
    • More parsing for the bot
    Version 0.1
    • Release. Base catch system
     
  2. Offline

    Firestar

  3. Offline

    lego6245

    Well, thats the thing. Give me what you want from this plugin, and it will happen. The more ideas/interest, the better. Also, knowing your a moderator, mind seeing if I can get the magic purple badge? Kidding aside, this is my second plugin :eek:
    --- merged: Feb 7, 2011 2:10 AM ---
    So, I'd like to explain what I mean by "friend" system.

    What happens is that, at least in the original version, you can designate people as the bots "friends". When they join, they get a different on join message, access to commands you don't want normals to have, etc. It's like a permission system, with perks. I'm considering making it so you can split versions of a catch into friend only/non friend only.
     
  4. Offline

    Phantom Index

    Very interesting. I'll give it a try. It could help with many "noob" related problems.
     
    matter123 likes this.
  5. Offline

    lego6245

    Yeah. There are a lot of things you can do with this. One of them is a response to many different questions. I might make a question catch in the future that will respond to questions only.
     
  6. Offline

    Phantom Index

    Yeah, that's what makes this little bot so special. Sure you can do it with a normal IRC bot, but I don't have the time to learn how to use it.

    This one is quick and easy
     
  7. Offline

    lego6245

    Umm... Everything is there. I don't see what I'm missing. At all. It's not the exact same as the sample there, but thats what the sample is: Its an example. I built off of it. And everything else is up to snuff >.>

    Well, thanks! Stay tuned for more updates!
    For all those you want to add a new parsing like {P}, what should I parse? Some ideas include current time and date.
    --- merged: Feb 8, 2011 12:57 PM ---
    Perhaps server time, outside time, outside date, random number/letter/color/something? Post what you want.
     
  8. Offline

    Lee Hayward

    This doesn't work for me. I'm using the latest release of CrafBukkit and MineCraft server.. I've uploaded the files as per your instructions and restarted my server. But it doesn't repond to the commands.. What's going on? did I miss anything? :)
     
  9. Would be nice to have permissions support. What I mean is, so that instead of playerjoinop, you could, for example have playerjoin<groupname> and then setup custom messages for people of different groups and such.

    Great plugin btw. Many thanks for making it :).
     
  10. Offline

    lego6245

    There is only currently the catch system. If you'd like to suggest a command, suggest it here.
    --- merged: Feb 13, 2011 3:41 AM ---
    This could be done. I'd prefer not, because I hate having to be dependent on too many other plugins to continuously be updated, AND eventually there will be a permissions system in bukkit itself.
     
  11. Offline

    Lee Hayward

    I mean it doesn't respond when someone types HUGS for example.. i'm using your example config.. It does announce ops entering, but it doesn't respond to entered phrases like the hugs example you provided...
     
  12. Offline

    lego6245

    Well, then, that's a problemo. It was working for me, hmm... You have to type the name of the bot you chose, case sensitive. Try typing like /me hugs Server-Tan if your bot's name was Server-Tan
     
  13. Offline

    Lee Hayward

    Got you now. I thought this was a bot that picked up key-words for example and gave canned responses. So say someone typed in "wool" , it would return a message "To get coloured wool type /gw <colour> <stackno>" etc.. But I got round that anyway with another plugin.. But thanks for the explanation, I might put it back for other usage.
     
  14. Offline

    Drength

    An appropriate "Good morning/afternoon/evening" for game time would be cool.
    Maybe use this as a permissions error: I'm sorry, Dave, I'm afraid I can't do that. :)
     
  15. Offline

    lego6245

    I'll add this as a feature in later versions. Reason why I avoided it is because of possible stupid going on, but, then again, might as well.
    --- merged: Feb 14, 2011 7:10 PM ---
    Good idea. I'll add that to the list of features to add. Working on V0.2 now... I guess I now have a name for the update :3
    --- merged: Feb 17, 2011 3:07 AM ---
    Alright, the next update, V0.2, titled "Time to Get a New Watch", will be out in a day or so. I've added a whole lot of time related catches, including both server time and Minecraft time, as well as time descriptions like morning/evening/night.

    Any other suggestions for the Greatest Bot Plugin (TM) would be appreciated.
     
  16. Offline

    crysis992

    It would be nice if the chat could give out all things that are in the console, even the error messages of the plugins. Cause im 24/7 in IRC, and not so often on my root server, so i dont notice it directly when the server printing out error messages. So a option like output=all
    would be awesome for me.
     
  17. Offline

    jmcneely

    You should get it to look up things on Wikipedia.
     
  18. Offline

    DierWolf

    No Worky, not even the example only when ops come in... dont even really know how to format what i should say to get a response.. a more detailed explaination might help people better.
     
  19. Offline

    lego6245

    Sorry, I've been away on vacation. I'm almost set to release 0.2!
    @DierWolf If you can tell me what exactly is going wrong, I can help.
     
  20. Offline

    DierWolf

    Simply doesnt respond tried your example /me Hugs Bob
    gets nothing in return (Bob is the botname i configured for it)

    But the other part works for when an OP comes in it says what its supposed to say when one does.
     
  21. Offline

    lego6245

    It must match EXACTLY. So, since hugs is lower case in the file, it must be lowercase when you type it.
    --- merged: Feb 24, 2011 12:46 AM ---
    Version 0.2 - Time for Time edition!
     
  22. Hey, I get the message this is using stupidly long constructor, on your version 0.2, could you fix this?

    thanks! it's a great plugin! ^^
     
  23. Offline

    lego6245

    I'll fix it next version for ya.
    --- merged: Feb 27, 2011 9:58 PM ---
    So, it looks like people want the friends system. I want to try to find a better storage system for usernames and other information (like MySQL or something to that effect). Server Admins, what storage system would you prefer?
     
  24. sqlite preferably, aka sql in a file. for most of us running servers from home setting up sql is such a hassle when we don't normally use SQL, so either sqlite or flatfile (yaml?)
     
  25. Offline

    lego6245

    Alright, so I'lll start with SQlite and then add SQL support in the future.
     
  26. Offline

    drampelt

    Typing /me hugs DRMC-BOT does nothing.....
    --- merged: Feb 28, 2011 12:48 AM ---
    And also when an op enters it says it twice in a row
     
  27. Offline

    lego6245

    Anything get outputted on the console? And let me check to see why it would be printing an OP enter message twice...
     
  28. Offline

    drampelt

    Nothing in console. All other messages (no u) work fine
     
  29. Offline

    lego6245

    Also, ensure you have a /me command available through some other plugin.
    --- merged: Feb 28, 2011 1:11 AM ---
    I see no reason why the OP join message would appear twice unless two OPs joined at the same time or there was lag.
     
  30. Offline

    drampelt

    I have the essentials /me command and it does double op at random times
     

Share This Page