My original .NET chat-bot was written over three years ago and was based upon the AIML specifications. It was also my first project in C# and became a vehicle for me to learn about the .NET platform.
Although many people found it useful (it has been downloaded many thousands of times from this website) it was slow, not completely reliable and lacking in features.
Now that I have extensive experience and knowledge of .NET, I have re-written this project from scratch to implement several modifications and improvements. These are:
- Better cross-platform compatibility. Support for .NET 1.1, 2.0 and XNA as well as the open source MONO project (tested under version 1.1). Testing on Windows Vista with version 3.0 of the .NET platform is pending.
- A completely new modular architecture to make it easier for developers to extend and add functionality.
- A simpler and more logical API.
- Standards compliant AIML support with the option for custom tags.
- Very small size (currently only 52k).
- Very fast (over 30,000 categories processed in under a second).
- Inclusion of a comprehensive test suite including over 200 unit tests (based upon nUnit).
- A means of saving the bot's "brain" as a binary file (Graphmaster.dat).
- Some simple code snippets and examples for developers to get started (simple windows and console based applications as well as a sample custom tags library).
- Appropriately commented code.
- Comprehensive documentation.
The project now has a home on Sourceforge (the open source development site) that provides bug tracking, documentation, mailing lists, public forums, source control (subversion), file space and project management capabilities (among other things).
Downloads, documentation, help and advice on implementing and using the library in your own projects can be found at the Sourceforge project page: