If you appreciate the work done within the wiki, please consider supporting The Cutting Room Floor on Patreon. Thanks for all your support!

Magic Carpet (DOS)

From The Cutting Room Floor
Jump to navigation Jump to search

Title Screen

Magic Carpet

Developer: Bullfrog Productions
Publisher: Electronic Arts
Platform: DOS
Released in US: November 1994
Released in EU: November 15, 1994


AreasIcon.png This game has unused areas.
CopyrightIcon.png This game has hidden developer credits.
DevTextIcon.png This game has hidden development-related text.
GraphicsIcon.png This game has unused graphics.
DebugIcon.png This game has debugging material.
LevelSelectIcon.png This game has a hidden level select.
Carts.png This game has revisional differences.


DevelopmentIcon.png This game has a development article
ProtoIcon.png This game has a prototype article
PrereleaseIcon.png This game has a prerelease article
NotesIcon.png This game has a notes page

For its time, Magic Carpet had a fairly advanced engine, able to do water reflections and fairly well detailed models. However, the initially confusing gameplay and the constant attention that Doom got meant the game wasn't able to sell as many copies as was hoped.

Sub-Pages

Read about development information and materials for this game.
Development Info
Read about prototype versions of this game that have been released or dumped.
Prototype Info
Read about prerelease information and/or media for this game.
Prerelease Info
Miscellaneous tidbits that are interesting enough to point out here.
Notes

Level Select

Entering carpet -level x, with x being a number between 0 and 49, allows the player to start on any level in the game.

As pointed out by the official strategy guide, it's possible to play the multiplayer levels in single player mode if -level is used with the numbers 50 - 69.

Cut Levels

Despite the manual claiming the game contains 50 single player levels, in fact there are only 45. 5 levels are cut from the game and can't be played. The exact omissions are confirmed by the official strategy guide[1]. Missing levels along with their names:

Level Number Name
9 Kutoor
18 Kireemir
29 Zakhazaran
34 Khatoud
40 Arimir

Loading these levels using the -level argument just seems to start the game on the next level along (e.g. -level 8 - the game uses an index starting at 0 - to play level 9 will just play what is level 10 of the final game). This seems to be some kind of deliberate hardcoding, as the levels are present in the levels.dat file, and they can actually (mostly) be played using the alpha build of the game included on the CD. Another way of playing them is via the Hidden Worlds expansion. Hidden Worlds only features 25 levels, but includes all the original Magic Carpet levels after this number, and as the executable there doesn't have the hardcoding in place and can play them all correctly.

Unused Levels

The game copies the files LEVELS/LEVELS.DAT and LEVELS.TAB from the CD to the player's local C: drive and loads them from there. LEVELS.DAT contains all the game's levels in a concatenated filetype commonly used by Bullfrog, where LEVELS.TAB contains a table of the start and end byte of each level file in the .dat file. Where things get interesting is that the install CD includes a large number of loose level files in the levels directory that are seemingly never used by the game. These level files (in the format LEVxxxxx.DAT) are what were concatenated to create the final LEVELS.DAT file, and are also accompanied by a corresponding .INF file. These are human readable header files that list out all the entities (Things in Bullfrog parlance) present in each .DAT level file - enemies, trees, spells, traps, mana balls etc. These files seem to include the five cut levels listed above, as those level's .INF files are unique.

There is also a further file called ALL.INF. This seems to be a concatenated list of the Thing summary of each .INF file, listing how many of each type of Thing is in all maps in the game. Where this gets even more interesting is it includes a lot more levels that are cut from the game and not even included in the loose .dat files. There are 124 levels total listed, with level numbers as high as lev00175.inf. For reference, the final game shipped with 65 maps, and the loose files include 70, so there is a huge number unaccounted for. Many of these seem to be mostly empty levels with minimal Things defined, but some have a large number of entities and clearly had work put into them. The numbers of levels listed here also don't seem to correspond with those of the final game levels, as they tend to have totally different numbers of Things in them.

Cut Spell

In the ALL.INF file, there is a spell called "Alliance" listed in the summary of some cut levels that is not present in the final game. This spell would appear in the game's sequel where it would cause enemy creatures to assist the player.

(Source: Michael Howard)

Unused Graphics

MMSPR.DAT

MMSPR.DAT/TAB contains main menu icon graphics. The below is the strangely cut config screen icon. It can be seen fully working if the alpha executable is used.

MagicCarpet-Config.png

SPTRS.DAT

SPTRS.DAT/TAB Contains the game's mouse pointer graphics.

Hourglass

MagicCarpet-HourGlass.gif

A nice animated hourglass that would presumably replace the pointer icon when the game was busy. This only looks right with the PMULTI.PAL palette used for the multiplayer screens, so presumably would go there. In the final there is nothing that seems to trigger this animation.

Config / Main

MagicCarpet-CM.pngMagicCarpet-OA.pngMagicCarpet-NI.pngMagicCarpet-FN.pngMagicCarpet-I.png

Strange truncated placeholder graphics that seem to be something to do with the config screen.

TMAPS.DAT

The file TMAPS.DAT contains the game's billboard textures - i.e. all enemies etc. It also has a number of cut enemies and files from old builds inside:

Dragon/Turtle

MagicCarpet-DragTurtle.gif MagicCarpet-DragTurtleMove.gif

the rotational sprite frames for the head of an unknown cut enemy can be found. An odd mixture between a dragon and turtle, it's not clear what this would be. As it has a separate head graphic, it suggests it would have been another "snake" style enemy like the existing worm and dragon enemies, with other sprites making up its tail.

Lizard

MagicCarpet-Lizard.gif MagicCarpet-LizardWalk.gif

Sprites for some kind of cut ground crawling lizard enemy. There is what seems to be a related function for this enemy in the original game executable at 753488 - DRAW_SCALED_LIZARD

Succubus

MagicCarpet-Succubus.gif MagicCarpet-SuccubusFly.gif

Sprite for a flying succubus/harpy enemy.

Carpet Attackers

MagicCarpet-CarpetAttackers.gif

An unfinished set of rotation frames for what appear to be two assailants on one magic carpet. These are clearly at the early stages of being inserted into the game, as per the PC Gamer feature where characters were posed and crudely 3D modelled first, and then retouched by hand to create the final graphics. These never reached that stage before being cut. Perhaps they would chase the player and engage in melee?

Raven

MagicCarpet-Raven.gif MagicCarpet-RavenFly.gif

This seems to have been the sprite for the cut raven familiar that would have assisted the player, as per the function names included with the Hidden Worlds expansion. There's a function name referencing this in the original executable at 751600 - DRAW_SCALED_RAVEN

Sprite

MagicCarpet-Ghoul.gif MagicCarpet-SpriteFly.gif

This is likely the cut sprite familiar.

Lizard/ApeMan

MagicCarpet-LizardmanSide.gif MagicCarpet-LizardmanFront.gif MagicCarpet-LizardmanBack.gif

What appears to be an odd hybrid of an ape and lizard. Would seemingly be the same size as the villagers.

Goat

MagicCarpet-GoatFront.gif MagicCarpet-Goatside.gif MagicCarpet-GoatBack.gif

Instantly familiar to players of the game's sequel, in fact this little fella was there in the original's files all along. There's a function name referencing this in the original executable at 754260 - DRAW_SCALED_GOAT

Villagers

MagicCarpet-OldManFront.gif MagicCarpet-OldManSide.gif MagicCarpet-OldManBack.gif

MagicCarpet-BlueWomanFront.gif MagicCarpet-BlueWomanBack.gif MagicCarpet-BlueWomanSide.gif

MagicCarpet-BasketWoman.png

Villagers who didn't make the cut. There's a function name referencing the old man in the original executable at 754220 - DRAW_SCALED_OLD_MAN

The woman carrying the basket is an unused variant of the standard woman graphic featured in the game. In Magic Carpet 2 this actually became the default female villager graphic.

Campfire

MagicCarpet-Campfire.gif

A cozy campfire that would be located in villages.

Old Building Designs

MagicCarpet-oldbuilding.png MagicCarpet-oldbuilding2.png

Leftovers from the time when castles and other buildings were 2D texture maps, as seen in pre-release coverage.

Ball

MagicCarpet-Ball.png

This was used in the sequel as-is to mark upgraded castle towers and for the new Mine spell. It's not clear if that was the original intention for it here, or just a useful way that was found to recycle it. There is what may be a related function name for this object in the original game executable at 750796 - DRAW_SCALED_BLUE_BALL

Projectiles

MagicCarpet-PurpleBall.png

MagicCarpet-IceBall.png MagicCarpet-IceBreaking.gif

Unused graphics included alongside the game's projectiles. It's not known for certain if the breaking ice graphic went with the ice ball projectile (the explosion starts a little too small), but it's very likely. There is what may be a related function name at 753340 - DRAW_SCALED_WATER_BALL

Tree

MagicCarpet-Baobab.png MagicCarpet-BaobabBurnt.png

An unused baobab tree graphic, seen in some of the pre-release coverage. Also included is a destroyed version.

Rocks

MagicCarpet-Rock1.png

MagicCarpet-Rock2.png MagicCarpet-Rock2Destroyed.png

The rock with the spiral on has a destroyed version that looks hollow like an egg - perhaps it contained an enemy at one point (worm?).

Unused Cutscene

MagicCarpet-LEVELOSE.gif

The file LEVELLOSE.DAT in the INTRO directory is actually another .fli format video. This would seemingly follow failing levels like the similar winning cut scene does on successful completion of the level. However, in the final game, losing a level either results in the player instantly starting again, or simply quitting back to the main menu, and this animation is never played. There is also the sample FAILED.WAV in SOUND.DAT that likely would have accompanied the above scene.

Undocumented Parameter

carpet -debug can be entered in the command prompt. However, no apparent effects are seen.

Release Date Text

This is left over from the demo of the game. It can be seen at 8FE74.

Magic Carpet comes to you from Bullfrog Productions Ltd.
And will be released on the 15th November 1994.
Copyright 1994 Bullfrog Productions Ltd.

Build Comments

Hidden within the main executable of the original CD version of the game is a string containing build information at B8E38.

Product name     Magic Carpet
Version number   Beta v8.0
Version date     Oct 20 1994 11:49:09
Programmer       Bullfrog, Sean Cooper
Supplied to      EA, Webster, Matt

The main executable for the later floppy disk version has its version strings at 922A8.

Product name    Magic Carpet
Version number  Beta v8.0
Version date    Feb 09 1995 11:38:24
Programmer      Bullfrog, Sean Cooper
Supplied to     PUBLIC

Main executable for the Magic Carpet Plus release, strings at AD120.

Product name    Magic Carpet
Version number  Beta v8.0
Version date    Jun 05 1995 16:26:18
Programmer      Bullfrog, Sean Cooper
Supplied to     PUBLIC

Main executable for a later European reissue of the original game, strings at 941A8.

Product name    Magic Carpet
Version number  Beta v8.0
Version date    Jun 22 1995 18:07:38
Programmer      Bullfrog, Sean Cooper
Supplied to     PUBLIC

The 3D accelerated special bundle version of Magic Carpet Plus for the Creative 3D Blaster VLB graphics card. Strings can be found at CDB90.

Product name    Magic Carpet
Version number  Beta v8.0
Version date    Oct 27 1995 18:25:26
Programmer      Bullfrog, Sean Cooper
Supplied to     PUBLIC

The Japanese version of Magic Carpet Plus, released as Magic Carpet DX. Strings can be found at 91D1C.

Product name    Magic Carpet
Version number  Beta v8.0
Version date    Apr 04 1996 19:22:23
Programmer      Bullfrog, Sean Cooper
Supplied to     PUBLIC

Debug Text

Leftovers of debug text/function names can be seen in the main executable at B7318. Note these exist only in the original CD release of the game, they were removed for the floppy/Magic Carpet Plus version. Many of these are listed above in the TMAPS.DAT section, but there are more for other cut objects:

DRAW_SCALED_THUNDER_CLOUD
DRAW_SCALED_RAIN_CLOUD

Cut weather effect graphics

DRAW_SCALED_RIP

This seems to be the "R.I.P" message that was displayed in the demo and Alpha builds upon dying.

DRAW_SCALED_HOUSE1

Likely one of the leftover 2D buildings as shown above

Version Differences

Original Release

The original CD-ROM release of the game inexplicably includes a large chunk of unneeded development files as outlined above, such as the original unpacked level files, level manifests, an alpha build and other revealing items. More practically, it also includes an executable called MAPHACK.EXE which lets the player replace the surface of the first level with a 256 x 256 pixel image of their choice. All Thing placements remain the same, only the level appearance changes. All of these extras were removed from Magic Carpet Plus. Reportedly this release was actually the wrong master disc that was duplicated, as the final level mana bug fixed in the patch had already been detected and fixed prior to the release of the game[2]. As such it's possible the above files were present purely as this release was never meant to be seen by the public. The cheat code for this version is to enter the word "RATTY" into chat.

Patch

A patch was released in March 1995 for the original version of the game that altered the target amount of mana needed on the final level from 99% to 85%. The original target left the game impossible to complete. The patch simply consists of new LEVELS.DAT/TAB files.

Magic Carpet Plus

A compilation of the original game and the Hidden Worlds expansion. This version of the game already includes the above patched level files. It also has a new quicksave feature to be able to save and resume a level partway by pressing ALT+S to save and ALT+L to load. The cheat code for this version of the game is to type "QUICK" into chat.

Creative 3D Blaster VLB

The only official release of Magic Carpet to feature hardware accelerated 3D via the short-lived Creative Graphics Library (CGL) API. This was a special version of Magic Carpet Plus which was only released as a bundled CD with the original VLB version of the Creative 3D Blaster accelerator card. Unlike the other Bullfrog game ported to the API (Hi-Octane), there was no subsequent version with support for the more powerful PCI card. As such, the VLB version does not seem to feature any graphical improvements over the original, other than a steadier framerate on the same CPU hardware. The 3D Blaster port was carried out by Jan Svarovsky shortly after joining Bullfrog[3], in late 1995.


(Source: Vetz/RetroCompaqGuy)

Magic Carpet DX

MagicCarpet-DXSplash.png

Japanese version of Magic Carpet Plus. Includes a new Windows 95 installer and sound setup program for the game, and translates all text into Japanese. The intro is still in English but now has Japanese subtitles.

The original Bullfrog credits in the executable (seen if the game is left on the title screen for a while) are replaced with new Japanese version credits:

Japanese Version By
Electronic Arts Victor Inc
Shinichiro Takagi
Kai Gushima
Kazutomo Kawai
Hitoshi Ikeda
Takashi Iwama
Syuji Tahata
Kengo Kato

References

  1. Chris McCubbin, Tuesday Fraze (1995), Bullfrog's Official Guide to Magic Carpet 1&2. Origin Systems. p. 64. ISBN 0-929373-38-3
  2. John Davison. Blueprint. Magic Carpet 2. PC Zone 29 Dennis Publishing. August 1995 p. 29. ISSN 1354-070X
  3. Extreme Detail Graphics, svarovsky.org, August 2002