The Sentinel (video game)
The Sentinel, released in the United States as The Sentry, is a puzzle video game created by Geoff Crammond, published by Firebird in 1986 for the BBC Micro and converted to the C64 (by Crammond himself), Amstrad CPC (with a cross-compiler written by Crammond), ZX Spectrum (by Mike Follin), Atari ST, Amiga (both by Steve Bak) and PC (by Mark Roll). It was among the first games to feature solid-filled 3D computer graphics on home computers. While it ran acceptably fast on 16-bit computers, it was slow on 8-bit machines such as the C64, where the next view took up to three seconds to be precomputed. Despite this, the game retained a dedicated base of fans, some of whom were able to modify their computers to enjoy it better (for example, by using a CMD SuperCPU in a standard 1-MHz 6502 Commodore 64 to achieve CPU clock speeds of 20 MHz).
The game itself can be best described as an "energy management" game. It has a first person point of view and features ten thousand playfields. Its uniqueness caused it to be labelled "the first virtual reality game".
The PC port supported VGA graphics and incremental lighting. This version, however, has very poor audio capabilities, since it can only use the PC speaker. The Amiga port features a sampled soundtrack by David Whittaker.
A preview of a nonexistent sequel called Monolith appeared in 1995 in the Italian video game magazine The Games Machine as an April Fool's Day prank. In 1998, the real sequel called Sentinel Returns was released for the PC and PlayStation; a freeware unofficial Sentinel clone called Sentry was also made available for PC the same year. In 2006, two more unofficial clones (Zenith and Sentinel) were released.
In The Sentinel, the player takes the role of a Synthoid (called just "robot" in the US version), a telepathic robot who has to take control of a number of surreal, checkered landscapes of hills and valleys, by climbing from the lowest spot, where the hunt begins, to the highest platform, over which the Sentinel looms.
The Synthoid itself cannot move across the level; instead it can look around, accumulate energy by absorbing the objects that are scattered across the landscape, create stacks of boulders, generate inert Synthoid shells and transfer its consciousness from one of these clones to another.
List of executable actions:
- Look around by moving the pointer on the screen (press S=Left, D=Right, L=Up, <=Down)
- Toggle cursor on|off. You turn faster with it off (press SPACE)
- Absorb an object to gain its energy (point a square where an object is present and press A)
- Create trees in empty squares (point the desired square and press T)
- Create one or more boulders in empty squares (point the desired square and press B)
- Absorb one or more boulders (point the boulder on the bottom of the stack and press A)
- Create a new Synthoid shell in an empty square or on a boulder (point the desired place and press R)
- Transfer consciousness to another Synthoid (point the Synthoid and press Q)
- Hyperspace to a random part of the level at the expense of 3 units of energy (press H) (note that the player may not hyperspace to a higher square; only one of equal or lower height). Also used to hyperspace to the next level when the player has reached the Sentinel's height.
- Rotate 180 degrees (press U)
Controlling Synthoids that are standing at a higher level is fundamental to the game, because only the objects which occupy a visible square can be interacted with (the player may absorb or create objects on a boulder if the sides can be seen). While doing so, the player must watch for the rotation of the Sentinel and be careful not to stand in an area which the Sentinel can see, or else it will start absorbing energy from the Synthoid, and when the energy is gone, the game is over.
Height is gained by placing a boulder on any visible square, and putting a Synthoid on the boulder. The player may then transfer consciousness to the new Synthoid, and absorb the old one. Stacks of boulders of any height may be created, if the player has enough energy. In order to absorb the Sentinel, the player must create a stack of boulders of sufficient height that the Synthoid on top can look down on the Sentinel's platform. When the Sentinel has been absorbed, the player may no longer absorb any energy from the landscape, although objects may be created as normal.
In later levels, the Sentinel is assisted by a number of Sentries. They behave exactly like the Sentinel, but absorbing them is not necessary to complete the level. Unlike the Sentinel, the Sentries do not stand on a platform but on ordinary squares. Attention must also be paid to nearby trees: if the Sentinel or Sentry cannot see the square the Synthoid is standing on, but its head is visible and there are trees in the vicinity, it may transform one of them into a Meanie, which will force the Synthoid to hyperspace and lose 3 units of energy. If the Meanie itself cannot see the player's square after a full rotation, it will turn back into a tree and the Sentinel or Sentry will resume rotation.
The rotation of the Sentinel and the Sentries is slow and predictable. However, if there are many Sentries, there will be few safe locations anywhere on the landscape. If either the Sentinel or the Sentries come across a source of energy (boulders or a synthoid), their rotation stops while they absorb the energy, one unit at a time. Meanwhile, to keep the total energy of the landscape constant, a tree is created randomly on the landscape for each absorbed unit of energy.
List of objects that can exist in the Sentinel world:
- Tree (1 unit of energy)
- Meanie (1 unit of energy)
- Boulder (2 units of energy)
- Synthoid (3 units of energy)
- Sentry (3 units of energy)
- Sentinel (4 units of energy)
A level is won by absorbing the Sentinel off its platform, creating a new Synthoid in the place of the Sentinel, transferring the consciousness to it and hyperspacing to a new level. When entering a new level, its number and an 8-digit code are displayed on the screen: these should be noted by the player, as entering them correctly is the only way to access that level again.
The number of levels that are skipped between two that are played depends on the amount of energy the player has accumulated when he jumps into hyperspace: the more energy he has, the more levels he will skip. Sometimes (depending on the individual skill of the player) it is necessary to replay a level in order to win it with less energy than the last time, because the difficulty of the levels is not incremental and one of them may be just too hard to complete.
Limitations of the game engine
The game engine ingeniously gives the player the illusion of playing in a completely solid 3D environment with polygon-based graphics, even on very basic platforms. This is achieved by having the player character immobile in one place. The player may look around in all directions and see a scrolling rendered view from the current location. As the player transfers consciousness to another Synthoid, the game pauses momentarily as the CPU renders another complete view from the player's next location. This then becomes the view the player sees. Objects such as boulders, trees, Synthoids and even the Sentinel are then rendered on top of this background. This means that the player may "move" freely around the landscape, but the landscape need not be rendered in realtime.
3D views of landscapes cannot usually be rendered once and then rotated by means of 2D scrolling; the perspective transformation scales objects proportionally to (1/z), where z is the distance to the object along an axis perpendicular to the screen, but as the viewer rotates objects that are a constant distance from the viewer will not maintain a constant distance along the z axis. The effect is that — if using a mathematically correct perspective transformation — objects will get larger and smaller as the viewer rotates. As the game uses 2D scrolling, it can be deduced that a modified perspective transformation was used. It is highly probable that the transformation used in the game scaled proportionally to (1/distance), where distance is measured in 3-dimensional space, thus eliminating the change in size of objects due to rotation and facilitating rotation-by-scrolling. One down-side of using such a modified transformation is that the geometry of the scene becomes warped slightly, giving it something of a fish-eye appearance. This problem was clearly apparent during gameplay, as nominally straight lines became curved. Indeed, the image on the front of the game packaging itself show this warping effect in action.
It is clear that the memory limitations of the 8-bit microcomputers would preclude 10,000 landscapes being stored individually in the computer's memory. Instead, a procedural generation algorithm is used which generates each landscape from a small data packet: the 8-digit number given at the completion of a previous landscape. The number of landscapes was quite arbitrary given the generation algorithm, and was chosen as a balance between giving the player good value while not overwhelming them with an unreachable goal. Not all the landscapes were actually tested, but it was always possible to skip a difficult level by completing an earlier one with a different amount of energy.
Computer Gaming World called the Commodore 64 version of The Sentinel "outstanding and addictive ... I highly recommend it for many absorbing hours". It received a Gold Medal award by Zzap!64 magazine, describing it as an exceptional piece of software in a class of its own, and refusing to give it a numbered rating as a result.
The ZX Spectrum version received a CRASH Smash award, the magazine praising its originality, atmosphere and tension. It was also placed at number 7 in the Your Sinclair official top 100. It was also voted Best Original Game of the Year at the Golden Joystick Awards.
- Wagner, Roy (Aug–Sep 1987). "Aboard the Ten Thousand Sentries Limited". Computer Gaming World. p. 42.
- The Sentinel review by Zzap!64
- The Sentinel review by CRASH
- Amiga Power magazine issue 0, Future Publishing, May 1991