WordSearch
  Copyright 1992 by Gene A. LeDuc, All rights reserved

  This program may be freely distributed and used without charge.

What's it do?
  This program takes as input a list of words and produces a scrambled
  words puzzle.

Will it work?
  This program doesn't do anything that harms my system.  It probably won't
  harm yours.  If it does, that's your problem, not mine.  By using this
  program, you assume all risks.  If you don't like these terms, don't use
  the stupid program!  The author will assume absolutely no responsibility
  for anything that happens to you, your computer, your house, your pets,
  or anything else as a result of your use of this program.  If something
  bad happens, I'd like to know about it so I can possibly put something
  in the program to keep it from happening again.

Where does the input come from?
  Input comes from the keyboard or a text file specified by the user or a
  combination of both.  Words can be deleted or edited after they've been
  entered.  Case is preserved for printing in the search list, but is not
  significant in the puzzle generation; puzzles are all uppercase.

How's it work?
  The words are placed into a matrix and then the remaining spaces in the
  matrix are filled with random letters.

Are there different skill levels?
  There is a primitive "degree of difficulty" function that simply allows
  more word orientations at higher levels.  For instance, at the easiest
  level, all words are put into the matrix reading left ot right on single
  lines.  As the degree gets harder, the words may go vertical, diagonal,
  and reverse.

Can I see the puzzle before I print it?
  The program allows the user to preview a solution before printing the
  puzzle.  If the user wants a different solution, he can specify another
  try.

What if I want to send the puzzle to a file?
  Output can be directed to the screen, printer, or a file (wordsrch.out).
  The user decides whether or not the solution is to be printed.

Can I recreate a specific puzzle?
  Each puzzle is displayed with the degree of difficulty and the random
  seed used to generate the puzzle.  A puzzle can be duplicated at a later
  time by entering the random seed as a parameter on the command line.  For
  instance, to generate a puzzle using -2356433 as the random seed, the
  command line would be: "WORDSRCH -2356433".  Of course, the puzzle
  dimensions, degree of difficulty, and word list must be the same.

Known bugs.
    1. There is no checking to see if there are duplicate occurrences of
  words within the puzzle after the words are placed in the matrix.  Should
  be fairly trivial to implement, but I didn't think the risks of it
  happening justified the expense of writing the code.
    2. Words are not guaranteed to have exclusive solutions.  In english,
  this means that the word AT could be placed entirely in the word CHATTER
  if the random positioning routine puts it there.  It is most likely that
  this won't happen, but it is possible.  In this instance, the word CHATTER
  would be the solution for both CHATTER and AT.  Same argument about risk
  of happening vice the expense of code.
    3. Woe be unto you if the printer is offline or otherwise not
  available when the program wants to print.  I just didn't feel like
  putting the effort into figuring out how to check the printer's status
  before printing.
    4. Output file is preset (wordsrch.out) and can't be changed.
    5. Program writes over output file without warning if one already exists.
    6. Documentation isn't pretty.

Great, anything else?
  Other bug reports, comments, or critiques to:
    leduc@nprdc.navy.mil     (internet)
    "Gene LeDuc" at "1:202/302.6"    (fidonet, leave out the quotes)

Version history, as if you cared
  1.0 - First working version.
  1.1 - First version distributed to public.
        Added simple "degree of difficulty" option for varied audiences.
  1.2 - Added simple printer check to see if printer responding before
        trying to write to it.

