Proto:Doom (PC, 1993)/Doom 0.2
Having more detail is always a good thing.
Specifically: * Expand the art section, make .gifs of those enemies, clarify/correct the article, and get some captions up.
This is a sub-page of Proto:Doom (PC, 1993).
|Download Doom 0.2
File: Doom0 2.zip (254 KB) (info)
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.
- 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, which does not bob on-screen. You also have 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.
- No frame rate limit has been implemented yet, so the game can run at framerates greater than 60 FPS on a Pentium or better.
- Non-orthogonal walls are implemented, but are rendered using routines that do not resemble the final product at all.
- A lump called HIGHBLIT, containing mostly x86 code, 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. This lump does not exist in the final game.
- The renderer appears to rely on a data structure referred to as M_AREAS in lieu of the final version's NODES lump in order to determine visibility. The format of M_AREAS has no known analogue to the data structures of the later prototypes nor the final version.
- Texture mapping is done through a completely different and much simpler routine. Rather than using metadata stored in the WAD to create composite textures made of multiple images, the images are directly applied to the wall.
- Textures are referred to in the single level by their index in a data structure called M_TEXTUR in the WAD, which in turn refers to textures by their lump index in the WAD.
- The concept of "sectors" does not exist in this prototype.
- Textures interestingly are not capable of tiling horizontally and this will continue to be the case until the 0.5 prototype, but do tile vertically.
- 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
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 can only be seen through hacking the .wad. Weirdly, there are no references to the chainsaw or the plasma launcher in this build.
The Machine Gun's sprite is like the one from Wolfenstein 3D.
The Missile Launcher's sprite from the 0.4 build looks exactly like this build's silhouette.
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 and functions completely differently.
The shotgun is slightly different from the final. Notice that the player has sleeves when it is used.
Aside from the re-coloring of the mouth and eyes, the Imp appears to be identical to the final version.
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.
One of the walls was stretched from 64×64 to 64×72 pixels in subsequent builds.
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).
***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.