We just reached 30,000 articles on this wiki! 🥳
If you appreciate the work done within the wiki, please consider supporting The Cutting Room Floor on Patreon. Thanks for all your support!

Proto:Doom (PC, 1993)/Doom 0.2

From The Cutting Room Floor
Jump to navigation Jump to search

This is a sub-page of Proto:Doom (PC, 1993).

Download.png Download Doom 0.2
File: Doom0 2.zip (254 KB) (info)


Note the subtitle, "Evil Unleashed".

Version 0.2 of Doom dates back to February 4, 1993. At this point, Doom is little more than a tech demo, as only two months of work have been done.

General Differences

Barely resembles the real thing.
  • The HUD consists of a large static image that frames the screen. While the HUD appears to include many active elements, none of them function whatsoever in this build.
  • Only three enemies are present on the only map of this build (see below) – an imp, a demon, and the Baron of Hell. Object-to-object collision detection has not been implemented yet, nor has the enemy AI. They will only cycle their walking animations slowly and will not move nor react to gunfire, noise, or even the player walking right through them.
  • Your only weapon is a prototype shotgun with infinite ammo.
  • Sound and music are not implemented yet. It is possible that the DMX sound library used in the final version was not licensed at this time.

Engine

The only map you'll ever see in this build.
There was a lot of tension between Tom Hall and some of the Id guys during development (Jules being Adrian Carmack). Hall left (see: was forced out) before the game's release.
  • The game's tic rate is 70hz, allowing the game to run at 70 FPS on faster machines. This would be reduced to 35 starting with the 0.5 alpha.
  • Non-orthogonal walls are implemented, with a renderer conceptually similar to the final game, but very rough at this point.
  • A lump called HIGHBLIT, containing x86 code and some unneeded filler, is used to render the scene through the inline of the HUD. In other words, the HUD is not an overlay; the scene is drawn on top of it, obviously with an objective of eliminating overdraw. A companion lump named VIEWINFO instructs the renderer how to draw the scene in the cutout, which is then copied to the screen via HIGHBLIT. Both lumps do not exist in the final game. In addition, strings in the executable also reference nonexistent MEDBLIT and LOWBLIT lumps.
  • M_TEXTUR implements an early version of the composite texture format used in all later versions of the game, but the prototype lump only defines a single texture, and this texture's contents are overridden by the demo to implementing the changeable wall textures. The needed patches are stored in M_PNAMES, and available flats are stored in M_FNAMES.
  • The concept of "sectors" does not exist in this prototype. A similar structure named "areas" stored in M_AREAS is present instead, but maps can only have one area at this point in time. There's no way for the renderer to render into other areas, and the player physics have no code for relinking the player's current area.
  • Textures interestingly are not capable of tiling horizontally and this will continue to be the case until the 0.5 prototype. The debug texture is always wide enough to span the walls without tiling, though. Lines contain both a start column number and an end column number, allowing for horizontal texture scaling.

Controls

  • Arrow Keys - Move
  • Control - Shoot
  • Right Shift (w/ arrow keys) - Run
  • 3 & 4 - Go through wall textures
  • 5 & 6 - Go through ceiling textures
  • 7 & 8 - Go through floor textures
  • 9 & 0 - Adjust brightness
  • Pause - Pause

Weapons

At this point in development, several weapons were planned but eventually cut. All of the weapons are documented in the Doom Bible. Everything but the shotgun only has HUD graphics in the .wad. These graphics were drawn with the Wolfenstein 3D palette, but using the included palette, they're red.

Knife

I guess it was held in place by duct tape?
The Knife would have been an attachment for the pistol, but it did minimal damage. This would become the fists in the final game.

Pistol

Petoo petoo!
The Pistol is also present in the final, but as mentioned above it would have a knife attachment.

Shotgun

Looks more like a Super Soaker to me.
Also in the final, the Shotgun although its silhouette is a bit different at this point.

Machine Gun

Achtung! Reusing sprites is verboten!
The Machine Gun's sprite is like the one from Wolfenstein 3D. This would become the chaingun in the final game.

Missile Launcher

Look out, or I'll fire this box at you!
The Missile Launcher's sprite from the 0.4 build looks exactly like this build's silhouette.

Dark Claw

A REAL space marine doesn't need puny claws!
The Dark Claw would "cast a cloud of tortured essence", and this weapon would be present up to the 0.5 alpha build before being cut in favor of the plasma rifle.

Probjectile

Dammit, you set the end of my pistol on fire!
The Probjectile would have little fire power, but also gave stats on enemies. It did not get any farther than this.

Spray Rifle

ERROR: Non-phallic caption not found.
Would have been as powerful as the shotgun, but with a wider spread of fire... which would make it worse and less accurate. Again, this is the most iD ever did.

BFG 2704

We're almost one-third of the way there!
The BFG 2704's silhouette is identical to the sprite found in Doom 0.4.

Unmaker

Is there any way to hold this that DOESN'T get your hand impaled?
The Unmaker would have been used in the commercial version to hurt enemies, depending upon what type they were. A similar demonic weapon was used in Doom 64, although it was not intended to be the Unmaker according to the developers[1] and functions completely differently.

Art Differences

Shotgun

0.2 Prototype 0.3 Prototype Final
Doom_0.2_Shotgun.png Doom 0.4 Shotgun.png Doom_Shotgun.png

The shotgun is much rougher compared to the final game. The graphic would be revised in Doom 0.3 somewhat, extending it so the stock is visible and tweaking the muzzle, before trimming it all off for the final and cleaning it up.

Imp

0.2 Prototype Final
Glowing like a jack-o-lantern... *lol* O SHI-!

Aside from the re-coloring of the mouth and eyes, the Imp appears to be identical to the final version.

Demon

0.2 Prototype Final
Those are some pretty clean teeth Now, where's a toothbrush when you need one?

The Demon's teeth were made bloodier, and the poses are different. The sprite was re-shaded, and the eyes were redrawn to look like they're glowing.

0.2 Prototype Final
Do the demon shuffle! Got tired of the shuffle and started running.

In addition to the cleanup, the demon was heavily reanimated to make it look more like it's running rather than shuffling along.

Baron of Hell

0.2 Prototype Final
Freshly polished horns! Horns have dulled from use.

The Baron of Hell's walk cycle is rather close to the final - the horns and hooves were made darker, and some shading around the shoulders and legs were tweaked for the final game.

Walls

0.2 Prototype Final
Stretch it a little more... There we go!

'WALL8_7' was renamed 'WALL02_1' and was stretched from 64×64 to 64×72 pixels in subsequent builds.

0.2 Prototype 0.3 Prototype
Dooma 02 WALL6 1.png Dooma 03 WALL03 2.png

'WALL6_1' was redrawn for subsequent prototypes as 'WALL03_2'.

0.2 Prototype 0.3 Prototype 0.4/5 Prototype Final
Dooma 0.2 WALLBB 2.png Dooma 0.3 WALLBC 2.png Dooma 0.4 PLAT1 1.png Doom PLAT2 1.png

'WALLBB_2' was slightly modified in 0.3 and renamed WALLBC_2. It was later turned into PLAT1_1 in Doom 0.4, then PLAT2_1 in the final game.

Flats

0.2 Prototype Final
Doom 0 2 FLAT1.png Doom FLOOR0 1.png

'FLAT1' was renamed 'FLOOR0_1' in subsequent builds with lighter shading and thicker outlines.

The rest of the flats are unique and don't appear in any other build of Doom.

Palette

0.2 Prototype Final
Level 0 of the alpha's PLAYPAL (the only palette level there is). Level 0 of the final's PLAYPAL.

The palette color ranges in PLAYPAL (the actual 256-color VGA palette), while not precisely final, largely resemble their final counterparts in the retail game. The palette only saw nearly-unnoticeable tweaks leading up to the final game, with the exception of colors 3-15 being unused in this prototype and some of the latter color ranges being moved around. In addition, the PLAYPAL data in this prototype only contains one palette, while the final version contains 14 (for things like the red haze when the player takes damage, or the yellow haze when picking up items).

Text

***STATS***
CLI=
STI=
PUSHF=
POPF=
IRET=
INTxx=
MISC=
*I13=
*EXT=
OVERALL=
*TM BGN=
*CUR TM=
INT STATS=

This is probably debug text for the CPU to see how the program crashed.

main.c
i_ibm.c
lingfx.c
p_play.c
p_things.c
p_user.c
r_game.c
r_init.c
r_draw.c
r_plane.c
r_posts.c
r_render.c
wadfiles.c

Compiler leftovers scattered throughout the executable.