[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

    lego6245

    That error, the method error. It keeps popping up just about everywhere and I can never seem to find a reason why. Every update I push out works on my configuration, which is everything in the zip file.
     
  3. Offline

    werecat

    According to the plugin.yml, it is version 0.2 not 0.3b1
     
  4. Offline

    Exone

    Did not run on 612, haven't tested on 617 yet. :p
     
  5. Offline

    Chaosblade83

    im also getting this error...i really wanted to get this to work too X_X
     
  6. Offline

    lego6245

    Are you using the most recent version of ServerBot, including the additional files in the config folder?
     
  7. Offline

    kahlilnc

    Can someone make a video to this. I am so confused.? Dis is too hard.
     
  8. Offline

    redeemingdusk

    Have you developed this on a Mac, or a Windows computer? I get an error saying:

    Could not load 'plugins\ServerBot.jar' in folder 'plugins' : java.lang.NoSuchMethodExcetion: com.enigmasm.serverbot.ServerBot.<init>()

    Then it continues with it's spamming message... do you need more? (I don't want to spam up the page.)
     
  9. Offline

    LudicrousYoshi

    This must not be updated for 677 is it?
     
  10. Offline

    cengbrecht

    Same issue here.
    Minus the stuff after 'plugins':
     
  11. Offline

    lego6245

    Sorry for the delay. Plugin will be updated for 1.5 in the coming days. I'm going to continue to puzzle through why theres the <init>() problem.

    I continue to be unable to reproduce the <init>() problem. If you receive the error, please, please, PLEASE give me as much information as possible.

    However, version V0.4 is up soon now. Finished implementing the friends system and ensured compatibility to 1.5

    I checked the code. It should not be doing that, but I added a check to prevent it just in case. There's a probably a problem on your end with how you've configured your action catches. Check those first and see if you've configured them correctly, because lemmy tell ya, that's important.

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: May 8, 2016
  12. Offline

    GiantCreeper

    I must be doing something very wrong but,
    I have'nt configured the config yet, As testing im trying to get him to respond to spoken and action. But for some reason he does not respond at all, And I have'nt touched the config anyway whatsoever.
    If im right, He should respond to typing no u and /me hug?

    EDIT: Oh sorry, I did'nt realize his name is Capslock sensetive.
     
  13. Offline

    lego6245

    There we go. Glad you could figure it out!
     
  14. Offline

    korean

    Hi there, I get this error when I start up my server.

    Am I doing something wrong? It says it's out of date, but I'm using 0.4 on bukkit 740.
     
  15. Offline

    Alex K

    This refuses to work for me. I'm using Craftbukkit 740, like it says above. What does this huge error mean? Below is the error, and my config file. Thanks!
    Code:
    11:33:36 [SEVERE] Could not load 'plugins\ServerBot.jar' in folder 'plugins':
    while parsing a flow sequence
     in "<reader>", line 8, column 27:
              It is {D} and {T}!: [What time is it?]
                                  ^
    expected ',' or ']', but got Key
     in "<reader>", line 8, column 43:
         ... s {D} and {T}!: [What time is it?]
                                             ^
    
            at org.yaml.snakeyaml.parser.ParserImpl$ParseFlowSequenceEntry.produce(P
    arserImpl.java:641)
            at org.yaml.snakeyaml.parser.ParserImpl.peekEvent(ParserImpl.java:163)
            at org.yaml.snakeyaml.parser.ParserImpl.checkEvent(ParserImpl.java:148)
            at org.yaml.snakeyaml.composer.Composer.composeSequenceNode(Composer.jav
    a:203)
            at org.yaml.snakeyaml.composer.Composer.composeNode(Composer.java:158)
            at org.yaml.snakeyaml.composer.Composer.composeMappingNode(Composer.java
    :230)
            at org.yaml.snakeyaml.composer.Composer.composeNode(Composer.java:160)
            at org.yaml.snakeyaml.composer.Composer.composeMappingNode(Composer.java
    :230)
            at org.yaml.snakeyaml.composer.Composer.composeNode(Composer.java:160)
            at org.yaml.snakeyaml.composer.Composer.composeMappingNode(Composer.java
    :230)
            at org.yaml.snakeyaml.composer.Composer.composeNode(Composer.java:160)
            at org.yaml.snakeyaml.composer.Composer.composeDocument(Composer.java:12
    2)
            at org.yaml.snakeyaml.composer.Composer.getSingleNode(Composer.java:105)
    
            at org.yaml.snakeyaml.constructor.BaseConstructor.getSingleData(BaseCons
    tructor.java:124)
            at org.yaml.snakeyaml.Yaml.load(Yaml.java:264)
            at org.bukkit.util.config.Configuration.load(Configuration.java:73)
            at org.bukkit.plugin.java.JavaPlugin.initialize(JavaPlugin.java:158)
            at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.j
    ava:140)
            at org.bukkit.plugin.SimplePluginManager.loadPlugin(SimplePluginManager.
    java:160)
            at org.bukkit.plugin.SimplePluginManager.loadPlugins(SimplePluginManager
    .java:108)
            at org.bukkit.craftbukkit.CraftServer.loadPlugins(CraftServer.java:85)
            at net.minecraft.server.MinecraftServer.e(MinecraftServer.java:217)
            at net.minecraft.server.MinecraftServer.a(MinecraftServer.java:204)
            at net.minecraft.server.MinecraftServer.init(MinecraftServer.java:144)
            at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:259)
            at net.minecraft.server.ThreadServerApplication.run(SourceFile:394)
    
    END HERE.
    
    This is the config file:
    bot:
      name: Bot
      color: 4
      action:
          Yay! A hug from {P}!: [hugs]
      spoken:
          no u {P}: [no u]
          It is {D} and {T}!: [What time is it?]
          {P} you love men.: [Sex]
          Well {P} That is not a good reason!!!: [IDK]
      other:
          Oh look, an OP!: playerjoinop
          Oh Noes! {P} has been kicked!: playerkickfull
          Why did you ban {P}: playerkickbanned
     
    xMv750x likes this.
  16. Offline

    redeemingdusk

    Hmm... for me it seems that spoken catches only work if they're a single word.

    Example?

    spoken: What?: [shamalamadingdong]
    spoken: What?: [My eyes are about to scream.]

    In this instance, only the top one would work, by typing "shamalamadingdong Server-Tan" The bottom will not work regardless. I also tried to place a comma somewhere to see if it would change anything, and after multiple tries I don't think it's going to help.
     
  17. you need to look at the error and remove what it says in the configuration. Theres an arrow showing whats wrong and it says what line its on.
     
  18. Offline

    Alex K

    What I made in the config is the same format as it says for the others, that's why I don't get this. I tried changing this, but it didn't do anything. Then, I just deleted it and it says the error was the one right after that.
     
  19. Offline

    lego6245

    Please drop punctuation from your catches, and remember you need to say your bots names. Changes to that will come in v0.5.
     
  20. Offline

    redeemingdusk

    Also, could it be possible for random (or even sequenced) answers?

    Like, having it choose one answer out of a few defined replies.

    Something kinda like (and this is just an example that I have no clue if it would work or not):

    Spoken: <1>Not helping you! ;<2> No hints! ;<3> Stop asking! ;<4> NO!: [Please, help me in the maze?]

    Where the plugin would choose one of the bracketed numbers and give the reply associated with it, and the semicolon would separate individual replies in the config file?
     
  21. Offline

    lego6245

    I'm considering a better system for dealing with catches when a 0.5 release starts to materialize post AP exam.
     
  22. Offline

    VGFreak97

    Wouldja mind getting a video? I don't undertand any of the stuff besides /me hugs {botname}

    :D
     
  23. Offline

    jor956

    It could use the first google link and read the main page content to the users? Probably not possible though xD
     
  24. Offline

    Touzani

    How do I add multiple bots?
    Sorry if this is a noob question l0l.
     
  25. Offline

    STiChad

    So there is no keyword function for this yet?
    Like if someone were to cuss anywhere in their text it would pick it up and reply to it.
     
  26. Offline

    niugnip

    I love this :D
    Are you going to upload the source later?
    Thanks
    Niu
     
  27. Offline

    sfxworks

    So your telling me...when people ask for mods...the server can say no...THATS AWESOME
     
  28. Offline

    lego6245

    Please wait slightly longer for a better v0.5. I'm like, snowed down with work.
     
  29. Offline

    jor956

    Code:
    2011-05-21 17:55:32 [INFO] ServerBot V0.4 enabled. By Enigma-SM.
    2011-05-21 17:55:32 [SEVERE] Error occurred while enabling ServerBot v0.4 (Is it up to date?): null
    java.lang.NullPointerException
    at com.enigmasm.serverbot.Bot.setColor(Bot.java:36)
    at com.enigmasm.serverbot.ServerBot.loadBotInformation(ServerBot.java:45)
    at com.enigmasm.serverbot.ServerBot.onEnable(ServerBot.java:35)
    at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:125)
    at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:750)
    at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:253)
    at org.bukkit.craftbukkit.CraftServer.loadPlugin(CraftServer.java:131)
    at org.bukkit.craftbukkit.CraftServer.loadPlugins(CraftServer.java:109)
    at net.minecraft.server.MinecraftServer.e(MinecraftServer.java:218)
    at net.minecraft.server.MinecraftServer.a(MinecraftServer.java:205)
    at net.minecraft.server.MinecraftServer.init(MinecraftServer.java:145)
    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:265)
    at net.minecraft.server.ThreadServerApplication.run(SourceFile:394)
    Can't start it
     
  30. Offline

    SakuraWulf

    I is a newb...how do you edit the .yml file?
     
  31. Offline

    jor956

    With an editor, try Notepad++
     

Share This Page