• Visit Rebornbuddy
  • Visit Panda Profiles
  • Visit LLamamMagic
  • [IRC] GeekyIrc

    Discussion in 'Archives' started by geeekzor, Nov 14, 2012.

    1. geeekzor

      geeekzor Member

      Joined:
      Jan 15, 2010
      Messages:
      213
      Likes Received:
      3
      Trophy Points:
      18
      GeekyIrc

      This is a plugin to send chat messages and logs to an IRC channel.

      Its built on the SmartIrc4Net framework.

      Installation:
      Code:
      1. Download the ZIP from GitHub
      2. Extract the "GeekyIrc" folder to <Honorbuddy>\Plugins
      3. Open the Plugin Manager.
      4. Don't enable the plugin, Honorbuddy will hang/crash.
      5. Click the GeekyIrc Config button.
      6. Change the IrcSettings to the server you are going to connect to.
      7. Enable the plugin.

      TODO:
      Code:
      Fix this post and any features broken by the updates.

      Features

      • Chat Logging, currently supports
        • Whispers
        • Party
        • Raid
        • Battleground
        • Guild
        • Officer
        • Say
      • Remote chatting, works for
        • Whispers
        • Party
        • Raid
        • Battleground
        • Guild
        • Officer
        • Say
      • It can send statistics (deaths, loots, honor gained etc.) when you use a command.
      • It can send the whole Honorbuddy logging window, so that you can keep track on what your bot is doing when you are at school or work.
        • This will send it as it happens. Choose your server wisely, as it can get spammy (often causing the plugin to get kicked)
        • It can also be sent as private messages to the specified nickname
      • Basic Nickname security (Disabled by default) will make it respond to commands but only if the persons nickname is in the list of accepted names.
      • Remote commands to change botbases, limited functionality due to the plugin not having code to change profiles.
      • Kill wow remotely.


      All options are disabled by default.


      It is highly recommended that you overlook your IRC settings before using this plugin.


      If you have "Extreme Logging" enabled make sure that


      1. You set the SendDelay option is set to true
      2. SendDelay value to something higher than 1 second (1000 milliseconds)

      This feature may send loads of messages, it might get you kicked or banned on public servers.

      Configuration
      Code:
      Settings are applied when the Config form is closed and take effect immediately.
       
      The prefix can be changed, default is an exclamation mark ( ! )[INDENT][I][B]Only set it to single characters. i.e !  ,  =  , ? ,  P[/B][/I]  etc
      [/INDENT]
       
      
      Commands

      If you send commands as a private message, it will reply with a private message
      If you send commands directly in a channel, it will reply there.

      Commands starts with a prefix, default is an exclamation mark ( ! ) You can change this in the settings.

      Code:
       [SIZE=2]time - prints the current time (Mainly for testing the plugin)
      level - prints the level of the character.
      pos - prints the position
      deaths - prints the deaths.
      exp - exp per hour and time to level.
       [/SIZE]stop - stops the bot.
      start - starts the bot, doesn't chose a CC.
      arch - switches to and starts the archaeology bot
      bg - switches to and starts the bg bot
      grind - switches to and starts the grinding bot, doesn't switch profiles.
      quest - switches to and starts the questing bot, doesn't switch profiles.
      name - prints the name of the character
      loots - total loots and loots per hour
      kills - kills
      status - an array of info
       
      chat - writes to the specified chat
       
      chat <Channel> <Message>
      i.e !chat PARTY Hey guys
       
      whisper - whispers a player
       
      whisper <Player> <Message>
      i.e !whisper Bob Hey Bob 
      
      
      Known Issues

      Code:
      The Color system, since the change from
       System.Drawing.Color to System.Windows.Media.Color
      I can't get the names like I did before, therefore the whole system I built is pretty much useless.
      There are some colored messages left, but they might not work as intended anymore.
      
      If you enable the plugin before changing the settings, Honorbuddy will stop responding and a restart of Honorbuddy will be required.
      
      Download
       
      Last edited: Nov 15, 2012
    2. BIRDIE13

      BIRDIE13 Member

      Joined:
      Sep 10, 2011
      Messages:
      42
      Likes Received:
      0
      Trophy Points:
      6
      Okay and some features? What does it do?
       
    3. geeekzor

      geeekzor Member

      Joined:
      Jan 15, 2010
      Messages:
      213
      Likes Received:
      3
      Trophy Points:
      18
      First things first, the old thread was archived so this one was created hastily yesterday.
      It responds to commands from IRC, it can remotely stop/restart the bot, change botbases, give you information on how much honor or xp your character have etc.

      A note though, after the MoP update most of the stuff was broken and was hastily fixed, a rewrite is coming "Soon"
       
    4. Voidreg

      Voidreg Member

      Joined:
      Nov 7, 2012
      Messages:
      32
      Likes Received:
      0
      Trophy Points:
      6
      Awesome plugin thanks a lot! but how do you respond to Bnet whispers?
       
      Last edited: Dec 1, 2012
    5. geeekzor

      geeekzor Member

      Joined:
      Jan 15, 2010
      Messages:
      213
      Likes Received:
      3
      Trophy Points:
      18
      Guess those commands weren't in the list of commands,

      bnetdump
      Will dump all friends currently logged in.
      Due to restrictions, or lack of talent on my end,
      you will only be able to see their character names.

      the output will be
      CharacterName Pid : <PID>

      In this project, PID is known as PresenceID.
      To message someone, you need to use the PID, thats how it works with wows lua api.

      bnetmsg <PID> <Message>
      For example
      !bnetmsg 1 Hello Bob!

      bnetreply <Message>
      Reply to the last person you whispered.
       
    6. jimmy06

      jimmy06 Moderator Staff Member Moderator

      Joined:
      May 12, 2010
      Messages:
      817
      Likes Received:
      20
      Trophy Points:
      18
      I wanted to use the SmartIrc4Net framework with my Buddygrowl plugin can i just ninja the code you've written to save me alot of work ? lol
       
    7. geeekzor

      geeekzor Member

      Joined:
      Jan 15, 2010
      Messages:
      213
      Likes Received:
      3
      Trophy Points:
      18
      Go ahead, the code is a mess atm though.
       
    8. jimmy06

      jimmy06 Moderator Staff Member Moderator

      Joined:
      May 12, 2010
      Messages:
      817
      Likes Received:
      20
      Trophy Points:
      18
      Meh I'll make my own code then from the framework. Thanks though.
       
    9. geeekzor

      geeekzor Member

      Joined:
      Jan 15, 2010
      Messages:
      213
      Likes Received:
      3
      Trophy Points:
      18
    10. geeekzor

      geeekzor Member

      Joined:
      Jan 15, 2010
      Messages:
      213
      Likes Received:
      3
      Trophy Points:
      18
      Alright,

      Just a tip run the Listen method on a new thread, and always use the RfcDie method before trying to disconnect since that will break the listen and not cause HB to freeze.
       
    11. randomstraw

      randomstraw Community Developer

      Joined:
      Jul 17, 2012
      Messages:
      1,611
      Likes Received:
      10
      Trophy Points:
      38
      New Version works

      thank you :)

      ?: clients randomly disconnect after some minutes + is not reconnecting .... :/ nothing in the HB log concerning this.
       
      Last edited: Dec 6, 2012
    12. geeekzor

      geeekzor Member

      Joined:
      Jan 15, 2010
      Messages:
      213
      Likes Received:
      3
      Trophy Points:
      18
      Hmm, should try to reconnect you every 30 seconds if you aren't connected.
      Its been working fine for me for about 2 hours

      Edit:

      Guess I missed that, it will reconnect properly now, every 30 seconds.
       
      Last edited: Dec 6, 2012
    13. jimmy06

      jimmy06 Moderator Staff Member Moderator

      Joined:
      May 12, 2010
      Messages:
      817
      Likes Received:
      20
      Trophy Points:
      18
      I have that all working currently though thanks. HB freezes because you don't run the new thread as a background thread ;) I'm using
      Code:
      irc.RfcQuit("Test", Priority.Critical);
      irc.RfcDie();
      irc.Disconnect();
      Also this might help you. I wrote this just now.

      Method
      Code:
              public System.Drawing.Color ConvertColor(System.Windows.Media.Color color)
              {
                  return System.Drawing.Color.FromArgb(color.A, color.R, color.G, color.B);
              }
      
              public System.Windows.Media.Color ConvertColor(System.Drawing.Color color)
              {
                  return System.Windows.Media.Color.FromArgb(color.A, color.R, color.G, color.B);
              }
      
      Usage
      Code:
      ConvertColor(System.Windows.Media.Colors.Plum)
      
      this returns System.Drawing.Color
      Code:
      Color [A=255, R=221, G=160, B=221]
      
      and
      Code:
      ConvertColor(System.Drawing.Color.Plum)
      
      returns System.Windows.Media.Color
      Code:
      #FFDDA0DD
      
       
      Last edited: Dec 6, 2012
    14. randomstraw

      randomstraw Community Developer

      Joined:
      Jul 17, 2012
      Messages:
      1,611
      Likes Received:
      10
      Trophy Points:
      38
      would be better if it wouldn't disconnect at all.
      I let 3 bots run the new version and let you know stuff :)

      ?: so the bot renames itself every ~30 sec to keep in touch? better just send PING's.. as they dont spam the channel :/
      Code:
      [22:41]	xxyxzr2 is now known as xxyxzr2
      [22:42]	xxyxzr2 is now known as xxyxzr2
      [22:42]	xxyxzr2 is now known as xxyxzr2
      [22:43]	xxyxzr2 is now known as xxyxzr2
      [22:43]	xxyxzr2 is now known as xxyxzr2
      [22:44]	xxyxzr2 is now known as xxyxzr2
      [22:44]	xxyxzr2 is now known as xxyxzr2
      and the disconneting still is an issue, as for
      Code:
      [22:41]	g3z6hgg has joined
      [22:41]	g3z6hgg is now known as g3z6hgg
      [22:42]	g3z6hgg is now known as g3z6hgg
      [22:42]	g3z6hgg is now known as g3z6hgg
      [22:43]	g3z6hgg is now known as g3z6hgg
      [22:43]	g3z6hgg is now known as g3z6hgg
      [22:44]	g3z6hgg is now known as g3z6hgg
      [22:44]	g3z6hgg is now known as g3z6hgg
      [22:45]	g3z6hgg is now known as g3z6hgg
      [22:45]	g3z6hgg is now known as g3z6hgg
      [22:46]	g3z6hgg is now known as g3z6hgg
      [22:46]	g3z6hgg is now known as g3z6hgg
      [22:47]	g3z6hgg is now known as g3z6hgg
      [22:47]	g3z6hgg is now known as g3z6hgg
      [22:48]	2222222 has joined
      [22:48]	g3z6hgg has disconnected: Broken pipe
      [22:48]	2222222 is now known as g3z6hgg
      [22:49]	g3z6hgg is now known as g3z6hgg
      :C

      its so spammy, that its not really monitoring, but filtering ... :/




      i guess in general a not disconnecting one would be better over a disconnecting one.
       
      Last edited: Dec 6, 2012
    15. jimmy06

      jimmy06 Moderator Staff Member Moderator

      Joined:
      May 12, 2010
      Messages:
      817
      Likes Received:
      20
      Trophy Points:
      18
      That's for you to fix then as its your problem you get disconnected
       
    16. geeekzor

      geeekzor Member

      Joined:
      Jan 15, 2010
      Messages:
      213
      Likes Received:
      3
      Trophy Points:
      18
      Thats what the framework does, and I have 2 bots running most of the time, I used 3 different irc clients and I run UnrealIRCd locally and I have no issues whatsoever.

      This is a part of todays log. This is with the latest commited version of the plugin
      You need to register and have one post to see spoilers!
       
    17. randomstraw

      randomstraw Community Developer

      Joined:
      Jul 17, 2012
      Messages:
      1,611
      Likes Received:
      10
      Trophy Points:
      38
      so .. obviously i am doing something very wrong.

      i still get the "renamed" every 30s..

      also, i am getting every "message" the bot sends 3 times. i deleted the settings, the plugin folder & the compiled assemblies before installing the "new" version, so that might not be the issue.
       
      Last edited: Dec 7, 2012
    18. geeekzor

      geeekzor Member

      Joined:
      Jan 15, 2010
      Messages:
      213
      Likes Received:
      3
      Trophy Points:
      18
      PM me your settings file and I'll see if I can reproduce the problem here.
       
    19. Voidreg

      Voidreg Member

      Joined:
      Nov 7, 2012
      Messages:
      32
      Likes Received:
      0
      Trophy Points:
      6
      Now im getting only this in irc with extreme logging on "<xxxxx> System.Collections.ObjectModel.ReadOnlyCollection`1[Styx.Common.Logging+LogMessage]" any idea why?
       
    20. tomit12

      tomit12 Member

      Joined:
      Dec 24, 2010
      Messages:
      70
      Likes Received:
      1
      Trophy Points:
      8
      Everything seems to work, connects to IRC and all that goodness... but after a short period of time, I can an Honorbuddy error window, and all it says is "Queue empty", then it restarts.

      Here's a log, let me know if you need more, tried to chop the log down a bit. :p
       

      Attached Files:

    Share This Page