27-Jan-1990 PUZZ 1.0 ======== Have you ever played with one of those little plastic '15' puzzles; the ones that have 15 sliding tiles arranged in a four by four grid, with the sixteenth square missing? '15 puzzles' are only the most basic of the sliding block family of puzzles. The more difficult puzzles have pieces of different sizes, 'L' shaped pieces and so on. Some of them take many hours to solve, and require hundreds of moves to finish. PUZZ brings sliding block puzzles to your Amiga. There are already many block puzzles for the Amiga, and some of them (e.g. 'GOLD' by David Cole) are very good. The difference with PUZZ, is that it is not just one puzzle, rather it is a puzzle system, which can run an infinite number of different puzzles. Some puzzles, for use with PUZZ, are included in this archive. '15.puzzle' is easy, and you should try this one to get used to PUZZ. From the Workbench, click on the 15.puzzle icon, or from the CLI use the command: PUZZ 15.puzzle When you've finished 15.puzzle, have a go at rabbit.puzzle or some of the others. I intend to construct many more puzzles for use with PUZZ, so keep a look out for them on your local bulletin board. Some of them will be fiendishly difficult! It is also very easy to make your own puzzles. First, you use a paint package, such as Deluxe Paint, to draw the puzzle. Then, you write a small text file, which specifies the number of blocks in the puzzle, and their position etc. You join the two together, and Bingo! a new puzzle. If you want to make your own puzzles, the format of the text file is specified at the end of this read.me file. If you do make any good puzzles, please upload them onto bulletin boards for the benefit of others, or send them to me on a disk. If you like PUZZ, and use it for more than a few hours, perhaps you would consider sending me a donation? If you also send me a disk, with reply-paid packaging, I will send you the latest version off PUZZ, and a disk full of puzzles and other programs I've written. I will include the source code (C) for some programs if you ask for it. Please feel free to distibute PUZZ to your friends, post it on bulletin boards etc. The only restrictions are these:- 1. This document must be distributed with the program. 2. Nobody should make a profit by distributing PUZZ. A small charge to cover administration is O.K. 3. On NO account must PUZZ be distributed by Amiga Format Magazine, or any of their employees or associates. The reason I impose this restriction, is that I once sent a disk to Amiga Format, complete with reply paid envelope etc. Despite writing to them four times over a four month period, they have never returned my disk, nor even acknowledged my letters. How to create your own puzzle ============================= Draw your puzzle and save it in ILBM format (most paint packages do this anyway). The picture can be any size, and you can use Hold-and-Modify paint programs if you wish. Let's assume you've saved the picture as 'puzzle.pic'. Use a text editor, such as MEmacs or whatever to create a small text file. The format is as follows:- PUZZ 1.0 Make the blocks read 'RATE; YOUR MIND PAL'. To move ; a block, point at it, and ; Instructions: click left mouse button. ; 6 lines of 26 characters ; Clue: Swap 4 blocks not 2.; 4 4 1, 9, 3, 4 5, 6, 7, 4 8,13,11, 0 12,14,2,10 1, 2, 3, 4 5, 6, 7, 4 8, 9,10,11 12,13,14,0 21 22 40 40 2 14 2 31 0 **ILBM**; last line of file. You can append comments to any line of the file, by preceding them with a semi colon. The FIRST line of the file must read PUZZ 1.0 1.0 is the minimum required version of PUZZ to run the puzzle. This is for future compatability. Next follows six lines of puzzle instuctions. The following two lines specify the width and height of the puzzle in blocks (i.e. 4 * 4 for the 15.puzzle). Next follows lines of starting position (in this example height is 4. Each line must contain items, seperated by commas. Use 0 for any empty squares. Use 255 for any squares that can never be moved. Similarly the next lines are the required finishing position. Use zeros for any "don't care" positions. The next two lines specify the X and Y coordinates of the top left hand corner, of the top left hand square. The units for these values are pixels. The following two lines give a squares width and height in pixels. The next line controls how blocks slide. '0' makes blocks move just one square. '1' keeps them sliding till they can't move any further. '2' allows several blocks to be pushed along with a single move. The next four lines control how and where the number of moves is displayed. The order is X, Y, Pen colour, Paper colour. If X and Y are zero, the score is not displayed. The last line of the file must read **ILBM** (optionaly with a comment). When you type in the last line, press carriage return, to terminate it, but make sure you don't have any blank lines trailing after the **ILBM**. Let's assume you've saved the text file as 'puzzle.text'. Now join the .text and the .pic files together, to create the .puzzle file. You can use the AmigaDos 'Join' command for this. For example, to create 'my.puzzle': join puzzle.text puzzle.pic as my.puzzle Now you are ready to try the puzzle!: PUZZ my.puzzle You can knock up an icon for your puzzle if you want to run it from the workbench. Use 'Info' to make PUZZ the default tool for the icon. Good luck and happy PUZZleing! Martin Round. 17, Naseby Drive, Halesowen, West Mids. B63 1HJ England. You can contact me on the following British Amiga Bulletin boards:- Plug 'Ole 021-472-0256 AMLINK 021-778-5868 MABBS 021-444-8972 Short Circuit 0273-462967 MAX 0905-754127 That's all folks!