Gorillas: The Deluxe Edition

Version 2.2, 25th November 2007
http://telcontar.net/Misc/Gorillas/

Contents

Credits

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:

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” to a handful of friends and acquaintances in August 1999 and was never heard of again.

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

Getting started

Gorillas Deluxe depends on Microsoft QBasic. The simplest option is to download the complete Gorillas Deluxe package that contains QBasic. Otherwise, QBasic should be in your path.

To start the game from DOS or a DOS emulator, change to the Gorillas directory and type GORILLAS [ENTER]. To load the game from Windows, double-click Gorillas.bat. If Windows is hiding extensions, this is the file named “Gorillas” with an icon of a window containing a gear-wheel:

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. The loser goes first in Gorillas Deluxe, which means that having an even number of rounds is the most fair. 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 she is as good as player 1. Therefore, it is recommended that you play with even numbers of rounds. The game will terminate if either player has won more than half the number of rounds because they are guaranteed to have won.

You can also change the acceleration due to gravity, in ms-2. Earth normal gravity is 9.8 ms-2 but Gorillas Deluxe doesn’t take decimals, so round up to 10. The default is my competition gravity of 17 ms-2 (no idea why I changed it to 17 so many years ago). Owing to changes in the game’s speed regulation, using a value of 10 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. Can’t have you all missing out...) 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

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 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:

Gorillas icon

You can attach this to a shortcut to Gorillas.bat.

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 in ms-2; competition gravity is 17, Earth gravity is 10 (9.8 if the Deluxe Edition allowed decimals, as in the original)
defaultRoundQty 1–99 4 Specify the default maximum number of rounds to play in a game; the game will stop if either player wins more than half this number
useSound yes/no yes Enable/disable sound
useOldExplosions yes/no no Choose whether to use the old-style explosions from the original game
newExplosionRadius integer 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 on machines with better video hardware (introduced for debugging purposes)

To make changes to the game settings, edit the file in Notepad, save, and then reload Gorillas Deluxe.

Version history

2.2, 25 Nov 2007

2.1, 24 Sep 2005

2.1b2, 19 Dec 2004

2.1b1, 18 Oct 2003

2.0.1 (aka 2.0r2), 20 Jan 2000

2.0.0, 27 Aug 1999