When the game has started, you'll be presented with the game grid. Each spot on the grid can hold one piece of plumbing. Initially, they are all empty (marked with an X) except one place which has a starting section of pipe. On the right edge of the window is a queue of pipe sections.
To place a section of pipe, just click on an empty spot in the game grid. The bottommost section in the queue will be placed on the spot you select, and the queue will shift down.
You may also place a section of pipe on top of an already existing piece. The piece will be replaced, but the replacement operation takes some time, and it costs you points. You may not replace the starting section of pipe or any section that has flow in it.
After an initial delay (which is indicated as a countdown on the bottom of the window), the flow will begin. It starts in the starting section of pipe and flows through adjacent pieces. (It always flows straight through the cross-shaped pieces.) The "Needs" display on the bottom of the window indicates how many more sections you must flow through to survive the level. The level ends when the flow has no place to go. The game ends when you end the level and the "Needs" display is positive.
At any point in the level, you may press the 'F' key (or hit the right mouse button), and the flow will go much faster. You will not be allowed to place any more pieces, but scoring will increase.
You receive 100 points for each section of pipe that the flow goes through. You receive 500 points each time the flow crosses itself in a cross-shaped piece. You lose 100 points each time you replace a piece. And, at the end of the level, you lose 100 points for each piece that was placed that does not have flow going through it.
After making the flow go fast (by pressing 'F' or the right mouse button), scoring will double. That is, you'll receive 200 points for each section of pipe the flow goes through, and 1000 points each time it crosses itself. You still only lose 100 points for each piece placed without flow through it.
At any point, you may pause the screen by hitting 'P'. You may quit the game entirely at any time by hitting 'Q'.
Needs an icon.
Needs color support.
Does not look at any resources at all. That is, your .Xdefaults file will be ignored.
When you iconify it, it should automatically pause.
Could use some tuning.
Lots of the code is horrid.
The high-score code is truly horrendous. If you have a good high-score library (which is fast, handles locking, and keeps the same information I keep), I'd love to get a copy to merge in.
Copyright 1990 Digital Equipment Corporation
Permission to use, copy, modify, and distribute this software and its documentation for any purpose and without fee is hereby granted, provided that the above copyright notice appear in all copies and that both that copyright notice and this permission notice appear in supporting documentation, and that the name of Digital Equipment Corporation not be used in advertising or publicity pertaining to distribution of the software without specific, written prior permission. Digital Equipment Corporation makes no representations about the suitability of this software for any purpose. It is provided "as is" without express or implied warranty.
DIGITAL EQUIPMENT CORPORATION DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL DIGITAL EQUIPMENT CORPORATION BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
Terry Weissman
Western Software Laboratory
Digital Equipment Corporation
weissman@wsl.dec.com