Super Break-Out by Mark Overmars 0. Introduction Many different type of Break-Out like games exist for the Atari ST, so why yet another one. Well, there are a number of reasons. First of all because all the existing games are missing something. They all have some great ideas but are lacking others. Secondly, because most games work on colour monitors only. This one will work on a monochrome monitor (only). Thirdly because it is fun to write something like this. But the main reason is that this one is special. It contains most of the good ideas of the existing games and many new features. Just to mention a few things: There are over 40 different types of stones, all with special features. There are many different types of bonusses, many types of monsters, 5 basically different types of levels, etc. Of course, you won't encounter all these things at the first levels. On later levels new things appear that you did not see before. To avoid geting bored Super Break- Out allows you to continue on the level you got killed. So you don't have to start from the beginning. Some other nice features include good score files, the program remembers its players and knows what your current status is, level files that can easily be changed, added, etc. For this a special level editor is provided with the program.New levels files might be provided in the future for the advanced players. 1. Your disk The disk should contain the following files: SBREAK.PRG : The program SBREAK.DOC : This documentation in 1STWord format SBREAK.TXT : This documentation in readable form BACKPICT.ART : The background picture SPRITES.ART : The bitmaps for the sprites SBREAK.SND : The sounds file LEVELS02 : The first set of levels LEVELS03 : The second set of levels etc. In a folder LEVELED you should find the following files: EDITOR.PRG : The level editor EDIT.RSC : The resource file for the editor SPRITES2.ART : The sprites for the editor When playing a file SBREAK.SCR for the scores will appear and also files ?????.SBR that contain information about players. Don't keep your disk write-protected when playing otherwise no information can be stored. Better first make a back-up copy of the disk. 2. Playing Simply click the SBREAK.PRG icon on the desktop. Type in your name when asked (Super Break-Out will remember you) and you can start. The goal, as you probably know, is to hit away all the stones with the ball. During the game the left mouse button normally does a lot of important things like e.g. releasing the ball, shooting bullets, etc. Sometimes little bonusses fall down. They tend to help you by such things as slowing down the ball, turning your bat into a machine gun, giving an extra life, etc. When you catch them with the bat the feature will start. Bonusses are indicated with a letter. The following types of different bonusses exist: A: Gives you an Automatic moving bat. Press the left mouse button to continue doing it yourself. B: Gives you a lot of Bonus points. D: Gives a Destructive ball that kills all stones. E: Gives you an Extra life (bat). G: Your bat becomes a Gun. It can shoot bullets with your left mouse button. Two different types of bullets exist. H: Your bat will now Hold the balls. Release them with the left mouse button. K: This Kills all the monsters. L: Your bat will become Long. N: You can pass to the Next level by shooting a ball into the exit stone that appears. R: This Removes all stones of the type you hit next. S: This Slows down the balls. T: Gives you Three balls that reappear when lost. W: Build a Wall of stones to keep the ball high up. Should be great when the ball is at the top of the field but a disaster when it is near the bat. 2: Gives you two extra balls. 5: Gives you five extra balls. ?: A surprise. Can be very good but also bad. Do you take the risk? Of course also nasty things happen, like bombs falling down. But don't worry. They only appear on higher levels. Also some monsters run around. They are reasonably harmless but change the direction of the ball when hit. (But beware of the nasties deeper in the game.) High scores and special LIFE stones will give extra bats. After you killed all your bats you are given the choice to either continue at the last level, start new at the beginning or quit. When you indicate to continue, the game will start again at a level just before the one on which you where. To get anywhere further you will have to get through at least three levels in one go. The higher you start, the more points you can get. The score is computed as follows: 100 for every normal stone hit, 2500 for completing the level, 400 for each bonus caught and 100 for each monster destroyed. After completing a level the score for that level is increased by a percentage depending on the level. Hence, the higher the level, the more point you can obtain for each level. The following keys are important: q: Quit the game. k: kill your bat (useful when you locked yourself up). r: restart the level (useful when the level locks up). N: Continue on the next level. This costs you 2 lives and is only useful when you don't manage some particular level at all. p: pause the game. Any key continues. b: Changes the speed of the bat. s: Toggles sound on off. f: Saves the current situation such that you can continue playing later. The game will be saved under your current name. To continue later simply start SBREAK and type in your name. space: Will give you an empty screen such that nobody will see what you are doing. Any character continues. 3. The Level Editor With Super Break-Out I have provided a simple interactive Level Editor. You will find it in the folder LEVELED. One thing I will state immediately: IT DOES NOT CHECK FOR ERRORS. So if you fill in impossible data, it just leaves it in. Before starting using it, take care that you have a copy of this documentation, in particular the next chapter, on paper in fromt of you. To start the Level Editor simply double click EDITOR.PRG. After some loading you will see the so-called manager. In this you can load in a file of levels (using the Load button) or save the levels you created or changed. On the left you see the names of the (at most) 40 different levels in the file. One of them will be selected. Above the buttons there is another possible level, called the buffer. The buffer is used for changing the order of levels in the file. You can copy levels to and from the buffer and exchange levels with the buffer. You can also insert the buffer above the selected level or delete a level. For example, to move the first level to the end select the first level, press Copy To Buffer, press Delete, select the last level and press Copy From Buffer. Play a bit with this moving and copying stuff until you are familiar with it. To change a level, first select it. (You can also select the buffer to change it. Note that the buffer won't be saved on disk, so after changing it you have to copy ot to some place in the level file.) Now there are two things you can change: The settings and the field. The field contains the information about the position of the stones. The settings contain such things as type of monsters, speed of the ball, etc. To change the settings press the cooresponding button. Het you can fill in the name of the level and the different settings. Refer to section 4 for their meaning. Take care that they are in the given bounds. The name should contain something. An empty name is considered by the editor as a non-existing level and is not saved on disk. Press OK to actually change the settings. Press Cancel if you made a big mistake. To change the field press the button Edit Field. You will see a screen consisting of two parts. On the left there is the current field description of the level. On the right are all the different stones in three vertical rows. (Refer to section 4 for the meaning of the stones.) Some stones will look slightly different as in the game to make it possible to distinguish them (in particular the invisible stones are made visible). On the left bottom of the field the current stone is indicated. This is the stone type you can place on the field. To change it, simply point your mouse to the stone you want (at the right) and press a mouse button. To place a stone in the field point your mouse to the position and press the left mouse button. To erase a stone on the field, point and press the right mouse button. That is all there is to know. Well, one more thing. How to return to the manager. This is done in a very user-unfriendly way. Simply move your mouse to the far left of the screen and press a button will do the trick. Finally there are a few more buttons. Clear clears the selected level, Clear All does ... (guess what). Help gives you some basic information. Quit finally stops the program. Make sure that you saved your file before pressing Quit. No escapes are provided. The best way to create and test your own levels is to put them in a file LEVEL01. (Note that such a file does not exist. The files on disk start with LEVELS01.) Now when you start SBREAK it will first give you your own newly created levels. If you really want to do difficult things, e.g., getting levels from one file and putting them in the other, you can also use a simple editor. See section 4 on what a level file look like. Please create a few levels yourself and send them to me. I will collect all levels design and provide them later on a level disk. 4. Internals This section is going to describe a number of internal aspects of Super Break-Out. This information is neccessary for those who want to design their own levels but should preferably not be read by people that want to have most fun in the game. Surprise is always nicer. 4.1. Bitmaps and Background Both the background and the bitmaps of all the sprites are simple drawings, created with the great Public Domain program Artist. You can easily edit them. Realise that the program "knows" the sizes of the different objects. Hence you should take care that sizes remain the same. For example, if you make the bat a bit larger, the ball will simply pass through the extra part. Also take care that the order of the bitmaps remains the same. Always first make a copy of the old files. 4.2. Sounds The sounds that you hear when e.g. the ball hits a stone are described in the file SBREAK.SND and can be altered. There are 12 different types of sound. Each sound is described on one line. It consists of a series of numbers. This row of numbers is passed to the sounds demon when the sound is required using the XBIOS command DoSound. Number are given in Hexadecimal and should end with the letter H. Each row should end with the number FF00H. The following 12 sounds are in the file: 1: Ball hits wall 2: Ball hits bat 3: Ball or bat hits a monster 4: A normal stone is hit by the ball or a bullet 5: An undestructable stone is hit 6: A super stone is hit (stone type Y or Z) 7: A teleporter stone is hit (type a or p) 8: An exploding stone is hit (type U) 9: The bat gets destroyed 10: Starting a new level 11: An extra life is obtained 12: A bomb hits the bat 4.3. Stones Super Break-Out knows a large number of different stones. Most stones have their own special features. Stone types are indicated by letters. Below follows a description of all stone types. Stones indicated with a star (*) must be destroyed to finish the level. The others not. . Empty position. A * Normal stone. B-J * Normal stones with different grey scales. Can be used for making nice looking pictures. K * Looks like P but must be destroyed. L * Invisible but must be hit. M * Needs two hits. N * Needs three hits. O * Needs four hits. P Undestructable. Q * Can be hit only from above, otherwise just bounces. R * Can be hit only from below. S Lets balls pass from top to bottom only. T Lets balls pass from bottom to top only. U * Explodes and destroys all stones around it. V Undestructable but moves up when hit from below. W Undestructable but moves down when hit from above. X Undestructable but moves when hit. Y Removes all stones of type A. Z Removes all stones of type P. a Teleports the ball to another teleporting stone. b * Like A but moves horizontally. c Like P but moves horizontally. d Like a but moves horizontally. e Can be destroyed but this is not neccessary. f Lets balls pass sometimes and sometimes not. g Needs three hits. Reappears after some time. h Needs two hits and reappears after some time. i Creates stones of type e to the left and to the right. j Creates stones of type A on both sides. k Creates stones of type P on both sides. l * Creates a bomb when destroyed. m * Like A but moves vertically. n Like P but moves vertically. o * Creates a nasty bomb that goes towards the bat. p * Moves the ball to some arbitrary position (and disappears). q Kills the ball. Should not be hit. r Gives an extra life. s Exit to next level. t Invisible and undestructable. u Undestructable, creates a bomb when hit. v * Requires a random number of hits (average is 5). w * Transforms into an arbitrary other stone when hit. x Undestructable, moves to somewhere else when hit y * Jumps around randomly z Undestructable, jumps around randomly When designing levels please follow the following rules. Don't use too many different types of stones. Don't use more than 20 moving stones. Take care that the level cannot lock itself. Although this might be a 'feature' of later levels. Note that the user is always given the possibility to kill himself (when he gets locked up) or redo the level (when the level gets locked up). 4.4. Bats Super Break-Out knows five different types of games, depending on the type of bats choosen: 1 Normal game with one fixed bat at the bottom. 2 One bat but it can be moved also in the y-direction. 3 Two bats, one at the top and one at the bottom. 4 One bat that gradually moves up, making things harder. 5 Two bats that both gradually move to the center. 4.5. Monsters Monsters are described by two numbers in the level files: the type and their number. The following types exist: 0: No monsters 1: Simple moving thing. Can pass through stones. Changes direction of the ball a bit when hit. 2: Same but cannot pass through stones. 3: Spaceship that kills the bat when it hits it. Cannot be destroyed. 4: Spaceship that flies around and changes the direction of the ball. It cannot be destroyed. 5: A jumping ball that cannot be destroyed but disappears at the bottom. 6: Like 1 but does not influence balls (only useful for throwing bombs). 7: Like 2 but does not influence balls. The number of monsters must lie between 0 and 6. 4.6. Bombs Bombs are thrown down by monsters and by some stones. There are two types of bombs, bombs that simply fall down and bombs that move towards the bat. Bomb can also be distinguished by their effect when they hit the bat. The following effects exist: 0: Kills the bat (i.e. it costs you a life) 1: Make the bat invisible for some time 2: Freezes the bat for some time 3: Removes all special features 4: Reduces the score by 1000 points 5: makes the balls invisible for some time 6: increases the ball speed The type of effect is indicated in the LEVELS files and can be different for each level. Whether monsters throw bombs and how often is also indicated in the LEVELS files by giving a bomb chance. When this is 0 there are no bombs. When it is between 1 and 5 the bombs fall straight down. Their number increases. When the chance is between 6 and 9 the bombs move towards the bat. Note that the number of bombs also depends on the number of monsters. 4.7. The LEVELS files Super Break-Out reads the levels from files called LEVELSxx, where xx is some two digit number, that should be in the same directory as the program. These files can be changed using the provided Level Editor. But, as they are simple ASCII files they can also be changed with any editor. Hence, it is easy to add levels, remove levels or change levels, merge files, etc. Each file can contain up to 100 levels but, as the Level Editor can only handle at most 40 levels, it is better to limit the number of levels per file to 40. Not all files need to be present. The program simply starts with the lowest numbered file and when all levels in that file have been solved it goes to the next file it can find etc. Each level starts with a * on the first position of an input line (but don't use the sign for anything else). Everything before the first * is skipped. The rest of the line with the * is also skipped and, hence, can contain info about the level. The next line should contain the name of the level (maximal 16 characters). The next line contains a number of digits that indicate the type of play. The following digits should be there: - The type of bats (1-5) - The type of monsters (0-9) - The number of monsters (0-6) - The bonus chance (the higher the more bonusses) (0-9) - The start speed (0-9) - The maximum speed (0-9) - The speed increase (the higher the longer it takes) (0-9) - The type of bombs (0-6) - The bomb chance (0=never,9=very often) (0-9) - If 1 the level restores itself when you get killed. 2 means the end of the last level file (0-2) - Reserved for later use (0) The basic (easy) setting should be something like 10041640000. After the last level in the last file put a level with setting 10000000020. On the next line the description of the stones in the level starts. Note that there are at most 20 lines each of at most 11 stones. Stones are indicated by letters, empty places by a dot. Each line of stones must be on a separate line of text. If the rest of a line is empty it can be ommitted. If the next lines are empty they can be ommitted as well. Finally, after all levels, the next line should start with a # indicating that this is the end of the file. Any text after that is skipped. The following is an example of a level file with two levels: This is a level file. * The first easy level Easy Starter 10070460000 .. .. NNNNNNNNNNN AAAAAAAAAAA AAAAAAAAAAA AAAAAAAAAAA AAAAAAAAAAA AAAAAAAAAAA * The second, difficult level Two Bat Terror 30062840000 .. .. .. .. .. .. .PPPPPPPPP. .AAAAAAAAA. .AAAAAAAAA. ........... .AAAAAAAAA. .AAAAAAAAA. .PPPPPPPPP. # THE END Some hints on designing levels are useful. Don't use too many different types of stones on one level. When the bat can move freely (type=2) only use the top 14 rows. When there are two bats (type=3) don't use the top 5 rows. When designing levels, the easiest thing to do is to create a new file named LEVELS01 with your own levels.(Note that such no file with that name is present.) 4.8. Suggestions If you have any suggestions for improvement (e.g. new stone types) or if you did design a nicer set of bitmaps, a better background, new sounds or a new set of levels, please send them to me and they will be included with the next update. I also plan to make libraries of levels. Of course credits will be given. Send things to: Mark Overmars Magnuslaan 6 3571 ET UTRECHT the Netherlands