GORILLAS: The Deluxe Edition Version 2.2, 25th November 2007 http://telcontar.net/Misc/Gorillas/ ** READ ME ** -- Credits -- Original program (c)1990 Microsoft Corporation and/or IBM Modifications (c)1997-2007 Daniel Beardsmore Chris Redit (PhAtfiSh), John Hughan, Julie Feeney, Thomas, Marco Stahl and Edgar Ruiz for comments, bug reports and suggestions -- Introduction -- Gorillas is a two-player turn-based action game where the players, represented by gorillas, sit atop a cityscape taking turns to throw exploding bananas at each other in an attempt to kill their opponent. Bananas are thrown by typing in an angle and velocity for the throw. Gorillas is an old DOS game written in QBasic, which was shipped with MS-DOS 5 in 1990. Gorillas Deluxe is my enhanced version of the game which has a number of what I consider to be improvements over the original: * Made playable on modern computers (speed calibration fixes) * All the rough edges of the user interface are gone * Twenty place league table (first ten places viewable) * Bigger and better explosions * Further configuration by way of Gorillas.ini -- History -- In about 1997, or perhaps before, I began tinkering with the program at home, making changes. In 1998, I did the same with a copy on a school computer, and finally, I decided to put all the modifications into a single deluxe version, which I worked on for about a year; Gorillas Deluxe was finally released in August 1999. It sat idle on my drive until late summer 2003, when I finally placed it on the Web. Unexpectedly proving to be a popular download, I've taken into account some suggestions I was given and the program is in active development again, 14 years after it was originally released. -- Requirements -- Any machine (or virtualiser/emulator) capable of displaying CGA or EGA graphics. The game requires Microsoft QBasic in order to run. If you do not have a copy of QBasic around, you will find a copy on the Gorillas Deluxe Web page. -- Getting started -- To load the game from DOS, type GORILLAS [ENTER] within the game's directory. To load the game from Windows, double-click Gorillas.bat. If Windows has hidden its extension, it is the file named "Gorillas" with an icon of a window containing a gear-wheel. This expects Microsoft QBasic to be either in the same folder as Gorillas or (for those who understand DOS/cmd), in your path. -- Playing the game -- Once you have loaded the game, you are presented with the name, credits and dedication, followed by basic gameplay instructions. When you have read them, press any key to continue. It is followed by the Game Setup screen. There are on-screen instructions to guide you, but a little guidance is given here too. The players table: If there are less than two players already in the league table, such as when you load the game for the first time, the game asks you for the extra names, to ensure that there is a minimum of two players in the table. As many as 20 players can be added, by pressing N for new player. R will rename players, and DELETE will delete them (after a confirmation). You are first prompted for Player 1, and then Player 2. Using the arrow keys, you choose which players will be in the game. Pressing ENTER confirms. You can use N, R and DELETE to modify the player list any time that you are being asked to choose players. (Note: player 1 is always on the left hand side of the screen during a game, and player 2 always on the right.) After confirming both players, enter and confirm the number of rounds to play, and the gravity. (If that didn't make sense, then it's my fault. Just run the game and you'll soon get the hang of it.) (Note: pressing DELETE rather than BACKSPACE completely clears any entry field within the program, i.e. it acts like repeated presses of BACKSPACE) Notes on rounds and gravity: The default number of rounds is four. Having an even number of rounds is the most fair; because the loser always goes first, it is possible with, say, a three round game for player 1 to win in one throw, player 2 to win in one throw and then player 1 to win in one throw. Player 2 would not get a fourth throw to prove that he or she is as good as player 1. Therefore, it is recommended that you play with even numbers of rounds. Gravity is set to 17 by default, as that is the way that I like it. It is also the "official" gravity. Set it to something else if you want. Afficionados of the 1990 version will want to use the original default setting of 10, although owing to changes in the game's speed regulation, it may not feel the same as it used to. If you want to permanently use the original default gravity of 10, set the defaultGravity line in Gorillas.ini to 10. Putting right incorrect entries: If you get one of the options wrong, you can press TAB instead of ENTER to confirm the value for gravity, and you will be taken back up to Player 1. If you got the players the wrong way round (i.e. the left/right layout of the game does not tie in with which side the two players are sat on) then, press TAB at Gravity to take you back to Player 1, and use the arrow keys to try to assign Player 1 to the player already assigned to Player 2. When you press ENTER, then the two players are swapped over. The TAB feature also allows you to correct the player assignments and to change the number of rounds and the amount of gravity that you chose. The introduction: Once you have chosen the game settings, one of two things happens: If you are playing the first game ever, then you are treated to the introduction to the game. If it is not the first ever game, then you are prompted whether or not you wish to see the introduction. (Since no-one will want to see it, I made it compulsory for the first time. My introduction looks really good and I don't want you to miss out. (Pride masked as fake concern for user's well being)). You can at this point also quit the program. If, somewhere in the Game Setup screen, decide to quit the program, then just press ENTER until you reach here, then press Q to quit. If you ever want to skip the introduction while it is being displayed, hit any key and wait a few seconds for it to notice. The game: After pressing P for play or after the introduction is over, the game begins. Here, you have to estimate the angle and velocity needed to throw the exploding banana at your opponent, factoring in wind and gravity. Type in your chosen angle and velocity, and watch where the banana goes. Simple. If neither player scores a hit, then have another try. Press ESCAPE while you are being prompted for angle or velocity if you want to abort the game. Y confirms, and N cancels. Gameplay hints: * It is not wise to alter both the angle and the velocity in one turn unless you really know what you are doing, because it almost always fails. * If the two gorillas seem to be at the same height, and your opponent just fired a shot that got very close to you, you may be tempted to work out what the shot should have been, and type the corrected values in. Beware: this method is not reliable, not least because of the wind. Always work out your own throw values. A warning: A flaw in the game engine means that a banana can pass right through a gorilla. It is very rare, and almost always happens at very high velocity, such as a straight throw at maximum velocity aimed at a gorilla's legs. Another variation is when a banana clips a gorilla's head without going off. It is up to you and whoever you are playing with to decide whether it was really a kill, and whether to take special action to credit the player who should have won. Statistics: After the game, you are presented with the statistics. Players are ranked on the percentage of rounds that they have won, and up to the top ten players are shown. The mean accuracy is the average number of bananas that a player has taken to kill his or her opponent. A dash is given if they have never killed anyone. While mean accuracy is probably not scientifically accurate, I hope it provides something to brag about. The mean accuracy probably becomes more accurate over time, when both players have had an equal share of easy and hard landscapes. The league table is automatically saved at the end of the game. The program will abort if it has difficulty saving the league table file. (QBasic limitation, I'm afraid) After the game, you can opt to play another game, whereupon you return to the Game Setup screen, or you can finish with slaughtering your opponent for the day. The Game Setup settings are preserved during the game; if you do not wish to change any of the settings for the next game then you can just press ENTER four times to confirm them. It must be noted that the league table and the list of players in Game Setup are stored in the same order: this is why, after a game, the players in the table can be in a different order. Don't worry about this, although, if it annoys you, tell me, and I'll consider a fix. The re-ordering does not affect which players are assigned to Player 1 and Player 2 for the next game. I think that that is it. You deserve a reward for reading all this! Now, go find a opponent and play the game. -- Customisation -- Custom icon: I have designed an icon for the game, called Icon.ico. You can attach this to a shortcut to Gorillas.bat if you wish. Gorillas.ini: This is a text file (opens in Notepad in Windows) containing a set of options for the game. Each line is of the form "name = value"; the possible setting lines you can use are: name: value: default: purpose: showIntro yes/no yes Enable/disable the title text, credits, and introduction useSlidingText yes/no yes Enable/disable sliding text animation defaultGravity 1-99 17 Specify the default gravity defaultRoundQty 1-99 4 Specify the default maximum number of rounds to play in a game useSound yes/no yes Enable/disable sound useOldExplosions yes/no no Choose whether to use the old-style explosions from the original game newExplosionRadius 40 Set the explosion radius to be used with the new style explosions; this figure is halved for CGA forceCGA yes/no no Force CGA graphics To make changes to the game settings, edit the file in Notepad, save, and the reload Gorillas Deluxe. -- Version history -- 2.2, 25.11.2007 * CGA support fully restored * Improved program icon 2.1, 24.09.2005 * Fixed a potential crash in the banana-falling sound [Marco Stahl] 2.1b2, 19.12.2004 * Attempted fix of a crashing bug in the speed calibration [Thomas] * The .ini file is now case-insensitive * The current default round quantity now shown during game set-up * Validation for the defaultGravity and defaultRoundQty lines in the .ini file * You can now just about sort of cancel the gorilla intro by hitting a key * The irritating no-league-table message is now banished 2.1b1, 18.10.2003 * Fixed a crashing bug in the banana fall sound code [John Hughan] * Games are now won once a player has won enough rounds (more than half) such that the other player could not possibly win [PhAtfiSh] * A slew of settings can now be customised via Gorillas.ini, including sound on/off [Julie Feeney], explosion radius [John Hughan], default gravity, and whether the intro text is seen. * Other small modifications 2.0.1 (aka 2.0r2), 20.01.2000 * Changed the extension of the league table from .DAT to .LGE to avoid confusion with the files of other products. * Made numerous corrections to this ReadMe.txt file. 2.0.0, 27.08.1999 * First official release -- On the internet -- Web: http://telcontar.net/Misc/Gorillas/