Fairlight is a land of mystery and magic with a castle that holds as many secrets as Castle Rathbone. It's also the new game from The Edge - Simon Forman has come under its spell.
Things haven't been too rosy recently in
the Land of Fairlight - war, murder,
plague, famine. You know the sort of
thing! Well, now you've got the chance to
do something about it. Imprisoned in the
Castle Avars is the magician whose Book
of Light can make the sun shine once
more - and guess who the task of freeing
him has fallen too? Got it in one, so
can stop sloping off. After all, you might
miss out on the best arcade adventure of
the year - maybe the game of the year! |
Fairlight is a true adventure, not just one in name. There are eighty-odd locations, a mystery to solve and hidden objects to uncover and use. But it all takes place in stunning 3D graphics. Here are caves and courtyard, dungeons and drawbridges, towers and secret rooms - all pieces of a jigsaw that'll fit together to form a perfect castle.
You'll soon suss out that the magician you've got to rescue is holed up in one of the towers. It's getting up there that's the problem - your path's blocked by a monk-like ghoul who will not budge. So,
it's off round the castle, exploring all the
rooms, finding keys to the locked doors,
collecting crowns and books and bags of
gold. But you're not the only one wandering within the walls - beware the
soldiers, trolls, magic bubbles and monks, all
of them out to do you a mischief. |
The atmosphere of the medieval castle is captured by the programmer, Bo Jangeborg using his Worldmaker Technique. This has added an extra dimension of realism to the game that you won't have come across before. You'll find that objects weigh differently just like in real life. When you move an object, leave and then return to a room, it doesn't reset but stays just where you put it. And best of all you can pick up all the objects you find and use them in any of the other rooms.
Different from the Ultimate megagames, huh? Alien 8 and Knight Lore are more puzzle games - each room poses a problem that you've got to overcome. Fairlight is one big problem - but you'll have one helluva time trying to solve it!
Hmmm, Fairlight and Nightshade, day and night, light and shade. You know from the titles that these two games are going to be related somehow - two sides of the same coin, that sort of thing. And, of course, the thing they've got in common is 3D.
The biggest problem facing any 3D programmer is how to store all that data. It's bad enough in ordinary games - the sprites and backgrounds take up enormous amounts of space. In three dimensional games, it's a nightmare. The programmer has to find space to store info relating to all the positions of objects and meanies, as well as having more sprite frames for each character because of the different orientations.
For all that, Nightshade isn't too much of a problem. There are 1024 'rooms' in the village (though you don't seem to be able to get into all of them) but each room takes up very little space. That's because all you need to know is which side the doors are on and which of the small selection of walls to use. You also have to keep track of a few meanies and special objects. Ultimate uses its now customary table technique with a small entry for each room and a larger table for the meanies
containing their type and current
positions. As usual the
programming is slick but yawn,
it's so boring - all the
emphasis is on increasing speed
without losing structure. |
Fairlight is much more interesting even though the techniques that Bo Jangeborg uses for screen handling aren't up to Ultimate's standards. This is the first game, for example, I've seen for a long time that uses an LDIR instruction to move the screen buffer from memory to where you can see it It's much more usual now to use special routines that draw line by line upwards from the bottom. This avoids any problems with the screen refresh that occurs every fiftieth of a second. Still, the fact that you can move objects from room to room and leave them there means the program structure looks much more like an adventure than any other similar game that I've looked at.
So, how's it done? Well, several tables are used to store the data while the objects are kept in one 1000 byte block. Here the entries detail the room location and the 3D co-ordinates within - that's how objects can be stacked on top of one another, for example. The table that stores the backgrounds is in a special format so that it doesn't waste space - when you have to find somewhere to store a whole 6912 byte screen buffer, space is very important! Each entry starts with a two byte number which is the length of the entry. To find a particular room, you start with the first entry; if it's not the one you want, you add the length bytes onto the current position to look at the next one and so on until you find it. Each entry itself is divided up into similar sub-
tables that say what goes where
in the room. |
One side effect of all this space saving is that the initial set up of the screen is very complicated. It involves setting up the background and then laboriously searching the object table until all the objects in the room are found and put in their proper places. Also, they have to be found in the right order so that 'hidden' objects stay hidden. So, when you're staring at the blank screen as you pass from room to room, spare a thought for the Z80 - it's working overtime to get the new room on screen as quickly as possible.
All in all, both programs are extremely competent. Still, I can't help feeling that Nightshade could've done with being a bit more involved while Fairlight would've benefited from Ultimate's skill with the screen. From the hacking point of view, Fairlight is much more rewarding and I've a hunch that Hacking Away will be choc-a- bloc with POKEs for it next month. But just to be going on with, here's a short program that'll give you infinite lives on Nightshade - and it's short because Ultimate has given Speedlock a miss this time round.
All you have to do is type in the short Basic loader, run it and play your master tape through from the beginning. The original Basic loader will now be ignored. Now play till you drop!
D E A D L Y