Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
hardcore_gamer

Has John Carmack ever made any Doom levels?

Recommended Posts

Never credited with any type of 3d maps, no. He was more the facilitator of maps than the maker of them, writing the inhouse editors for Doom and Quake. I'm sure he made some square rooms, perhaps even a staircase or a door, to test that his code was working, but he largely had a crowd of talented designers around him eager to explore the limits of what his creations were capable of. I've heard it said American was his main go-to for developing the capabilities of the Quake engine while it was under development, no idea how true that is - others opinions/stories might differ. Tom Hall seems to have been key in making the first batch of Doom maps, but it was certainly Romero (and to some extent Petersen) who blew the lid off what the engine could do. Having said that, 2d games also technically have "level design", and Carmack's first game Shadowforge has large amounts of rudimentary maps.

Share this post


Link to post
24 minutes ago, PizzaGuy said:

From what I've read he was really the guy who put tools in place for map creation. 

Nope, I'm pretty sure Romero was responsible for DoomEd.

 

I think Carmack really focused entirely on the engine side. That certainly extended to the BSP builder too but apart from that, I think Romero and Dave Taylor did the rest.

Share this post


Link to post
Just now, fraggle said:

Nope, I'm pretty sure Romero was responsible for DoomEd.

 

I think Carmack really focused entirely on the engine side. That certainly extended to the BSP builder too but apart from that, I think Romero and Dave Taylor did the rest.

There we go ,that sounds more accurate. I should really go back and read Masters Of Doom again. 

Share this post


Link to post

This got me thinking a bit. Conway's law states that source code tends to resemble the organizational structure that produced it. So Doom's source should be the same. Doom's code is divided into conceptual subdivisions by theme. We can assume that these subdivisions probably also represent divisions of labour and therefore have a primary author. We know Carmack did the rendering engine. Dave Taylor has conveniently listed some of the things he authored in an interview:

 

Quote

BMi: What specifically was your most important role in the production of Doom and Quake?

DT:“No idea.  Maybe you’d be a better judge. On both, I referred to myself as a “spackle coder”.  Carmack did the hard stuff.  I filled in some holes.  On Doom, it was the status bar, auto map, cheat codes, integrating the sound library and sound effects, those screen wipes at the end of a level if you remember those, and the between-level tallies of your performance. 

 

So here's my educated guess:

 

AM_* Automap code Dave Taylor
D_* Initialisation/general code Shared / common ownership (?)
F_* "Finale" (end of game) and "screen melt" code. Dave Taylor
G_* Main game loop/control Dave Taylor 
HU_* Heads-up display Dave Taylor
I_* System-specific code Carmack / Dave Taylor (sound integration)
M_* Miscellaneous Shared / common ownership
M_* Menu Romero? (I think I remember reading he wrote this but I forget where)
P_* Game logic/behaviour Romero
R_* Rendering engine Carmack
S_* Sound code Dave Taylor
ST_* Status bar Dave Taylor
V_* General graphic rendering Carmack
WI_* End-of level "intermission" screen Dave Taylor
W_* WAD file loading Carmack

 

Share this post


Link to post

Carmack made some complete, end-to-end Apple ][ games prior to ID Software (and prior to Softdisk), including all "maps" and "art", although those concepts are a little looser for those older games.

Share this post


Link to post

I think if he ever made any map, it would just have been a simple box to test some engine stuff in it, not anything with gameplay or intended to end up in the game.

Share this post


Link to post
2 hours ago, fraggle said:

Nope, I'm pretty sure Romero was responsible for DoomEd.

 

I think Carmack really focused entirely on the engine side. That certainly extended to the BSP builder too but apart from that, I think Romero and Dave Taylor did the rest.

Thanks for the correction. Wasn't 100% sure on the DoomED code, though I was 100% sure I'd be corrected if I had made a wrongful claim. :] Speaks levels to how closely they must have been cooperating at the time, if they were able to share such integrated tasks. Makes sense that it would be Romero as when I think about it, he is said to have coded all the special sector functions, like doors raising, elevator speeds, ec. No? Maybe prior to the editor Carmack had a more raw way of creating the bare-bones geometry needed to test basic rendering? I mean, before the Quake editor was made available to the public, there are examples of community maps (pretty complex - castle & moat with moving boat, I forget the file name) being created just using a text editor to specify geometry coordinates.

Share this post


Link to post
38 minutes ago, fraggle said:

Nope, I'm pretty sure Romero was responsible for DoomEd.

 

I think Carmack really focused entirely on the engine side. That certainly extended to the BSP builder too but apart from that, I think Romero and Dave Taylor did the rest.

I do recall listening to Romero talk about the early versions of the engine and how it was very inefficient, but when Carmack came across the concept of BSP trees, it really revolutionized the rendering and made possible Doom as we know it today. That's how Carmack always seems to be talked about, in terms of making the guts of the engine that ran Doom and Quake and made them into what they are, with regards to speed, lighting, rendering, etc.

 

In fact, this is the sort of thing that he would be focused on (it's about 1.5 hours long):

 

Share this post


Link to post
8 minutes ago, Soundblock said:

Makes sense that it would be Romero as when I think about it, he is said to have coded all the special sector functions, like doors raising, elevator speeds, ec. No?

Yes, exactly.

 

One of the big things about Doom's development is that they (Romero in particular) focused on rapid application development: trying to make as much use of these expensive NeXT workstations to develop the game as quickly as possible. The NeXT machines were ideally suited for this since they made building UI apps like this really easy.

 

But more than that, DoomEd is designed with it in mind too. For example, the list of linedef types can be easily edited through the UI. Suppose for example that you're Romero and you're making a level. You discover that you really want a new kind of door. It's trivial to do this: in DoomEd you just click a button to add the new linedef type, then you switch to another window to implement the new linedef type in the Doom source code. The whole thing takes maybe 10 minutes or less.

 

8 minutes ago, Soundblock said:

 

Maybe prior to the editor Carmack had a more raw way of creating the bare-bones geometry needed to test basic rendering?

It's a good question. I don't know, but I'd guess no. With Doom's development they did something very clever - the level format that the editor produces is different to the WAD format that the engine consumes. The BSP tool converts from one to the other as well as prebuilding the BSP tree etc.

 

This might seems strange to us since every editor we've ever used edits WAD files. But in terms of Doom's development it's a very smart move, because if you look at the alpha versions, the level format inside the WADs clearly changed multiple times. The earlier alphas didn't even use a BSP tree. Having this separation means that Carmack was free to completely rework the engine to work in a different way, or to experiment with different approaches, and all the levels would carry on working as before.

 

It might be tempting to imagine development as being a linear process - make the engine, then make an editor and start making levels. But everything we know about Doom's development tells us that this isn't how it happened at all - rather, the engine, game and levels were developed hand-in-hand throughout the process. They started small and gradually grew it, bit by bit, into the full game. Even as early as February 1993, with an unstable engine and hardly any game logic, they'd already got their tooling up to the point where they had been able to put together several example levels with fairly complex geometry.

Share this post


Link to post
2 hours ago, fraggle said:

It might be tempting to imagine development as being a linear process - make the engine, then make an editor and start making levels. But everything we know about Doom's development tells us that this isn't how it happened at all - rather, the engine, game and levels were developed hand-in-hand throughout the process. They started small and gradually grew it, bit by bit, into the full game.

Which is more or less precisely what you would expect from a small group of people who all had a decade or so of programming/development experience on their own who were unfettered by a large corporate entity driving them to produce. It's how they could get away with saying things like, "It will be released when it's ready."

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×