SayHelp screen 7: Writing your own filter.   [Part one, the main bit]
A filter is a MUF program whose transaction looks like this:
       ( +/-n db <ch> message -- +/-n db <ch> changed-message 0/2/4/6 )
    or ( +/-n db <ch> message -- +/-n me_notify others_notify 1 )
 'n'  is your place in the filterlist. (-ve means re-calling. See below.)
 'db' is a relevant DBref.
 <ch> is the macro character, except ' '(space) becomes sp, ':' ->co, '/' ->sl,
 'message' is the player's speech.         default ->def and environment ->here
Return Bits: 0 (=1)  Abort filtering and say to display notify messages if set.
('OR' these  1 (=2)  Request a filterlist re-call after speech printed.
  together)  2 (=4)  No more filters run after this, but allow bit1 re-calling.
Bit 2 is mainly documented for compleatness. Users would normally fadd Halt.
Filter properties should be on db and of the form '_say/<ch>/n/whatever', with
 '/n/' signless (positive). ('n' -ve signals an ongoing re-call situation).
 Normal filters must treat re-calls as normal calls.
sayhelp 5:rooms/envs  6:puppets  7,8,9:filter-writing  10:$verb  11:boringadmin