Let's Make a Custom Level for Duke Nukem 3D! Part 2
Last time, we made a basic room. I realized I forgot to tell you how to save it. Pressing the Esc key brings up the menu shown below:
This is where, by hitting one of the indicated hotkeys you can save your progress, load a map you were working on, start a new one and more. We'll be loading "duketroidvania.map" as shown below, since that's what I saved our map as last time.
I'm making sure to cover even small tedious stuff because my hope is, by the end of this, you'll know everything you need to make your own levels if you wanted to. Anyways, duketroidvania.map loads on command, giving us this:
Wait, what?? Our player start location is in the center of the map, but apparently I made the room way over there. Not to worry though, this is easily fixed. You can move the player where you want and hit the Insert key to set that as the new player start location.
Alternatively, you can hold the Alt key and drag the cursor to define a rectangle around the room. This will select it providing you got all four vertices inside the rectangle. Then you can click and drag the entire room around to relocate it.
That's better. Now our room is at the center of the map, no need to change the player start position. Though really, either method works. Now let's add some detail to our room. You might recall it was a big deal when Quake 3 came out that it could do curved surfaces.
They were still polygonal, but had level of detail to increase or reduce the polycount based on your distance from it and an easy tool for creating curvilinear surfaces within the level editor. Guess what? So does BUILD!
Pressing C near any wall brings up a visual guideline for the curve you're going to create. Pressing plus or minus increases or decreases the number of vertices in the curve. Careful now, there's a limit to how many walls you can have.
We'll use this in a minute. But first I want to stretch the room out so the curved wall is more oval shaped. To do this, click and drag a selection rectangle, but select only two of the vertices (the ones we want to move). Then drag them to stretch the room.
You can do this with any number of vertices. With this you can alter rooms however you like, and with the Alt-drag method you can move those rooms around, though you may have to detach them from the rest of the map first. But we'll go over how to do that later.
As you can see, the room has been stretched now. I'll do the same to the other side, then use the curved wall tool to make a one of the walls semi-circular. No need to show all those steps, since you already know how to do them.
There we go. The beginnings of an interesting room. You don't want your map to just be a bunch of square and rectangular rooms connected by hallways, that's boring. You've got to get creative with the architecture.
There's the 3D view of our room so far. Still ugly. As promised, we'll now change the textures. Often this is the first thing I do because I can't stand looking at the default brick texture for long. Hit V to bring up the texture selection menu. It will at first only show the textures used in the level (the ugly brick texture) but hitting V a second time brings up all the textures available for use:
Don't be overwhelmed. A lot of that is just frames of animation for items, which of course are 2D sprites. We'll go over how to create sprites later, though once you do, you assign what item, enemy, weapon, etc. they are using the texture selection menu.
Hmmm, what looks good? Pressing the arrow keys moves the selection to whatever texture you desire. Then just hit V to get out of the texture selection menu. Whatever texture you had selected upon closing the menu will be assigned to whatever surface your cursor was on:
Not too shabby. I've decided to go with an industrial theme for the level, to keep things simple. A concrete floor will suit it nicely. Now to use the same method to choose textures for all the other surfaces in the room:
See how much better that looks? Some textures look brighter than the rest because of the colors and shades used, but not to worry, there's an easy way to brighten or darken their shade. Just point the cursor at the surface whose shade you wish to alter and press + or -.
I've darkened the ceiling just a bit. Looks more consistent with the wall and floor textures now, wouldn't you say? But the ceiling is a little low, too. Let's raise the roof! Woop woop! Put the cursor on the roof and press PgUp a few times.
Again, huge improvement. It's starting to resemble an actual room instead of the default area in a level editor. That's all for this time, but stay tuned for next time when we'll learn to shrink, stretch and otherwise manipulate textures, as well as how to create child sectors within the room so we can start making good looking geometric details.
Stay Cozy!
Lol man, when Duke Nukem 3d came out, I was like 11 or something. The "nudity" in the game blew me away haha.
My friend Tyson west loves these old games. I bet you would be good friends with him.
Now I want to play Duke Nukem again.
It's just unforgettable experience to me. It was so fun to play when I was a kid.
I'm finding it interesting how Build seems to smart convert 2d shapes into a 3d world. Waiting for you to describe these parameters a bit so I can wrap my head around it more. Where is it getting the height of the world?
Got you covered, fam: https://steemit.com/gaming/@alexbeyman/different-types-of-3d-game-engines-and-how-they-work
Looks like things are starting to take shape but I wonder how long the whole thing would take to make a decent level? Seems like it could take quite a while to say the least.
Building a custom level, I was following your steps when I suddenly lost it, it was typical overwhelming lol
This makes me want to dive in but that's basically the case for any game I have great affection for. Idea is often better than the process.
@alexbeyman that was very creative of you
i think you have some to the world to offer
nice work
follow the steps you mention above i think i am arriving at something very close to what i saw on your post
This looks really fun! I never played DOOM... I wasn't old enough, but I did play a lot of Dark Forces, which ran on the same DOS platform. I'd love to get a chance to build.my own custom level that doesn't have impossible platforms to jump every other level.
I still remember the space invader from Duke Nukem that was sitting in a toilet with newspaper :d
You have to put him on your custom level!
Great idea. An entire level of shitting aliens, as far as the eye can see.
Lmao. I thought about only one alien doing his arse exercises on the toilet and reading a magazine.
But your idea is much better lol.