02-02-2009, 07:18 PM
![[Image: nuwani.jpg]](http://peter.sh/nuwani.jpg)
Nuwani first connected to an IRC Server back in 2006, using the Delvor IRC Framework. In the following two years, we wrote various new modules for it, added features to the framework itself and even rewrote large parts of it. However, while the bot was running more and more smoothly, the code became a huge mess filled with hacks and dirty set-ups. Perhaps the worst of all was that there was no documentation available at all.
A new project
Because of these problems, we decided to rewrite the entire system to fulfil our needs exactly. Seeing the Delvor Framework was used in various other bots we used, for purposes ranging from collecting statistics to outputting in-game chat from various games, a modular setup was absolutely mandatory. Next to that, documentation was required and speed- and efficiency had to be kept in mind.
These requirements led to the release of the very first beta version of Nuwani 2.0, a bot which already worked fine, yet still lacked a number of features. Development kept going, and after the first Release Candidate it was added on Google Code. In the future Nuwani will be developed into a proper, totally modular and super-efficient IRC Platform with a range of modules enabling it to be used under any circumstances. In the near future however, our primary focus will be compatibility over multiple operating-systems and IRC Deamons.
Features
The Nuwani core currently has the following features implemented. For more information about the features the modules implement, please check out the Modules overview.
- Fully modular set-up utilizing some of PHP 5.3's new features.
- Well documented code, online in the wiki as well as in the source itself.
- Cross-platform compatibility, as well as on various IRC Servers.
- Delivered with various pre-created modules allowing it to be set-up in no time.
- Automated channel-tracking and a redundant keep-alive ping/notice system.
- Automated load balancing over various servers of an IRC Network.
- A Bot Manager all bots automatically register with, so no "lost bots".
- Dynamic retrieving of Bot Groups using a parameter-based array syntax.
- Implements a security-provider system for advanced right management.
- Implements ArrayAccess and iterators on various classes.
- An advanced, automated- and callback based Timer system.
- Compatible with the Runkit Package for dynamic module-reloading.
- Module callback prioritization with almost no loss in performance.
- Call forwarding allowing any module to add new callbacks.
Mind that knowledge of PHP (5.3) is required, and that PHP 5.3 (at least beta 1) is available on your server/computer as well. You can get the code on http://nuwani.googlecode.com
![[Image: signature.png]](https://sa-mp.nl/ext/3/10435/signature.png)
![[Image: 2ccl6vs.jpg]](http://i48.tinypic.com/2ccl6vs.jpg)