eggdrop1.6 +/-
                              ___                             
   .-----..-----..-----. __ .'  _|.--.--.
   |  -__||  _  ||  _  ||__||  ._||  |  |
   |_____||___  ||___  |    |__|  |_____|
          |_____||_____|
                              version 2.0.2
				

                              Copyright (C) 2002, ch3mical
                              CitizenK@mad.scientist.com
                              irc.secsup.org (EFnet)


 egg-fu based on infoegg (based on infobot)

 egg-fu talks and reacts much more fluidly and intuitively than infoegg.
 infoegg was nicely done, but was lacking many useful things and had a
 few bugs that I had to work out. It became much more involved than I had
 planned and I ended up spending much more time than I expected, just
 correcting small bugs and miscalculations in the code that didn't
 necessarily interfere with functionality (in most cases). A lot of it
 was just aesthetics and added learning intuitiveness as well as speach
 fluidity. And unlike the Markov model, egg-fu actually makes sense most
 of the time!

 As I went on, other ideas kept coming to mind on how to improve improve
 improve! So I decided this TCL was becoming a script of it's own (or my
 own). Enter egg-fu.

 UP-GRADING OR IMPORTING A WORDLIST?
 PLEASE NOTE:
	Due to all the IMPROVEMENTS in the functionality and various
	bug-fixes, certain erroneous entries and/or wordlists WILL REMAIN
	ERRONEOUS!  Why? Because I don't have the time or patience to code
	subroutines to clean up errors made by older versions of egg-fu or
	other similar SAI bots (infobot/infoegg).  How does this effect
	you?  You will have certain entries that, well, look shitty when
	egg-fu forms a reply, this is due to bugs/errors in the code of
	older and unrelated scripts that formed the wordlist, not egg-fu2.
	So please, do not--DO NOT--e-mail me saying you're getting ugly
	replies or you think you've found a bug if you're using an old or
	unclean wordlist. It's best to delete entries that give erroneous
	replies and re-add them manually. Egg-fu 2.0 has been tested
	thoroughly and properly added entries are displayed properly.

	In summary: clean up your own damn wordlists! :P


Changes/Additions/New Features/Known Bugs
-----------------------------------------

( If you discover a bug, please report it and I'll investigate it )


2.0 - Second public release!

    - Nearly all the bugs are out!  The only bug I know of is a rather
      sneaky little octal bug that seems to only happen once an hour,
      causing the bot to not respond for about 2-3 minutes.  I know it's
      being caused by an expr trying to add octals, and I've put in
      de-octifier code in every place I can imagine. Just think of it as
      your bot taking a nap! Until I figure out what's causing it, it's 
      a very minor bug, so don't sweat it. (Don't email me about octal
      errors! I'll come to your house and shave your monkeys!)

    - The BIRTH CERTIFICATE! Your bot is now "born" when you first install
      or load the script, your bot will record it's "birth" date and time
      and a random sex (male or female) will be decided and written into
      a file named birth_certificate.egg in your bot's dir.
      This file is REQUIRED for the bot to function! 
      Do NOT modify this file without first reading the enclosed HOW-TO!
      If you modify this file incorrectly, your bot will exit with an
      error, and will not load. This is NOT A BUG! I coded it that way for
      a very good reason. You -CAN- however, modify the content of the file,
      provided you do not disturb the format of the time or the order of any
      values within.  (For instance if your bot is female but you want it
      to be male, or vice-versa).  Please read the enclosed HOW-TO for
      detailed instructions.  I will not provide support to you if you've
      corrupted your birth_certificate.egg... so don't fuck it up!

    - In addition to the birth certificate, the bot will now generate a
      very minimal quote file if none exists by the name provided in the
      egg-fu tcl.  It simply creates a few responses to tell you how old
      it is and what sex it is, just to get you started.

    - Added $age, $sex, and $birthday inline options. Explained in full
      detail in the How-to.

    - Changed 'nochange' command to 'freeze' -it just sounds better.

    - Added a minimal grammer checker, I'll be expanding on this little by
      little. If you have any suggestions of common slang or bad grammar
      that you'd like to see the bot automatically convert to proper
      english, please do let me know. I may eventually decide to use a
      grammar/spell checker object module, if ever one becomes available.

    - I noticed on commonly learned entries the dcc notice can get a bit
      lengthy, so from now on it only displays the last thing learned per
      entry, so it won't flood your dcc with "Learn:" notices.

    - Removed 'tag' and 'free' commands, which were never used and were
      just a waste of code as far as I can see. Especially considering you
      get the same effect from using 'lock/unlock' or 'forget' commands.

    - Added 'thaw' command. Obviously it thaws a frozen keyword.

    - Changed the way saying "no, blah is blah" works.  I noticed that
      although you needed access to 'forget' an entry, you didn't need any
      access to completely wipe and entry to change it, which is what
      "no," used to do.  Not a very good idea to allow just anyone to wipe
      out your entries on a whim.  So now "no," simply adds a new entry.
      In future versions there will probably be a better solution to this.

1.9 - Added <ctcp>

    - Fixed the $nick inline option to no longer return $botsnick

    - Cleaned up a lot of code! Everything runs more efficiently and a lot
      less bugs! ;)

    - Reworked the !command stuff, works better and more configurable.

    - Reworked the response matrix, making the bot much more talkative
      and stays pretty close to the subject.

1.8 - Taking a break from TCL for a couple days

1.7 - New Release! (first public egg-fu release)

    - Added <notice>, m00t!

1.6 - egg-fu now learns from 'misdirected' text (ie. "lamer: X is Y")

    - mDirect (above) is now optional.

    - Added optional !commands

    - Added more inline options (ie. 'lamer is $q1')

    - Fixed a bug in that was inexplicably deleting certain entries from
      the wordfile. ;)

1.5 - Fixed the randomizer bug that left extra whitespace in front of
      random responses ("x is a | b | c")

    - Fixed the HEX bug, egg-fu no longer effected when people set
      keyword responses to HEX values (potentialy dangerous security risk)

    - Changed IS ALSO additions format, instead of appending "and also
      Y" it now appends " | Y" making it a random response.

1.4 * EGG-FU is born from "Infoegg by www.zeen.co.uk"

