Did
you make any games like ZZT for the Apple II?
TS:
Yeah. So I guess I was 11. The first serious game I wrote for the Apple II was
-- the Apple II had this low resolution graphics mode, it was like 40 dots by
24 dots. But you had 16 colors to work with, which was just a huge number of
colors.
So I made this game in the style of Atari's Adventure: you are a
dot and you move the dot around the screen and you pick up different items and
go between rooms, so I learned most of the basic programming techniques back
then.
I
started out writing one program for each room in the game world. So I'd write
my own little input loop for each room, and then I realized, "Oh wow,
there are subroutines, so I can call a subroutine to do an input." And
that generalized everything.
Then I realized I could store the game board
procedurally rather than writing a program to draw them and then reading the
frame buffer to go from there. So I learned a huge amount of programming
techniques that way. I was probably 12 or so, in probably 1982 or '83 when I
wrote that.
Did you ever want to show those to the world? That would
be pretty amazing. If you ever wanted to release those, I could help you copy
the disks into disk images -- if you still have those disks.
TS:
Sadly, I don't. It just didn't seem important. Yeah, that's the tragedy. I
don't have the ZZT source code either. I wish I'd saved it all.
What happened to the source code? Did you lose it accidentally or...
TS:
No, I just didn't pay attention to it. There were so many other things going on
at the time. It was probably lost some
time when we were working on five Epic projects -- you know, working with Cliff
on Jazz Jackrabbit and James Schmalz on Solar Winds, and all
these other games.
There
were a few years at Epic where I'd gone from being a programmer, writing all of
the games, to just managing projects -- I was basically a producer for about
three years before I started working on Unreal as a programmer again. And that
was crazy -- that was 16-18 hours a day straight for years.
The Origins of ZZT & Epic
Did your parents have any experience with starting
businesses? Is that where you got the idea to start your own company?
TS:
My older brother, Steve Sweeney, who's 15 years older than me, grew up in
Maryland also, but then he moved out to the west coast and got involved in a
bunch of start-ups in San Diego. When I was about eleven, I went out there
several times to visit him. He was my role model for a few years there, because
he was still pretty young and he was working for a bunch of cool companies.
I got
to see the offices where he was working. He had all sorts of computers -- he
was doing crazy things for minicomputers and mainframe communication at the
time, and he'd be designing software and hardware drivers to run it. And he had
a cool car and he had his own little house near the beach.
That was really
cool, just to see that in the computer business, you didn't need to have an
ordinary job at a company -- just go wear a suit every day. You could have fun
between companies doing different projects.
So that really was a big influence on me in deciding to start a company.
Take
me through the process of when you started making ZZT.
TS:
The funny secret behind ZZT is it started out while writing a text
editor. I'd used Turbo Pascal and other languages on the PC, but I didn't like
any of the editors that came with them, so I started writing my own.
I got
bored with that at some point and decided to make the cursor into the smiley
face character, and then make different characters you could type that would
block the player or move around in different ways. See, you'd use this text
editor to draw the game board and then move around it and play the game. That
eventually evolved into the game and the editor ZZT.
It's
funny, because ZZT is one of few things that started out as a tool
before it was a game. And all the gameplay evolved from just thinking of random
weird things to do with the characters. There were some other games along those
lines like NetHack and Kroz.
I was
going to ask you about Kroz. When I first saw ZZT, I thought it
was a lot like Kingdom of Kroz from Apogee. Did that inspire you in any
particular way?
TS:
I'd been working on ZZT for several months -- I guess it was three or
four months -- before I saw Kroz or NetHack or I realized anybody
else had done anything like that. So I'd come up with a bunch of ideas on my
own, and then I played all of those games and saw that there were a whole lot
of other ideas to draw from.
For example, Kroz had these bombs where you have
this little thing that looked like a bomb on the screen, and then you touch it,
it starts a countdown, explodes, and clears out some blocks. So I borrowed a
bunch of ideas from it at that point.
That's
kind of a common pattern in everything I do. One minute I'm completely on my
own and I think, "Wow, I'm a genius, I can't believe this idea nobody else
had!" And then you look at the references on it, and it turns out that a
hundred other people have done the same things in the 1980s. And then you look,
and you get your additional ideas from those. Between invention and stealing,
you come up with a really good combination of ideas.
When you were writing ZZT, where did you live? I
read that you were going to school.
TS: I was in the University of Maryland at the time.
Gosh, I guess I started in 1989 -- that was crazy. At that point, I was two
years into college, going to school; I was doing mechanical engineering at
University of Maryland. University of Maryland is a party school unless you're
in engineering, so that was really tough, actually. I learned a lot of useful
math that I wouldn't have learned on my own.
I
basically studied and did school work all day, then programmed all night --
working on ZZT. On the weekends, I'd come home, and I had this little
shareware business I was growing after I released the game.
I'd receive a bunch
of orders through the mail (people would send their checks in), then I'd copy
disks on the computer and send them out. At the same time, I was working on Jill
of the Jungle, the next game.