This Text file is old! In a 🏛️Museum, an unsorted archive of (user-)pages. (Saved from Geocities in Oct-2009. The archival story: oocities.org)
--------------------------------------- (To 🚫report any bad content: archivehelp @ gmail.com)
>

; Word Definer 2.1 (By Alcar)
;
; This is a word definer. It allows words to be given definitions in a 
; !addword (word or words)  format and gives definitions to
: words types in brackets in a channel. So !addword (life sucks) So do you!
; would result in the script replying So do you! Whenever anyone types
; (life sucks) in the channel or in msg whenever anyone except you types it.
;
; IMPORTANT: As this file makes a .txt for EVERY word defined, placing it in
; its own folder and loading it from their is advisable.
;
; Contact me (Alcar) at #Game1 on dal.net if you have problems or ideas to 
; improve it. Have fun :)

on *:LOAD:{ 
  echo -a $nick Thank you for loading the Word Definer Version 2.1 
  echo -a $nick Words are added by typing !addword (word or words) Definition. Then in a channel or msg you type (word or words) and the definition is shown
  echo -a $nick For example !addword (Sparkie) A good bot would result in the bot replying whenever with the text: a good bot when anyone types (Sparkie). The definer holds multiple defintions for words and reads them randomly.
  echo -a $nick IMPORTANT: Since the script creates a txt file for each word defined, putting this script in a folder of its own is advisable.
}

; Make the user level (right now 500) into whatever you want. This command 
; shuts the script down entirely via remotes and can be done by anyone you
; /auser $nick/address 500 to add them to the users section.
on 500:TEXT:!worddef off:#:{ .disable #worddef | msg $nick The word definer is now OFF }
on 500:TEXT:!worddef off:?:{ .disable #worddef | msg $nick The word definer is now OFF }
on 500:TEXT:!worddef on:#:{ .enable #worddef | msg $nick The word definer is now ON }
on 500:TEXT:!worddef on:?:{ .enable #worddef | msg $nick The word definer is now ON }

; This allows you to enable and disable the script yourself if not runing 
; it as a bot.
menu status,menubar,channel {
  Word Definer
  .worddef On: .enable #worddef | echo -a Notice: Word Definer was enabled.
  .worddef Off: .disable #worddef | echo -a Notice: Word Definer was disabled.
}

#worddef on

; This provides basic help to those who only type !addword.
on *:TEXT:!addword:*:{ msg $nick Add word using !addword (word or words to add) Definition. Multiple definitions of one worrd are allowed. To get a word, type (word or words) and the definer will give out the answer if it has one. }

; This stuff adds the word in a channel and tells the user it was added.
on *:TEXT:!addword (*) *:#:{ 
  set %word.total $2-
  set %word.length $len(%word.total)  
  set %word.pos $pos(%word.total,$chr(41),1) 
  set %word.num $calc(%word.length - %word.pos)
  set %word.add $left(%word.total,%word.pos)
  set %word.left $right(%word.total,%word.num)
  set %word.add.1 $remove(%word.add,$chr(40),$chr(41))
  set %word.add.2 $replace(%word.add.1,$chr(32),$chr(95))
  ; The if statement below is to prevent people from adding scripts to the
  ; the bot. You could change it to If (mode isin $2- ) if you wished.
  if (/ isin $2- ) { notice $nick I don't add definitions with / in them. | unset %word.* }
  else {
    write $scriptdir $+ %word.add.2 $+ .txt %word.left
    .notice $nick * $+ %word.add.1 $+ * was added. Thank you
    unset %word.*
  }
}

; Showing the word in channel.
on *:TEXT:(*):#:{ 
  set %word.remove $Remove($1-,$chr(40),$chr(41))
  set %word.long $replace(%word.remove,$chr(32),$chr(95))
  set %word.full %word.long $+ .txt
  set %word.check $scriptdir $+ %word.full
  set %word.checking $exists(%word.check)
  if (%word.checking == $true) {
    msg $chan $read $scriptdir [ $+ [ %word.full ] ] 
    unset %word.*  
  }
  else { unset %word.* }
}

; This stuff adds the word in msg and tells the user it was added.
on *:TEXT:!addword (*) *:?:{ 
  set %word.total $2-
  set %word.length $len(%word.total)  
  set %word.pos $pos(%word.total,$chr(41),1) 
  set %word.num $calc(%word.length - %word.pos)
  set %word.add $left(%word.total,%word.pos)
  set %word.left $right(%word.total,%word.num)
  set %word.add.1 $remove(%word.add,$chr(40),$chr(41))
  set %word.add.2 $replace(%word.add.1,$chr(32),$chr(95))
  if (/ isin $2- ) { notice $nick I don't add definitions with / in them. | unset %word.* }
  else {
    write $scriptdir $+ %word.add.2 $+ .txt %word.left
    .notice $nick * $+ %word.add.1 $+ * was added. Thank you
    unset %word.*
  }
}

; Showing the word in msg
on *:TEXT:(*):?:{ 
  set %word.remove $Remove($1-,$chr(40),$chr(41))
  set %word.long $replace(%word.remove,$chr(32),$chr(95))
  set %word.full %word.long $+ .txt
  set %word.check $scriptdir $+ %word.full
  set %word.checking $exists(%word.check)
  if (%word.checking == $true) {
    msg $nick $read $scriptdir [ $+ [ %word.full ] ] 
    unset %word.*  
  }
  else { unset %word.* }
}

; If you decide to limit the definer to one word, you can do it the easy way
; by changing the following lines:
;
; In the  on *:TEXT:!addword (*) *:#:{ 
; set %word.add $left(%word.total,%word.pos) 
; is there. add the next 3 lines under it.
;
; set %word.get $numtok(%word.add,32)
; if (%word.get == 1) { goto continue } else { unset %word.* | .notice $nick Sorry, only 1 word definitions are added. | halt }
; :continue
;
; then change 
; on *:TEXT:(*):#:{ 
; set %word.remove $Remove($1-,$chr(40),$chr(41))
;
; to:
; on *:TEXT:(*):#:{ 
; set %word.remove $Remove($1,$chr(40),$chr(41))
;
; Do this to the msg ones also and you will be set.

#worddef off

Text file Source (historic): geocities.com/kelkaran_2000


(to report bad content: archivehelp @ gmail)