Vector Vaults

VectorVaults is an original and addictive fast retro arcade bedroom coder game exclusive for the Amstrad CPC that will test your pilot skills. It’s the first game of the Hidden History Saga and upon completion will give you a secret code to use in Light Lands (the next entry in the series). Game play is based upon vector graphics (100% spriteless) with 25 frames per second, multi directional, analog variable speed, pixel precise scroll (may be the first game to do this four things at the same time on the CPC?). Physics on ship and camera are fine tunned to provide natural and smooth handling throughout the nine stages where gameplay is the main focus. If you want the smoother experience try it on original hardware. VectorVaults pays homage to the Vectrex video game console and plays like this:

Game story

You are Samuel, an human abducted by some ‘dingir’ into Annu’s mother ship in orbit around earth. They make an offer: help us break into the onboard computer SOLOMON using virtual avatar Enoch. They can’t do it themselves as their neural profiles are well known to SOLOMON. Your reward: Galactic Imperium citizenship. Among many other advantages this will extend your lifespan indefinitely. You don’t know yet who’s Annu or why these ‘dingir’ want to break into SOLOMON, but unending life is enough motivation. Just before a dingir called Samael switches you to virtual mode inside SOLOMON you state: ‘Let’s do this!’ in a loud confident voice.

Instructions

You are in charge of a ship shaped virtual avatar called Enoch. Your job is to penetrate each of the security encryption layers of SOLOMON in order to finally crack the computer and defeat Annu, so Vector Vaults is kind of a digital lock. The ship energy level is located on the bottom left corner of the screen, keep picking up batteries to refill it. Joystick or keyboard (O, P, Q, A and SPACE) may be used to play. The fire button (or SPACE key) activates the turbo speed. A far lenient skill level called ‘child’ is available from the main menu so every one can enjoy the game. Also pressing ESC key at any moment exits current game.

Editions

Physical edition: 3 inch disc physical edition of VectorVaults available for 39€ (shipping costs included). Orders should be directed at alberto.rd.mr@gmail.com with subject ‘Vector Vaults physical edition‘ and clearly specifying shipping address. Be sure to write from your PayPal associated mail as this is the payment method.

This is how the physical edition looks like:

Vector Vaults technology

VectorVaults draws inspiration from the excellent Amstrad CPC Scrambler clone ‘Killer Cobra’ (which uses hardware scroll). VectorVaults does not use hardware scroll but a new graphic technique called ‘mode c’ (not mode 3) which I tough of around 29 years ago. This ‘mode c’ provides 3 colors and 160×200 pixel resolution (which is less than ideal) and it’s primary advantage is being able to clear the screen seven times faster (comes very handy for vector graphics). Internally mode ‘c’ is a double buffered mode 0 that works by manipulating the palette between frames cyclically, keeping always 14 of the 16 colors invisible (hence the three usable colors counting background). That way the task of erasing the whole screen may be divided into seven steps, each performed on a consecutive frame. This has to be done alternatively on each of the two video buffers. This technique is made possible thanks to how the Amstrad CPC handles the palette and, of course, may be used for any kind of scroll or other types of movement.

For those of you who are curious, during development I tested using mode c versus erasing only the lines and pixels that were drawn on screen (by redrawing them with background color). The result: mode c was faster, saved memory (less code and data structures) and simpler.

Development

VectorVaults is coded in C and assembler and has been possible thanks to:

Roland Perry: one of the lead designers of the original CPC.

CPCWiki: THE Amstrad CPC encyclopedia. Tons of useful examples and great place for the Amstrad CPC enthusiast.