Quantcast
Channel: Interactive Dreams
Viewing all articles
Browse latest Browse all 1857

After announcing Creature Shock on CD-i in 1994, it took Argonaut Software three years to finish the CD-i conversion, but it was totally worth it

$
0
0


In 1997, Argonaut Software finally finished the CD-i conversion of Creature Shock. The game was announced on CD-i in 1994, as part of a three-pack of CD-i games offered by Virgin Interactive. In the end, Virgin brought us The 7th Guest, Lost Eden and Creature Shock. "Even being a bit linear as a game, Creature Shock (programmed by Argonaut Software) was great in its genre. And the overall attempt to create an alien claustrophobic world in an arcade/adventure game was pretty well achieved. I played it back in 1994 (I was 17) and finished it in 3 days. I remember being so embroiled by the atmosphere of the Creature Shock (Alien feeling) that I couldn't simply stop playing. And I the last part of the game is simply amazing! Some may say that the linearity of the game have killed it, but I don't particularly agree. It is, indeed, a bit linear, but it has so many different game elements on a very well presented story it easily makes us forget its weakest points. Besides, back in the time of its release, Creature Shock was graphically astonishing with polished pre-rendered videos that were sublimely linked with the game's action that you can't barely notice the difference of watching a cut-scene and gameplay itself. "

  
Argonaut Software was under a publishing agreement with Virgin Interactive Entertainment. Argonaut was an independent developer so they always used to use publishers to take their products to the market. When Virgin was contracted a 3 cd-I game deal, a Creature Shock conversion was on top of that list. The CD-i project was assigned to only one person: Martin Piper. Creature Shock was the first game he completed after he joined Argonaut. 11 Years later, in October 2004, Argonaut had to close its doors because they ran out of money. To get the ball rolling we only had to citate the back of the CD-i boxart: “It took Argonaut three years to cram this Double CD full of stunningly rendered 3D environments….” Three years? What happened there?
 

“You are right, the more than three years development time indicates there were problems. The biggest and first problem was trying to fit a PC game that used a lot of virtual memory onto a console with much less memory. For this in implemented a cached compressed file system to allow me to read in data, even while MPEG was playing, to allow me to render lots of frames of different sprites if required or have access to lots of data whenever I needed it."

 
The second was the difference in processing speed compared between the PC and CD-i versions, with CD-i being much slower in terms of processing and very much slower in terms of memory bandwidth. Luckily the most intensive part was the motion video which (thank God!) the CD-i had extra hardware to deal with that problem. The next most CPU/memory intensive part were the sprites. On the PC 2D graphics are generally stored as pixel data and memory copied onto the frame buffer. On the CD-i this wouldn't work because the CPU and memory were too slow to keep on copying all this memory around, even using dirty rectangles didn't help much. So the 2D scaled and non-scaled sprites used a special technique called binary compiling to make sure they were drawn at a good speed on the CD-i. This involves taking the pixel data and passing it through a tool which generates 680xx machine code. The resulting machine code stores the exact minimum amount of pixel data required to the frame buffer without needing to do all the wasteful memory copying.

 
 The third problem were the tools supplied with the development kit because Creature Shock used a lot of small video clips. Unfortunately I tried using the standard tools to create the CD and quickly found we ran out of space due to the tools adding two seconds of blank data between each clip. So I had to create my own tools that would reduce this gap to a couple of sectors and change my MPEG playback code to emulate the gap in the CD data instead. This worked because the CD-i allowed the incoming CD data to be accessed through a ring buffer. That said it was a miracle Creature Shock didn't use more CDs than it did!

 
The problem that took the longest to resolve was a small hardware bug that was found in some MPEG cards for some revisions of the CD-i hardware. I remember one time a couple of Philips engineers came over with their hardware debugging kit and after a while we eventually found the problem. In the end I worked around the bug by detecting the failure and resetting the hardware.  The 3D interactive bits had to be cut, there was no way the Cd-i was ever going to render that in real time. So we actually created some extra MPEG assets for the CD-i version to fill in the gaps in the story....


Worth a try for all those who never tried it.

[Thanks, Paulo Teixeira, Martin Piper]

Viewing all articles
Browse latest Browse all 1857

Trending Articles