Prolix - Binary Chat Bot Sesquipedalian Chimerical Juju 
Main Menu
  • About Prolix
  • News
  • Screen Shots
  • Forum
  • Files
  • Documentation
  •    Packet Ref
  • Developers
  • View Source
  • SF Page
  • GNU Libtool

  • Modules
  • DSBot
  • SampleBot

  • Related Works
  • Bnetd
  • D2Close
  • FSGS
  • Battle.Net

  • Prolix Logo
    Project Is Terminated Posted by Eurijk! on 22 Dec 02
    Well, this project is pretty much dead now. Some of the goals of the project proved impossible in the windows world. Dynamic loading c++ modules seems impossible until Microsoft updates their load-time linking. Last check it still didn't exist in WinXP :(.

    Anyhow it's been fun. Some of the last prolix .exe's are on the site under the downloads.

    Be sure to check out some of the other projects like and


    New Win32 Release Posted by Eurijk! on 31 Jul 02
    I'm pretty bad about updating this website :). Anyhow for all those who havn't been watching too close, win32 works fine with W2BN and D2XP. We havn't hit any major release point quite yet, but you can grab the latest snapshots/zips from the (zds ftp site) since it's too much of a hastle to upload new releases to sourceforge. >;-)

    For the unix versions, use the cvs as always, it tends to be the most updated. :)

    ( somewhat now dated ss )


    News Update Posted by Eurijk! on 5 Jun 02
    Well it looks like it might be a while until we hear legal word on bnetd. I don't have too much time to work on programming right now, but if others want to jump in, shoot me a message! I am waiting on a message back from the LibTool (GNU) group for doing backlinking in win32. (Which is why there is no win32 prolix that works with modules. There are ones that work w/o modules, but they are rather silly. :D) CVS Current ss of the modules. :)


    Vivendi/Blizzard Attacks Open Source Project Posted by Eurijk! on 17 Apr 02
    Verbatim from (14Apr2002)

    Recent action by Blizzard to combat piracy - 4/17/2002
    Blizzard Entertainment confirmed today that it and its parent company Vivendi Universal Games have filed a lawsuit against members of the BNETD project as well as Internet Gateway, Inc., a St. Louis-based Internet service provider. The lawsuit centers on the creation, hosting and distribution of BNETD, a software program that incorporates Blizzard's copyrighted materials without authorization and enables pirated copies of Blizzard games to be played online.

    The lawsuit, filed on April 5, 2002, alleges that members of the BNETD project violated copyright law by illegally copying portions of code from Blizzard's computer games. The BNETD software, which emulates Blizzard's free online gaming service, bypasses an authentication process designed to prevent the use of illegal copies of Blizzard games on the Internet. Contrary to BNETD's contentions, Blizzard states that it would have been impossible for a third party to recreate specific authentication code embedded in their games by analyzing or "packet sniffing" network traffic between a Blizzard game and Additionally, Blizzard contends that Internet Gateway violated copyright law by hosting BNETD and contributing to the copyright infringement of users playing pirated copies of Blizzard games.

    "We always have been and will continue to be diligent in protecting our trademarks and copyrighted materials," said Michael Morhaime, Blizzard Entertainment president and co-founder. "We are convinced that certain members of the BNETD project illegally copied parts of our code and bypassed the game's CD-Key authentication process. We further believe that emulators damage our efforts to prevent piracy, and they create safe havens for players using illegal copies of our products." Morhaime continued, "Our goal is to provide the best gaming experience for our users; piracy impedes our ability to do that and ultimately hurts the entire gaming community."

    Blizzard Entertainment provides free and reliable online multiplayer gaming for its products over, the company's exclusive online game network. prevents the use of pirated games on its network by providing each user with a unique, alphanumeric CD-Key, which is included with legitimate retail versions of Blizzard games. BNETD enables multiplayer gaming without a valid CD-Key, which allows players to use illegal copies of Blizzard games on the Internet. In the lawsuit, Blizzard alleges that, in order to make the BNETD software work, certain programmers at BNETD copied Blizzard code relating to password and username authentication, and incorporated it into the BNETD server program.

    Best known for blockbuster hits including the Warcraft® series, StarCraft® and Diablo® series, Blizzard Entertainment ® (, (a division of Vivendi Universal Interactive, Inc.) is a premier developer and publisher of entertainment software renowned for creating many of the industry's most critically acclaimed games. Blizzard's track record includes four consecutive number-one selling games and multiple Game of the Year awards. The company's free Internet gaming service ® reigns as the largest in the world with millions of active users.

    Project on Hold Posted by Eurijk! on 21 Feb 02
    It appears as though bnetd has been shutdown. The Prolix project will be on hold until we hear more on this. Prolix is designed to work with bnetd, fsgs, and may function on itself. With our primary target (bnetd) being shutdown, it seems there may not be enough interest to continue development, and even if so the development may run into similar legal problems that bnetd ran into.

    For now all is on hold, perhaps this will change in the future. Thanks for all the help and support!


    Unstable Release Posted by Eurijk! on 12 Feb 02
    It's been quite some time since we last had a "stable" release. I added a section called "unstable" to the files directory, and put up prolix-v0.07_pre25.bz2. It is the most stable of the v0.07 branch we have had in a while, with a large amount of *major* changes since v0.06. Changes include enough win32 fixes to get prolix to run under win32. I do not believe this will login to non-bnetd servers under win32. Win32 display and bot modules do not work, however the base and control modules should be fine. There is a strange bug in the ncurses display module, holler if you see it, I can't find it. :) Lots of changes for darwin, including connecting and logging into bnetd servers. You will need libdl for darwin at least. See the CHANGELOG for more complete details.

    *Note*, this is *NOT* a stable release, just a snapshot before we head off on the "let's make more things work rather then making it completly stable" quest. Which includes switching over to autoconf, and moving modules over to libtool's libltdl which should allow for loadable display modules under win32, and perhaps make darwin a bit easier in the process.


    Help!!! Win32, pthreads, and Gtk. Posted by Eurijk! on 28 Jan 02
    Ran into another windows related problem - this should demo the problem. When you run gtk_main() inside a pthread, it doesn't seem to want to update. Any thoughts ?

    Update: There does not appear to be a solution for this. Fun. We are adding some callbacks, and running the gtk displays during the callbacks from the display thread. This requires gtk to be polling, which is less then optimal, but functional. >;-) win32 screenshot


    Help!!! Win32 DLL Posted by Eurijk! on 24 Jan 02
    Help! I've ran into a problem with windows dlls. Or should I say microsoft had some lack of foresight (not that I am biased :D)
    Actually, I'm not a windows programmer, this should summarize up the problem. Thanks for any input!!!

    Update: Ok, I believe we have a method for solving this now. By using pure virtual classes on all classes in the global tables, we can avoid the linker problems on the dll's. (this only effects the win32 world). Thanks for the advice skywing.


    Module Design Update Posted by Eurijk! on 17 Jan 02
    This screenshot says it all. >;-) Lots of work to be done, but I think the modules will be quite fun. >;-)

    Gui Design Change Posted by Eurijk! on 15 Jan 02
    The database overhall has been completed for the most part. (the existing bot modules, will need to be tweaked). We will be adding gui control modules to Prolix over the next while. This will allow Prolix to have various different "look and feels" to it when using a gui mode (although as a technical point - you could create a control module for text mode as well, albeit silly).

    Database design Change Posted by Eurijk! on 12 Jan 02
    Database is getting an overhall. This should allow us to get the UserDB's up and running, something which I have been avoiding. >;-) Does anyone know how to do modular programming using gcc under win32, or have some good reference sites? Shoot me an email

    Darwin Posted by Eurijk! on 4 Jan 02
    Ok, the Darwin port works for me on bnetd now. Could I get some feedback on the Darwin port? The user consoles (or any loadable modules, ex: bots) do not work yet, as there are some differences with darwin and libdl. See here for techno babbel. :) Modules should be added in at some point, but I need some feedback on the "base" first. >;-)

    Happy New Year Posted by Eurijk! on 1 Jan 02
    Happy new year! Prolix now compiles under darwin. There are some endian issues that are still remaining, so don't expect it to work just yet. Hopefully soon though. >;-)

    New Release - v0.06 Posted by Eurijk! on 13 Dec 01
    Prolix v0.06 is here. STAR and SEXP support has been added. Connecting multiple different clients at once has been fixed (multi bot support in gtk only). Added an "auto" cdkey option for connecting to the newer versions of bnetd. Added another bot to the modules section. Check out the files section.

    Darwin support has been put off again. >;-) v0.07 should fix a good portion of the display issues, and hopefully we will be able to work out the endian/select problems with it as well.

    New Release - v0.05 Posted by Eurijk! on 7 Dec 01
    New release v0.05. Prolix now works on the real Gtk has been added as well. Most of the icons are there. Tons of compatibility changes for different unix variants. Prolix can now join "full" channels. See the CHANGELOG for the complete list. Check out the files section.

    v0.06 has been delayed as it looks like there are several hurtles that will take some time with Darwin. NCurses and libdl appear to have some rather distinct differences.

    News Flash Posted by Eurijk! on 5 Dec 01
    Ok, we are approaching the finishing stages of v0.04 which will actually be numbered v0.06.

  • v0.04 - Gtk Support for FreeBSD & Linux
  • v0.05 - Support for Battle.Net(tm)
  • v0.06 - Console Support for Darwin

    Instead of approaching these one at a time, they ended up in a more parallel nature, so we will be skipping v0.04 and v0.05 and going straight to v0.06. :) (Since we need to actually reach v1.00 at some point :D)

    Gtk does not work under Linux yet, needs a few minor changes. Battle.Net support needs to have some changes to the auth thread, but if your willing to twiddle with your directories it supports WC2 now. Darwin needs some more work with cleaning up select, and actually handling the connect() correctly. Hopefully in the next few days we will get these completed, and we can get ready for release. Feel free to play with the cvs current version, please report bugs in the forum. Thanks.

  • New Release - v0.03 Posted by Eurijk! on 28 Nov 01
    New release v0.03. Added W2BN support. New ./configure script to make it easier to compile. Displays and dynamic loading have been cleaned up a bit. Support for older versions of bnetd (with) W2BN. Lots of changes and bugfixes, see the CHANGELOG. Check out the files section.

    Second Release - v0.02 Posted by Eurijk! on 24 Nov 01
    We have our second release. Bot module hot loading and unloading now works. Fixed a large number of little problems, such as thread signal timing, and segpipe errors - see the CHANGELOG. Check out the files section.

    Bot Modules Posted by Eurijk! on 23 Nov 01
    Bot modules work* now :). There are a lot of changes that will be made to them still. This may create some cross-platform problems, but should be able to be resolved.

    * The term "work" is used very loosely

    First Release - v0.01 Posted by Eurijk! on 20 Nov 01
    We have our first release. It has not been tested on too many different systems, so be sure to let us know if you have any problems. Check out the files section. This version works as a basic "chat client" in console mode. This works fine on bnetd, has not been tested on fsgs, and will not work on actual as the hashes have not been fully implemented.

    Linux Update Posted by Eurijk! on 19 Nov 01
    Prolix should compile fine under FreeBSD and Linux now.

    Almost v0.01 Posted by Eurijk! on 16 Nov 01
    Hopefully we will have v0.01 ready sometime this weekend. Not much too it, but on an updated bnetd server(needs D2/D2XP support) prolix now connects, (creates the account if it needs too), and logs on. Basic chatting works, not all the "display gadgets" are accurate yet.

    Prolix status update Posted by Moonshine on 14 Nov 01
    Eurijk has created a new cleaner webpage layout. But most importantly prolix now joins channels, so we are now well on our way to getting the more important features to work.

    Packet Reference Added (beta) Posted by Moonshine on 11 Nov 01
    I added a very rough document called 'The prolix bnetd packet reference', which is sample hexdumps of most of the bnetd packets. Each hexdump is accompanied by a description.

    Packet Reference Added (beta) Posted by Moonshine on 11 Nov 01
    I added a very rough document called 'The prolix bnetd packet reference', which is sample hexdumps of most of the bnetd packets. Each hexdump is accompanied by a description.

    Status Update Posted by Moonshine on 10 Nov 01
    Nothing much to report, we have a logo now :). Thread signals work.

    Status Update Posted by Eurijk! on 5/6 Nov 01
    Prolix connects now. Does not do any important packet stuff quite yet, that's still to come. >;-)

    Lots of little changes Posted by Eurijk! on 4 Nov 01
    Not too much new, lots of little changes. The networking code is approaching a finished state. We have started the design work on "bot modules", which allow you to create your own bot while still in the prolix framework. We want the modules to end up a lot like gaim if possible.

    STL and Red Black Trees Posted by Eurijk! on 30 Oct 01
    I gave up on stl and r&b trees, and have gone for a more simple approach (binary tree & linked list). (This is supposed to be a *simple* bot anyhow) Builds are broken again. :)

    Bnetd Project Posted by Eurijk! on 28 Oct 01
    Typhoon with the bnetd project put up a news anouncement about Prolix. Thanks Typhoon. :)
    Logs are working, now for the DNS. Builds/links are all working again.

    No new news Posted by Eurijk! on 27 Oct 01
    More source. Moonshine- added the all important bob class. Don't expect this to link today, we are trying to get the config thread to talk with the bot thread.

    It's the 26th! Posted by Eurijk! on 26 Oct 01
    Guess the date isn't real news :). A lot more source has been added to the bot. None of it has been linked together quite yet.

    Website Up Posted by Eurijk! on 25 Oct 01
    Hey, we have a website. Now for some docs and source. Do participate in our survey. You can browse the latest source tree here.

    Project Started Posted by Eurijk! on 24 Oct 01
    Project started. Moonshine- and myself(eurijk!) are setting of to create a open source Linux and FreeBSD binary chat bot. Off we go! :D