|Interview with Ken Silverman
Could you tell something about yourself? And about your game career?
My name is Kenneth Silverman and I am the younger of two brothers. According to my parents, I was
born exactly at midnight on the night of Halloween (November 1, 1975). I was raised in Yorktown,
NY until 1980 when my dad got a job as a professor at Brown University. So our family of four
moved to a nice house in East Greenwich, Rhode Island, about a week before I started
My first computer was a TI-99/4A (Texas Instruments) which my parents bought for $50 in December
of 1983 during the 'after Christmas' sale. First my father successfully resisted the stampede for
the home computer: as one of the founders and chief technical advisor at Sphere Technology back
then, a computer company, he said the last thing he needed was a computer awaiting him at home
at the end of a long day. But Alan (11) and I (8) really wanted one. Ever since then, I was
My parents refused to buy software, so we began programming the computer ourselves. Back in those
days we made a Pac-Man-type game, a game called Sea Worm (1984) and several others. My
family got me started in programming, but several years later I was beyond their help. In school,
I used to love study halls because I would spend the time thinking about code. When my brother
got shipped off to college in 1990, my hobby started to get more serious. I made games such as
Kentris (2 player Tetris game), Sibros (Super Silverbrothers - Super
Mario Bros. clone), and Ken's Labyrinth (my first game on the market). In 1993, just
a month before my first semester at college, I signed a contract with
Apogee Software to create a new 3D engine
called the Build engine. This engine, upon which
Duke Nukem 3D and other famous games were constructed, went on to become one
of the most successful (if not the most successful) engine in terms of number of games released
(according to Apogee/3D Realms).
Screenshot of Kentris
My programming wasn't supposed to get in the way of college, but that's not the way it
happened - I didn't do very well that first semester. When I found out I only passed half my
classes, my dad decided to let me take time off to work full time for Apogee. So for 3 years
I worked on the Build engine. While I spent more than half my time in Rhode Island, I ended up
taking a total of 10 trips to Dallas and Seattle to help the game teams work with my code. After
several games were released, things quieted down a bit and eventually I decided (with a lot
of help from the parents) to return to college while I was still young.
College was fun while it lasted, but now I'm a 27-year old graduate (Yay!). Now I'm back to
recreational programming full time. When I show off demos, people often ask me which
'computer courses' I've taken. I have to tell them the truth, which is "None!". Beyond the
basics, I figured out almost everything I know about programming on my own. By starting young
and being independent, I have the advantages of a better understanding and more experience.
Everyone in my family works in a technical field. My dad is a professor of electrical engineering
at Brown and my mom works at GTech programming character recognition for lottery tickets. My
brother is the head of his own small company, called
Advanced Systems. In the old days, he was
as much of a computer nut as I was. He still is, but we've grown into separate fields of
interest. For me, programming is not just an interest or a hobby - it is my life.
Other hobbies of mine include:
- Collecting maps: I can draw the borders of all U.S. states from memory. I used to draw maps
for fun in elementary school.
- Piano: I can play just about any song I've heard. People say I have a good ear.
- Music: Besides my own, I like to collect TV theme songs and anything by Weird Al Yankovic.
- Sports: Ping pong, volleyball
How many games/projects have you made or worked on?
The most well-known games are:
- Kentris (1991): 2 player Tetris game
- Super Silverbrothers (1991): Super Mario Bros. clone
- Ken's Labyrinth (1993): first
Wolfenstein 3D clone
- Duke Nukem 3D, Shadow Warrior, and Blood:
Build engine (1993-1996) games that I worked on directly
Screenshot of Sibros (Super Silverbrothers)
I have literally hundreds of other home-made programs like these, but for now they will remain
on my hard drive. On my website you can download some of my better ones.
What was it like working for Epic MegaGames, a famous game company, during the early
Working for Epic MegaGames wasn't much
different than what I was doing already. They didn't have an office at the time, and I did all
my work at home. The main difference was that I didn't have to go to the bank or post office
every few days (before Epic, I was selling Ken's Labyrinth myself).
A long time ago (March 1993), Mark Rein of Epic Megagames visited my house to help finish up the
Epic version of Ken's Labyrinth. He was looking around my house for inspiration and this
wooden dog caught his eye. It became 'Sparky' in episode 2 of Ken's Labyrinth.
In the hint book of Extreme Rise of the Triad, I found the following in an interview
with Tom Hall (game designer/producer of Triad): We were working with the Wolfenstein code,
so we had to take out all the engine code and make up our own. Mark Dochtermann, William
Scarboro, and Nolan Martin worked hard on it, and with help from Ken Silverman, our engine guru,
we got it back on track. What was it like working for Apogee/3D Realms back then, especially
seeing you were very young compared to the other staff?
The age thing was most pronounced in 1994, when I was 18, and I think the next youngest person
was either Todd Replogle or Allen Blum, who I think were both 26 at the time. I got along fine
with those guys - they were like older brothers to me. I didn't know anyone else in the area, so
I pretty much spent all day and all night at the office. Of course, I had no problem with that.
There was some friction with the Rise of the Triad team, but I
think that was more because they were working on a competing project, and not because of my age.
In 1996, Apogee hired Billy Zelsnack along with his younger brothers - that was the first time I
wasn't the youngest at the company.
My biggest problem with age was in car rental - most places don't let you do that until you're
25. In 1994 and 1995, Apogee rented an apartment and leased a car for me. In 1996 (when I was
still too young to rent a car), they realized I wasn't going to live there fulltime, so they
sold the apartment and turned the car into the company car. I got really tired of asking people
Apogee/3D Realms says the following about your engine on their website: The Build engine,
upon which Duke Nukem 3D was constructed, went on to become one of the most successful (if not
the most successfull) engine in terms of number of games released, with 12 published games.
Notable games developed using the Build engine include Witchaven, TekWar, Shadow Warrior, Blood,
PowerSlave and Redneck Rampage. Could you tell how this great project started and how it
Around March of 1993, id Software
released a set of alpha screenshots of DOOM. That's about when I
started to work on Build. I remember studying those early screenshots of DOOM very
well. It was a fun challenge and like most projects, I knew it would impress people (if I
could pull it off). DOOM had an impressive list of features. I decided to start with
angled walls with a little prototype I wrote in QuickBasic (named PICROT).
Here is a list of important highlights during the development of the Build engine. The
history includes everything from business deals to important features that were added to the
engine. On my website you can find a more extensive list.
- 05/05/1992: Wolfenstein 3D 1.0 released
- 06/09/1992: My brother, Alan, hogs the computer by playing a new game titled
- 06/16/1992: I decide I can win over his time by making my own version, originally titled
Walken (Walk + Ken)
- 10/03/1992: I change the name of the game to Ken's Labyrinth and it is coming along
well. My dad convinces me to write to 6 software companies to ask them to sign an NDA to review
Ken's Labyrinth. I suggested we add Apogee Software to the list even though they already
had the Wolfenstein engine.
- 10/10/1992: Scott Miller of Apogee Software signs an NDA to evaluate Ken's Labyrinth.
- 10/27/1992: Not being satisfied with the responses from the first round of letters, I send
letters to 9 other software companies.
- 01/01/1993: Ken's Labyrinth is released to the Internet using my brother's
Advanced Systems company name.
- 01/13/1993: Ken's dad signs a marketing agreement with Epic MegaGames for
- 03/29/1993: PICROT4.BAS: My first attempt at a new style of 3D engine which supports
angled walls like in DOOM. Since I had no editor, the map was typed in manually in the
code. Ceilings & floors were a solid brown color.
- 04/13/1993: I decided I had enough 'new engine' related files to create a new directory. I
just needed to pick a name. I remember using a thesaurus to find synonyms for the word,
'construction' because it had too many syllables. I decided to name the directory Build.
- 05/??/1993: Began my first original angled wall / varying height ceiling & floor engine. Maps
were still based heavily on the grid concept. I had enough to show off quite an impressive demo
before graduating high school in June, 1993.
- 08/13/1993: On a family trip to Toronto, Mark Rein of Epic Megagames makes a proposal for
my new engine (unsuccessfully).
- 08/24/1993: I sign an employment agreement with Apogee Software. A special provision on the
contract says that Apogee cannot interfere with my education.
- 09/01/1993: I start my first year at Brown University.
- 11/??/1993: I impress my CS15 instructor, Andy van Dam (also co-author of the popular
book, Computer Graphics, Principles and Practice), by offering him engine demos of
Ken's Labyrinth and the latest Build engine. He doesn't get impressed easily!
- 12/03/1993: Duke Nukem II 1.0 released.
- 01/02/1994: I finally rewrite my engine using the 'sector' idea after talking with John
Carmack on the telephone.
- 01/25/1994: I file for a leave of absence from Brown (after parents see my first report
- 04/24/1994: Added 'fake' looking up and down after discovering that it wasn't too difficult
to shift the screen up & down. Three days later, the same effect mysteriously appears in Apogee's
other game that they were working on at the time, Rise of the Triad. What a coincidence!
- 07/02/1994: First test of a Build game over a modem.
- 02/01/1995: Made a DOOM to Build converter for the first time.
- 12/31/1995: First tested player movement code with no lag over a modem/network.
- 12/31/1995: I change working status from employee to consultant at Apogee Software.
- 01/29/1996: Duke Nukem 3D 1.0 released.
- 12/31/1996: I terminate consulting services with Apogee Software peacefully, and by
- 01/19/1997: I return to Brown University after a 3-year leave of absence.
- 03/07/1997: Blood released.
- 05/13/1997: Shadow Warrior 1.0 released.
- 06/20/2000: Complete Build engine source code released on my web site.
A candid photo of Ken in his Rhode Island 'office'. Pictures are worth a 1000 words: see how
many objects you can identify! (March 1994)
During the development of the Build engine, I spent over half my time in Rhode Island (my
homeland!). I went on a total of 10 'business' trips from 1994 to 1996. The Apogee/3D Realms
office (which is located in Garland, Texas) was a destination to all of these flight paths.
I also visited Redmond, Washington a few times to help out the Blood team (and also
Lobotomy Software when they were still working under the Apogee/3D Realms name).
You built all the tools for the Build engine games and you have skills in music too.
On the Ken's Labyrinth game you touched everything (art, sounds, engine, etc.). How did
you do that - where did you get the time to be multi-talented?
That's easy: I had no social life. When other kids were playing sports (or watching them on
TV), I was working on my computer. I could do that because it was entertaining to me. I took
piano lessons from age 6-11, so that's how my musical skills developed. I noticed you were
careful not to put 'art' and 'skills' in the same sentence... that's ok. I'll do art when I
have to, but it's very time consuming. Sometimes, I don't spend as much time as I should on
Screenshot of Ken's Labyrinth (with Sparky)
Which applications did you use and how long did it take to make a game?
Other than operating system and compiler, I write all my own tools. I've written world editors
(Build), artwork editors, sound editors, MIDI sequencers, text editors, and I've been
thinking about writing my own C compiler/optimizer. I write most of these tools for just
myself. That's why I haven't put much effort into writing a fancy GUI.
What do you like most while creating a game?
You mean other than playing... oops, I mean 'testing' it? The best part is when somebody else
makes a significant contribution to the project, or the watching somebody else drool over
something I worked on.
Do you have any regrets about leaving Apogee/3D Realms?
Sure, I miss all the fun we used to have testing the game. The reality of it is this: the only
way I could have maintained a future with Apogee/3D Realms is if I went into direct competition
with Quake. At the time I was far behind, and I just wasn't
interested in making a commitment with Apogee for several more years (if you estimate the
release date of Duke Nukem Forever, that would have been at least a 7 year commitment!).
I thought it would be best if I returned to school while I was still young.
Do you still do any 3D programming?
As long as I'm alive, I'll always be doing some kind of programming. I have many programming
interests besides 3D graphics: 2D graphics, sound & music, utilities, games, compression, and
of course optimization. 3D graphics will always be very high on my list.
Currently I'm playing around with a new voxel engine (called Voxlap), but I don't know
if I'll get anywhere with it. Right now, it supports voxels placed anywhere (built-in room over
room), look anywhere (6 degrees of freedom), and some basic editing functions. More information
about this project on my website.
Screenshot of the Voxlap demo (under construction - in cooperation with Tom Dobrowolski)
What is a voxel? Where does the name come from?
Voxel = volume + pixel. You can think of a voxel as a pixel with volume - a 3D
pixel. It is an individual cube inside a 3D array of cubes, just like a pixel is a square inside
a 2D array of squares. I actually got the name out of an old computer graphics book.
Do you have plans for Ken's Labyrinth 2? And do you like to make other computer games
in the future (if so, what kind of game do you prefer to develop)?
I would consider making a new game with the same type of humor as Ken's Labyrinth (I
still love those walking holes ), but not a sequel to Ken's Labyrinth. Maze games just
don't sell anymore. Another fun project might be a game that makes fun of other games... sort of
like what Weird Al does to music. I just don't have the time to write an entire game myself
anymore. With Ken's Labyrinth, I had Andy Cotter to design maps for me. Until I find a
team of talented artists and game designers, it's unlikely that I'll produce any competitive
games in the future.
Do you want to achieve a specific goal in the gaming business?
Milestones are nice, but I do programming because it's a hobby more than anything else. I get my
kicks when I make something work for the first time, when I optimize a piece of code beyond
Can you release a version of Duke Nukem 3D with features that were in newer Build
Some features wouldn't be difficult, such as voxels because 99% of the code was part of my
Build engine. Other features like room over room were added by individual developers - so
that would take a lot longer for me. The hardest part of any update (if I had to do it all
myself) would be to find the right places in Todd Replogle's code. I haven't looked at his code
in a long time. But all this doesn't matter because I haven't been keeping in regular contact
with Todd. And even if I did get it working, I would have to seek permission from 3D Realms.
Screenshot of Duke Nukem 3D
What's your favorite DOS and Windows game?
DOS: Duke Nukem 3D, Windows: Quake 3 Arena (since September 1999, I have been
playing Q3TEST way too much - I play under the name of 'Awesoken': Awesome + Ken).
By the way, if you want to add questions, please go ahead.
As you wish. I'm going to have fun with this...
Hey Ken, why are you so great?
Excellent question! If you're familiar with Duke's famous book from the Duke Nukem II
intro, I want to let you know that my greatness far exceeds that. You see, it all started when...
oh, never mind. In reality, I'm quite a modest person. I do like to kid around sometimes.
Ken Silverman: www.advsys.net/ken