Showing posts with label Magic Carpet. Show all posts
Showing posts with label Magic Carpet. Show all posts

Sunday, 19 June 2011

Magic Carpet: Settings for High resolution

Thanks to some helpful pointers from people playing the game I managed to get Magic Carpet working in high resolution. The game was written in such a way that it doesn't handle CPU speed increases elegantly or indeed at all really (only partly my fault) so GOG have shipped it with DOSBox's 'cycles' set to 20000 which is about right for running it with the default options.

Magic Carpet in all it's foggy 640x480-with-reflections glory


If you edit dosboxMC.conf and change cycles=70000 seems about right for 640x480 with all of the useful options turned on.

Run it and the game will be way to fast in low resolution but press these keys:

R to change the resolution
F5 to turn on reflections
F6 to turn on the sky

and it seems about right. You can also press F10 for stereo mode if you have red/cyan 3D glasses but that needs even more cycles to make it playable.

ctrl-F11 lowers the cycle count
ctrl-F12 raises it

140000 seems about right for hi-res stereo mode.



Saturday, 18 June 2011

Magic Carpet re-release

On Thursday evening I discovered, after being alerted by a Facebook 'mention', that Magic Carpet had been re-released for Windows on gog.com. As I hadn't played it for a long time I paid up the $5.99 and downloaded it. It turned out it was 'just' the original packaged up with DOSBox but the price was right and I was very unlikely to get round to setting it up myself. That would have required all sorts of hassle like trying to work out where my boxed copy of the original is for a start.

Screenshot from the Edge review


It was weird to be playing a game I wrote the graphic engine for seventeen years ago and once I'd checked the manual to work out how to turn all of the options on, several things struck me. 

  • The reflections and animated water were pretty cool for the time. 
  • Stereo 3D with red/cyan glasses was (and still is) cool.
  • Stereogram mode was a stupid idea, specially when I got the maths so very wrong (1/z not z you idiot).
  • Sean had done a pretty good job of moving all that stuff around at a decent speed.
  • What to do at the start is so much more confusing than games these days.
  • DOSBox emulation of the 640x480 Vesa mode we used for 'high' resolution is really, really slow.
  • The draw distance is pretty pathetic.

Sadly, that last one is the thing that strikes you the most as you try to play. The fog really does seem to start just in front of your nose. I think I should warn anyone reading this that most of the rest of this post is probably going to turn into an excuse for this pathetic draw distance.

I had been working the Graphic Engine for Magic Carpet for a while. In fact, for the a year or so I was the only programmer working on it. It was aimed at 50+ Mhz 486 CPUs and pretty well optimised when you consider it textured with gourad shading and translucency. In my prototype version the tiles/triangles that made up the landscape were about 20 metres across and it drew, I think, 20 tiles before the fog faded it out completely. This meant you could see 20x20 = 400 metres before the fog faded the 'horizon'. Characters, trees, the lumps in the landscape and the speed of the carpet were all scaled accordingly.

then some smart arse decided it would be cool to make castles and things out of the landscape itself. These looked kind of cool but suddenly the tiles had to be the width of a castle wall or the walkway that the archers patrolled to defend it. Now the tiles were only about 2 metres across. The engine still only drew 20 tiles to the 'horizon' (I couldn't up this number and expect a decent frame rate on the target hardware) but 20x2 is only 40. The fog now kicked in at just 40 metres. characters were scaled up accordingly, the landscape smoothed out and the carpet's speed scaled up by a factor of 10. Suddenly it only took about a second or so to fly to the 'horizon'.

This sort of thing doesn't happen when you code games on your own...

Since trying to play it I've downloaded the mac version of DOSBox but haven't got round to trying it yet. Hopefully I'll be able to play in glorious 640x480 'HD' when I'm only using one level of emulation*. I had previously been running DOSBox (an emulator*) on Windows7 running on VMWare (an emulator*) on my iMac.

*Is it emulation when it's all related Intel CPUs? I really don't know.