; In the Labs
Learning Center
Plans & pricing Sign in
Sign Out
Your Federal Quarterly Tax Payments are due April 15th Get Help Now >>

In the Labs


  • pg 1
									In the Labs…

X-Bot 2003
by Overtech Technologies
What is X-Bot?
   X-Bot is a remarkable combination of a
    powerful bot engine, customized scripts
    and a graphical front-end which makes
    setting up an IRC bot easy.
How was X-Bot Built
   X-Bot began as multiple programs.
   Eggdrop was the basis for the IRC interface. It
    is a relatively hard to use but highly
    customizable tool for creating bots on IRC
   OTBN.TCL (Overtech Technologies Bot Network
    TCL Script) was an add-on that made Eggdrop’s
    bot interface more user-friendly and more
    practical for wide deployment.
   Eggconfig was the original GUI for easing the
    configuration of the Eggdrop Interface.
How was X-Bot Assembled?
   X-Bot combined Eggdrop, Eggconfig and
    OTBN.tcl into a single easy-to-use package.
   X-Bot built upon these tools and improved them
    to provide a unique project.
   X-Bot worked with former programmers of
    OTBN.tcl to create a new script called X-Bot.tcl
    which was easier to code and easier to maintain
    – benefiting our project.
Programming X-Bot
   X-Bot by its nature is a modular program using
    other entire programs as modules of its own
   The X-Bot team broke down OTBN.tcl into more,
    smaller modules code-named “Bot-Solutions.tcl”
    which has become X-Bot.tcl
   This made programming X-Bot easier since
    tasks could be easily sorted to multiple
    programmers without much effort.
X-Bot’s Construction
 X-Bot is an immensely complex program
 To aid in the creation of a IRC interface for
  our product, we sought assistance from
  the open source community.
 Eggdrop and Windrop provided a GPL-
  compliant basis we could use for adding
  IRC capabilities to X-bot.
X-Bot’s Construction
 X-Bot treats the entire Eggdrop and
  Windrop programs as modules to the
  greater X-Bot program.
 This allows us to easily “swap” old
  versions of these products with new
  versions very easily.
Users want more, we give more!
   Halfway through the construction of X-Bot, beta
    testers were demanding X-Bot be compatible
    with shell server accounts.
   To accomplish this, we modified the code of
    another GPL program called “Imagica Telnet”
    which was written in VB.
   Fortunately, the program was built in such a way
    which made building a proprietary scripting
    language that the program can interpret very
Users want more, we give more!
 Getting X-Bot on the shell needed more
  than just a telnet client.
 After much research, we discovered the
  best way to upload content which was
  compatible to most windows systems was
  to use Microsoft’s FTP scripting language
  in conjunction with Windows batch files.
Users want more, we give more!
 To keep X-Bot easy to use, we needed to
  hide this environment’s harsh interface
  from the user.
 We unfortunately could not hide the entire
  program from our users, leaving many
  brief command windows on screen which
  are performing tasks automatically.
 X-Bot 2004 will eliminate these problems.
Chart of how X-Bot 2003 works
                                           X-Bot on Windows
                                                      (Built in Visual Basic)

Default Configurations                        Local Bot Interface                                             Shell Interface

                                                                                                                                 Imagica Telnet
                                                                           Windows Command Line FTP                         (Used proprietary language to
              Control Eggdrop’s Environment                                     (Built using Windows FTP Scripts)             interface with eggdrop on
                     (Windows Batch Scruot)                                                                                         a remote server)

                                                                                        Eggdrop on Linux
                                                                                              (Built in C)

                  Cygwin Linux Emulator
                Allows bot to run on local computer                                          X-Bot.TCL
                           (Built in C++)                                           (Eggdrop add-on written in TCL)
Overcoming Boundaries
 That diagram illustrates the complexity of
 A program built in Visual Basic designed
  for Windows interfaces with a program
  built in C designed for Linux.
 Despite this, the entire program works on
  Windows machines thanks to Cygwin
   Cygwin is a GPL’d program which allows
    Windows to emulate Linux programs.
   Thankfully people at SourceForge.net have
    compiled a version of Eggdrop bundled with
    Cygwin for use on Windows called “Windrop.”
   This further eases the burden off our
    programmers and allows us to focus more on
    other aspects of this program such as the GUI.
Due to the modular nature of X-Bot..

 It is easy for us to maintain parity with the
  Eggdrop standards.
 We can release more editions of X-Bot
  which uses different base TCLs more
 It is compatible with many fun Eggdrop
  add-ons that make X-Bot very expandable
  and versatile.
Due to the modular nature of X-Bot..

 We can focus more on X-Bot being cool
 We can make X-Bot easier to use at a
  faster rate
 We do not need to be concerned about the
  whole thing working. Modules are
  guaranteed to work.
 X-Bot is very stable despite its complexity
What we learned
 Extensive beta testing is an absolute
  necessity for all portions of any program.
 When we first released betas of X-Bot to
  the public, our web server’s bandwidth
  was overloaded. Use a different server
  that can handle the demands upon media
What we learned
 The coolness factor is missing in X-Bot
  and many beta testers are unhappy about
 Using GPL’d programs is a good way to
  boost RAD (Rapid Application
What we learned
 Visual Basic can prove to be an extremely
  powerful language when pushed to its
 GPL does not prevent us from making a
  profitable program.
 Project Management Documents aid
  greatly in producing progress reports and
  coordinating large-scale beta testing.
What we learned
   When building an easy-to-use program, one
    must keep in mind the demands of advanced
   Once beta testing has begun, routine releases
    are a must.
   When using GPL’d software, one must be aware
    of the bugs in that software and try to avoid
    implementing them into the final product.
X-Bot 2004
   It’s Coming Soon…


To top