This script is part of: Project Zipscript - Next Generation (www.pzs-ng.com) (Based on dZSbot by Dark0n3 - http://kotisivu.raketti.net/darkone/) -------------------------------------------------------------------------------- INDEX -------------------------------------------------------------------------------- 1. Installation a) Configuration b) Compiling c) Loading the sitebot 2. Themes a) Installation b) Bundled themes c) Special theme settings d) Customizing e) Submit your theme 3. Resources a) Links b) Bugs, comments and suggestions -------------------------------------------------------------------------------- 1. Installation -------------------------------------------------------------------------------- a) Configuration -------------------------------------------------------------------------------- - Copy the necessary files to your Eggdrop's directory: mkdir -p /path/to/eggdrop/pzs-ng/themes cp -R dZSbot.* plugins themes /path/to/eggdrop/pzs-ng/ - On a new install (not upgrade): cp dZSbot.conf.dist /path/to/eggdrop/pzs-ng/dZSbot.conf - Edit the configuration file (dZSbot.conf) to your liking. - If you want the bouncer checker, you must install a recent version of cURL. cURL supports secure FTP connections (AUTH TLS), this feature is only available if cURL is compiled with SSL support. Check cURL's version for more information. $ curl --version curl 7.12.3 (i386-portbld-freebsd4.11) libcurl/7.12.3 OpenSSL/0.9.7d zlib/1.1.4 Protocols: ftp gopher telnet dict ldap http file https ftps Features: IPv6 Largefile NTLM SSL libz - If "ftps" is not listed in protocols and "SSL" is not listed in features, you must disable the secure BNC option, (set bnc(SECURE) FALSE). Alternatively, you could recompile cURL with SSL support, it's your choice. -------------------------------------------------------------------------------- b) Compiling -------------------------------------------------------------------------------- - The "src" directory contains helper scripts used by dZSbot. These binaries compiled from root makefile. However, you can always compile them separately by issuing "make" and "make install" inside this the directory. glwho - An experimental Tcl extension for glftpd online stats. passchk - Used by !invite to authenticate users (requires OpenSSL headers). showlog - Displays the latest entries in the dirlog and nukelog for external scripts (used by dZSbot for !new/!search/!nukes/!unnukes). - The "extra" directory contains helper scripts to be used with the sitebot. fakelog.sh - Use this to simulate log entries. incomplete-list.sh The bot can show a list of incompletes for each section defined in the actual script. (remember to edit sections) invite.sh - This is used with custom command "site invite". Add the following to glftpd.conf: site_cmd INVITE EXEC /bin/invite.sh custom-invite !8 * top.tcl - Display the weekly top uploaders. Add the following to eggdrop.conf: source scripts/top.tcl - The "plugins" directory contains useful plug-ins for dZSbot. Refer to plugins/README for more information. -------------------------------------------------------------------------------- c) Loading the sitebot -------------------------------------------------------------------------------- - Eggdrop must be linked against Tcl v8.4 (or newer). dZSbot uses certain functions which are not present in previous versions of Tcl. - Load dZSbot as you would load any Eggdrop script, by adding the following line to your eggdrop.conf: source pzs-ng/dZSbot.tcl - Rehash or restart your Eggdrop for the changes to take effect. - When updating dZSbot to a newer revision, refer to the sitebot/UPDATING file. -------------------------------------------------------------------------------- 2. Themes -------------------------------------------------------------------------------- a) Installation -------------------------------------------------------------------------------- - To install a theme - all you need to do is edit dZSbot.conf and change a line: set announce(THEMEFILE) "yourtheme.zst" - dZSbot will look for the theme in its own path by default. However, you may specify the full path if you prefer. -------------------------------------------------------------------------------- b) Bundled themes -------------------------------------------------------------------------------- - The following themes are bundled with pzs-ng: default.zst - This is not an attractive theme, nor is it meant to be. This theme should be used a reference when creating a new theme or updating your existing one. classic.zst - A simple theme, based on the original dZSbot and project-zs look. dakrer.zst - Similar to default.zst but with less output and a (small) splash of colors. See theme for additional info. Created and maintained by dakrer. vampire.zst - juanker's colorful theme. psxc.zst - psxc's go at a theme. Minimalistic, with minimal colors. -------------------------------------------------------------------------------- c) Special theme settings -------------------------------------------------------------------------------- - Some theme settings may seem unusual, one in particular is the *_LOOP# variables seen in the script. - Some announce events format the output for several users; like the nukees during NUKE and UNNUKE, and the user top when a race completes. - In order to customize such an announce, we have to format each user or group individually. This is accomplished through the %loop# variables in the theme, which will be replaced with the corresponding _LOOP# theme. -------------------------------------------------------------------------------- d) Customizing -------------------------------------------------------------------------------- - Feel free to edit and customize any of the bundled themes, but it is advised to create a copy of it first. For example: "cp default.zst mytheme.zst" - You can preview your theme while editing it, using the .preview DCC command added in 1.0 beta5. Type .preview in a DCC chat session with your Eggdrop for more information. - Using colors is fairly simple in dZSbot. Simply define a color in the theme: COLOR1 = "04" .. COLOR3 = "07" - The color can be referenced in the theme file by doing: announce.SOMETHING = "[%c3{%section}] %c2{Something happened} in %c1{%pf}" - Color table: 00 - White 08 - Yellow 01 - Black 09 - Light green 02 - Blue 10 - Cyan 03 - Green 11 - Light cyan 04 - Light red 12 - Light blue 05 - Red 13 - Light magenta 06 - Magenta (purple) 14 - Gray 07 - Orange (dark yellow) 15 - Light gray - NOTE: dZSbot only supports 3 user defined colors per theme. - Starting with 1.0 beta4 of pzs-ng, you can define custom colors for each section. To use this feature, this you must define colors in the theme for the specific section. The section name must be the exact same as the one defined in dZSbot.conf, and you must define the same number of section colors as in your default scheme. - If you have 3 default colors (COLOR1, COLOR2, and COLOR3), then if you want a custom color scheme for your GAMES section you need to add the following to your theme file: COLOR_GAMES_1 = "ww" COLOR_GAMES_2 = "xx" COLOR_GAMES_3 = "yy" - Another new addition to pzs-ng 1.0 beta4 is the ability to add padding/justifying control codes to the theme. You can select left or right justification, and the number of spaces to pad the string to. %r = right-justified text, %l = left- justified text, %m = centered text. In theme Output -------- ------ XtestX XtestX X%l9{test}X Xtest X X%r9{test}X X testX X%m9{test}X X test X -------------------------------------------------------------------------------- e) Submit your theme -------------------------------------------------------------------------------- If you created your own theme and wish to share it with the public, please submit it. Upload via FTP - ftp://pzs-ng.ftpd.gl/pub/upload/themes/ Upload via HTTP - http://bugs.pzs-ng.com -------------------------------------------------------------------------------- 3. Resources -------------------------------------------------------------------------------- a) Links -------------------------------------------------------------------------------- http://www.pzs-ng.com Main page for pzs-ng http://www.tcl.tk Main page for Tcl http://www.eggheads.org Main page for Eggdrop http://www.egghelp.org Add-ons for Eggdrop http://mircryption.sourceforge.net FiSH encryption -------------------------------------------------------------------------------- b) Bugs, comments and suggestions -------------------------------------------------------------------------------- Bug tracker: http://bugs.pzs-ng.com IRC channel: #pzs-ng on the EFnet network