Vietnamese Sandwiches and Duke Nukem 3d

Thursday, May 15th, 2008


Today was an unusually sunny day in Portland, so I had a lazy morning of making coffee and washing my scooter. Afterward it was around lunch time, and despite having bought a variety of Asian foodstuff from Uwajimaya yesterday (involving accidentally driving my scooter onto the highway), decided to go on a joyride for a Vietnamese sandwich called bánh mì. This cheap, flavorful meal is made up of thinly sliced pickled carrots, daikon, onions, cilantro, and meat or tofu served on a baguette. Popular bánh mì fillings include pork, paté, chicken, and head cheese. I had pork today, and washed it down with a bulletproof can of coconut juice. I was the only one in the restaurant so I read a car magazine that was lying around and tried to make small talk with the only employee. The sandwich was so good, I ordered another to go. The cost of two sandwiches and drink was exactly $6.

If this place were closer, I’d be going for lunch every day. Instead, it’s a pleasant twenty minute drive along a river, across a bridge, along a creek, through some industrial zones and quaint neighborhoods. Stupid Portland. But if you’re ever in the mood for pure, cheap deliciousness, head over to:

Binh Minh Sandwiches
7821 SE Powell Blvd Portland OR


Last night, I installed a OS X port of a first person shooter I played 12(!) years ago in DOS called Duke Nukem 3d. The port was actually only the shareware version, but I was able to open the installation package and see what files I needed to pull of my old CD and where to put them for the full version to work. As soon as I fired it up, I was taken back to the Junior Year of highschool spent sitting in my bedroom shooting pig cops, octo-brains, and hookers. Duke3d was a pretty revolutionary game at the time, as it offered more interactivity, personality, and fairly decent graphics. But what made it interesting for me was that it came bundled with the level editor they used to make the game. The editor was called Build, a cryptic DOS program that looked like a primitive AutoCAD. There were no tool palettes, no pull-down menus. Every function was performed by keyboard shortcuts that you had to memorize to be good at anything.

All of the level geometry was drawn solely from a top down view. From there, you hit a key to instantly go into a 3d view of the level where you could glide around and point to surfaces to assign textures, change heights and slopes, etc. Advanced functionalities such as water and doors involved placing special sprites called “sector affectors” and changing their parameters to suit the need.

I spent much of the summer and weekends lost in the maps I created. I had never been able to create a virtual space so quickly, and I was mesmerized. But what what made it all the better is that I could actually dial up a friend via modem and have deathmatches in the maps that we made. Each battle inspired changes to the levels: the addition of a secret passage, moving stuff around, adding extra rooms and weapons, trying to rebuild to my advantage. Some of the maps got so complicated that only I knew which switches controlled which doors and where the secret rooms were. I have fond memories of all of this.

Luckily, I saved all the major versions of my finished maps. Today I loaded them up and took a virtual trip down early 3d memory lane. I went a little overboard on screenshots, but I’m only posting a few.

One of the first maps I made was called Nexus. It was basically a dark arena with piles of weapons and various side rooms. I promoted myself in huge letters on the arena floor.

Here is view from the ground of a light tower and an endless supply of micro-rocket launchers. A player could sent a volley of rockets all over the map to light it up and find the opponent. Explosions would echo in the darkness.

Here the underground power generator for Nexus.

This map is called Water2, and is basically a water treatment plant. Canals and waterfalls are interconnected, allowing the player to move around the level exclusively underwater if they wanted to. This sign above the canal had two nicknames for girls I had crushed on. I can’t remember who they are.

In this map called Zoned, I designed two outdoor fortresses with all kinds of locking gates, safe rooms, sentry guns. Here’s a view from the balcony of one fortress to the other. It was a good place shot shoot rockets from.

A lot of my maps because a little security happy. This panel controlled the doors in just ONE of the buildings in Zoned (and it wasn’t even one of the main buildings). These days, I have no idea what all these switches do, but they all do something. It makes going through my old maps a little like solving a puzzle.

A lot of the locking doors lead to a security room with a video monitor I could use to monitor key points around the level. I could lock myself in the room and watch my opponent approach.

Here’s a view down the main alley of a map called Place II. I don’t remember what Place I was. This level made extensive use of catwalks and locking doors.

I crammed so many extra rooms into most of my levels. They didn’t add anything gameplay wise, but they made the spaces feel more real. In Place II, I put in this reading room and a full library. The same map also had bedrooms, kitchens, bathrooms (including a toilet you could crawl into the sewers from), a working pool table, highway, water treatment area, water pump room, jail cells, a labyrinth, security rooms, a weird strobing cult worship room, a shrine to myself, and multiple death pits.

Here’s a small door to a secret room in another map called Station. To get in, you have to bounce a shrink ray shot off the wall so it hits you. Once shrunk, you can go through the door. I don’t remember what’s inside.

Station was the largest map I made. It was a sprawling space station of 6 different main areas, each with a different theme. They were interconnected by walkways, subway trains, and teleports convering mostly at the transit hub pictured. I have no idea how we ever found each other playing this level.

This picture is from one of my favorite levels called Interwoven. Basically, this level was about connections. Hallways connected with hallways, went outside and underground. At the time, I was pleased with the structures I could build despite the limitations of the engine. In this room that holds the rocket launcher, I had to manually shade each face of the geometry to simulate light and shadow. The engine wouldn’t calculate shadows, so you had to define them all manually. It was a pain in the ass, but the results could be pretty good.

The lower hallways had starry teleport walls at the ends. If someone was chasing you, you could shoot a rocket straight ahead and it might just hit their back.

Another great spot in Interwoven was this windowed room with indoor fountain. Its sole purpose was to fake the light coming in through windows, but I placed a rocket launcher on top of the fountain that you could pick up with a skillful leap across.

One of the maps we played the most was built between a friend and I. We called it Hightime because the precarious deathmatches took place on catwalks above a bottomless pit. Playing in this map was zen, as you had to run around and leap from ledges while shooting someone and not falling to your death.

It was amazing to go through these spaces again. I have such vivid memories of them, like other parts of my childhood. The next step will be to coordinate some deathmatch with my old friend, in Dallas, in our old rooms. Do you hear me A.? It’s time to kick your butt all over again!

Page 4 of 93« First -23456-10-Last »