Eggdrop Tcl Archive

Home | Contact | Forum | Submit a Script

View All Information: Script Id244

Script Name: NotePod Version: 3.03 Author: Amadeus Script Date: 31/05/1999 Category: Info Scripts Downloads: 65 File Name: notepod303.zip Short Description: Advanced information storage/retrieval.

Extended Description File

## NotePod.tcl (c) 1998 by Amadeus - The Elite Scripting Team efNET #scripting
set NP_version "\002NotePod\002 3.02 by \002Amadeus\002" 
##############################################################################
##
## Credits
## Basic design by Einride, - The Elite Scripting Team
## Based on ideas picked from fluxlearn.tcl by Reflux and WDOG.MRC by Genesis
##
#
# NotePod is a channel definition script, similar in many respects to 
# explain and fluxlearn and others. It has many additional features however,
# including but not limited to:
#  - configurable channel triggers
#  - command specific access flags
#  - fallback to users channel status when user is not on bot
#  - only user who set a definition can replace it (except for master)
#  - only configured script_owners (defined in script config) can forget 
#    or replace defs LOCKED by any script_owner listed
#    lock is set by preceeding def with ":"
#    this supports multiple handles in $owner
#  - will not repeat a def within configurable number of mins.
#  - configurable usage limit (default is 5 defs in 3 mins) prevents
#    over-eager users from lagging the bot.
#  - puts non-users who try to use NotePod commands and those who exceed 
#    usage limit on ignore for configurable number of mins.
#  - special commands for masters
#  - command to replace a definition
#  - backup bot automatically takes over when primary leaves channel
#  - botnet commands to sync definitions for two bots
#  - configure once for both bots
#  - dcc commands to get various internal files
#  - dcc commands to show, learn, forget and replace definitions
#  - dcc and channel commands to do wildcard matches of nick and body of
#    definitions
#  - automatically sorts defs
#
#
## Channel commands:
#  command   trigger
#  
#  help     <configuable>    - user level specific help
#        trigger example "?? ??"
#
#  explain  <configurable>   - show a definition
#        trigger example "?? someword"
#
#  scan     <configurable>   - show definition matchs for a wildcard
#             - will match to word* in def name or body
#        trigger example "??? someword"
#
#  scannick    <configurable>   - show definition matches set by nick
#        trigger example "?!? somenick"        
#
#  scanbody    <configurable>   - show wildcard match in body of definitions
#               will match to *word* in body of def
#        trigger example "??! someword"
#
#  learn    <trigger>learn   - learn a new definition
#             - learn will strip tcl {}[] characters from
#             - definitions. 
#             - mIRC attributes and color codes may be used
#             - in body of def.
#        trigger example "?!learn someword and its definition"
#
#             - if def is set by a user listed in $script_owners and is
#               preceeded with a ":", this definiton may only be changed
#               by one of the $script_owners
#               (applies to forget and replace as well)
#
#  forget   <trigger>forget  - forget a definition
#        trigger example "!forget someword"
#
#  replace  <trigger>replace - replace a definition
#        trigger example "!replace someword with a new def"
#
#  Only the user who set a definition may replace or forget it.
#  The NP_Remove_any and NP_Replace_any variables define the level of
#  a user who can forget or replace ANY definiton. This is usually set
#  to M (master). 
#
#  whoset   <trigger>whoset  - show who set a definition
#        trigger example "!whoset someword"
#
#   As a configured NotePOD OWNER, (configuration option script_owners) 
#   you can LOCK a definition by prepending : (colon) when using the learn
#   or replace commands.
#   The following commands allow you to lock/unlock a pre-existing definition.
#   puthelp "PRIVMSG $nick :\00313$NP_trigger_Lockdef <def>\003 -
#            lock a current definition."
#   lockdef <word>
#   unlockdef <word>
#
## DCC +m commands:
#
#  
#    .np learn , forget, replace, whoset same as for channel commands
#
#    .np show      - dcc equivalent of explain, 
#            - this is raw mode showing whoset also
#    .np wshow     - dcc equivalent of scan
#    .np bshow     - dcc equivalent of scanbody
#    .np nshow     - dcc equivalent of scannick
#
#    .np getlist      - send definition list
#    .np gethist      - send definition change history
#    .np getsync      - send definition sync file
#
#    .np forcesync    - force def list sync on target bot
#    .np killsync     - delete pending def resync list
#
#    .np update    - update def list on target bot
#            - bot DCC sends list to target bot
#
#    .np move <sync|list> - install new synclist or deflist
#            - that was DCCed to bot by owner
#    .np sort      - sort the def list
#
#
## Definition Sorting:
#
# Definition list is sorted on restart, rehash and via dcc command. 
# A backup file is made.
#
#
## Definition Syncing:
#
# When operated on two bots, NotePOD tries to keep the definition files in
# sync on both. It accompishes this via the botnet link, issuing putbot 
# commands as required. 
#
# Both bots execute learn, replace & forget, but only the primary NotePod bot
# will reply to channel explain and scan commands. 
# When the primary goes offline/channel, the secondary takes over 
# public/msged replies. Both bots store all changes made in a sync file
# while the other is offline.
# If bots are linked but on split channels, def sync is done via botnet.
# When a bot relinks, the other will update it via the botnet.
# If synclist is greater that 1k, sync is not done and a note will be sent
# to the bot OWNER. IN this case, the owner must use the .np update command
# to update the other bot.
# If synclist is 51 bytes, this indicates bot has a default list and it 
# will automatically request, via the botnet, the current def list from the 
# other bot. A note will be sent to OWNER.
#
# Both bots MUST have x flag for each other, and you should have an inbound
# directory defined and created on each. They need to be botlinked also :)
#
# IF both go offline/channel, yer screwed, don't bug me.
#   Amadeus`
#
#############################################################################
#

Latest News

27 Dec 2018 Eggdrop v1.8.4 Stable Release 22 Dec 2018 Eggdrop v1.8.4 Release Candidate 3 15 Dec 2018 Eggdrop v1.8.4 Release Candidate 2 12 Dec 2018 Eggdrop v1.8.4 Release Candidate 1 04 Feb 2018 Eggdrop v1.8.3 Stable Release 13 Jan 2018 Eggdrop v1.8.3 Release Candidate 2

Resources

Eggdrop Community Forum Download Eggdrop Eggdrop Set-up Using your Eggdrop Enhancing Eggdrop Eggdrop Tcl Commands Eggdrop 1.8.3 Documents Eggdrop Config File Unix Shell Commands
Donate Help TclArchive.org with server costs. By donating, you help keep these scripts available to everyone. PayPal

© 2015 - 2023,  Greenwood Web Design