Modifying DOOM images,characters, and levels?

For a High School English project I need to make a video game about Dante going through Inferno (yes, I know there is already one). I thought that I could modify the game DOOM and make my own levels, and images for guns and such.

This is a very old game, and modifying it should not be too difficult. Does anyone have experience with this, and what tools should I go about using to do this? I am proficient in Java, Python, and C#... If that helps at all.


You need no programming experience. (And it's a good thing too, because "old" does not mean simple. "Old" often means damn complicated because they had to be very clever with limited hardware. John Carmack might as well have invented damned clever realtime game graphics programming, he's so bleeding edge. Hacking on DOOM's source code is not something to tackle in a couple of months before a June term-end deadline.)

DOOM has had level editors and art resource extractors/packers since DOOM was young. Now that the DOOM engine is open source and there are a million and one source ports with varying degrees of modern features, there's even more demand for level editors and resource tools than ever.

The best place to start is Doomworld's list of editors and utilities. Get yourself a source port of DOOM that you're happy working on and has the features you need, grab a level editor, grab a graphics/music/sound WAD editor, and start learning how to use them. This (old) guide is a helpful place to start learning basic concepts you'll need. Of particular use is its table of "I want to change this → Do this" instructions and list of common level-design bugs and how to fix them.


To edit monsters and textures of Doom, use SLADE. With that program, you can replace all of them easily.

To make new levels, use CodeImp's Doom Builder. Perfectly convenient stuff.

If you have technical difficulties, ask on the Doomworld Forums.