INTERVIEW
Douglas Engel
Douglas
Engel is a programmer and artist for the upcoming
4-Play Jaguar release BattleSphere,
and a nice guy to boot!
MT>
Who comprises the production team for Battlesphere?
DE> Other than myself (Douglas Engel), there are also my good
friends Scott LeGrand and Stephanie Wukovitz. Anything you see
or hear in the game came from one of us.
MT>
Singularity, Star Raiders 2000, Star Battle, Battlesphere
– what’s the story behind the names?
DE>
Wow. That goes back into the history quite a long time. Let's
see. The way I remember it,
"Singularity"
is the original name of the game that Scott and I came up with
back in December 1993. It was going to be something along the
lines of BattleSphere or X-Wing/TIE Fighter, except
a black hole was going to be a central part of the universe. We
sort of abandoned that idea when it became clear that representing
the black hole convincingly was something we didn't think we could
achieve.
"Star Raiders 2000" was never a name we used
for Battlesphere. We DID offer to write an updated Star
Raiders for Atari back in October/November 1993, and that's
what got Atari interested in signing us as developers. However,
they wanted the "Star Raiders" title for their
own in-house teams and did not want us making it.
"Star
Battle" is the name we changed "Singularity"
to when we decided to take the singularity from the universe.
"Star Battle" was the name of a game which Scott wrote
on a pr1me mainframe computer (in FORTRAN77, I believe) back in
1982/83 or so. The game was a text-based game that played similar
(but far superior to) the "Star Trek"
(a.k.a. *TREK) games which were popular on mainframes and
BBS's at the time. It was really cool and fun to play. It had
all sorts of random events and mysterious unexplained things in
it. I recall there was even a space amoeba that would could encounter
periodically. It was a very popular game on the computers at school.
We took the name because it sounded cool and it had a history
and Scott had a pretty good claim on the rights to the name.
"BattleSphere" was the last name we came up with.
To be honest I don't recall why we wanted to change the name to
this. It does sound better. I think perhaps people didn't think
"Star Battle" was exciting enough....
However,
the "Singularity" roots still exist in BattleSphere.
The executable is still named "singXXX.bin" (the XXXX
is a date).
MT>
It is my understanding that Battlesphere covers new ground
in Jaguar programming.
DE>
Well, it's definately one of the most refined Jaguar games ever
done. We rewrote a lot of code when we figured out how to do things
in a new and more clever ways. The sound engine I wrote (for example)
went from 4 to 8 to 16 audio tracks the more I learned about squeezing
bandwidth from the DSP. I rewrote it 2 times over the course of
the game. Scott did much of the same type of thing. I don't know
I'd call it "new ground" because these were things people
did back in the early days of writing games. This was BEFORE people
wrote games and when they found out they were too slow they threw
out their computer/video card and got a faster one. We were weened
on this type of programming, and we massaged the code in BattleSphere
until we were sure it was as optimal as possible. Given more time
we know we can get more out of it even now.
MT>
What unique features/effects does Battlesphere contain
that other Jaguar software does not?
Realtime
Raytracing on the menu screens. Interactive audio and music that
matches things that are happening in the game. Working 16-console
networking with distributed AI that divides the AI tasks over
all networked consoles and actually makes the game faster when
more CPU's are working on the AI player actions. Let's see....
we also have some animated 16-million color screen effects on
the titles. We've got a killer subsumption architecture Artificial
Intelligence engine. Our polygon engine uses the blitter in some
strange ways that make it about the fastest rendering engine anyone
ever wrote. Heck, we beat on the Jaguar so hard that we had to
put breaks in the screen video objects to give the DSP cycles
to play the audio.
MT>
The Battlesphere project has been around for quite some time.
DE>
No kidding.
MT>
Could you describe Battlesphere’s history and progression.
DE>
I suppose I could, but that's probably a topic which would be
better covered in a book. It's not really something that could
be covered very simply in a couple of paragraphs. If someone were
really curious, they could dig up old issues of "Atari
Explorer Online" and read the articles that were written
for that publication as we were making progress. I think that
would be a more accurate history anyhow, since a lot of things
that happened I either have forgotten about or gotten muddled
in chronological order.
MT>
Knowing that Battlesphere was created in your team’s spare time,
how much developoment time has been logged since its’ birth?
DE>
That's totally unknown. Probably a good estimate would be 3-4
man-years of work.
MT>
With Hasbro releasing the Jaguar platform, issues of encryption
have emerged. Can you describe, to our less technical readers,
what the Jaguar encryption entails, and why this issue was such
a problem?
DE>
Issues of encryption have always been present. Anyone needing
to realase software on the Jaguar would have to get it encrypted
in one way or another. In the early days you had to get approval
from Atari and pay them a fee and they would encrypt your game.
Now Hasbro owns Atari, and they don't really have the time or
manpower to worry about the Jaguar. They made the system an open
system and that allows developers to encrypt their own games.
The problem is that nobody knows where the encryption tools are
anymore, and therefore the developers are on their own.
MT>Can
you describe, to our less technical readers, what the Jaguar encryption
entails, and why this issue was such a problem?
DE>
Encryption, for those of you who do not know, is the security
that prevents unauthorized companies from making games for a system
without paying royalties to the system manufacturer.
When
you boot your console, the system decodes the encrypted game and
then runs it. Since only the system maker has the key (a sort
of "password"), only they can encrypt a game for their
console. With this in place, anyone releasing the game needed
to get Atari to encrypt the software.
The
reason behind all this is that the old Atari 2600 had no encryption
whatsoever, and eventually there were dozens of companies producing
games for the console, which cut deeply into Atari's game sales,
and ultimately brought about the crash of the console market in
the early 80's. When the Jaguar was designed, Atari put in a special
code to make sure that only encrypted games would run on their
system. This meant that Atari controlled who was able to publish
games on the system and also make sure that Atari received their
royalties from the same of those games.
Essentially
what encryption does is use some algorythm to combine all the
data in a game with a key. A simple way to think of it would be
to treat the key as a number and the software as a number and
perform some math between them. After all, all data in computer
memory are just numbers. So, if your key was just the number "7"
and the software was the number "8638" you could use
division as the algorythm and divide 8638 by 7. The result is
the magic number "1234". A developer could know that
the key was "7" and the magic number was "1234"
and that his code was the number "8636", and easily
figure out the algorithm. But if you make the algorithm complex
enough, the way the key and the code are combined to get the magic
number becomes incredibly complicated.
In
the case of the Jaguar, we know that the "magic number"
is the hexadecimal value "3DODEAD"!
MT>
Can you give us any clues to how you were able to encrypt the
binary without using any hardware bypassing techniques?
DE>
That's
easy. I'm surprised everyone doesn't do it. All it takes is time.
Essentially what I do is I have a small block of RAM hacked into
a cart containing the BattleSphere binary. This block replaces
a section of the EPROM which we set aside for this purpose. All
I do is use a microchip microcontroller to keep rebooting the
Jaguar and testing to see if the code runs. One of the GPIO (general
purpose I/O) lines in the Jaguar is set when the program successfully
runs, so the microcontroller can tell if it booted properly. If
the system boots properly then the image on the cart is a working
"encrypted" game. If not then the microcontroller stops the Jaguar,
goes into the RAM section of the cart and changes the number stored
there by 1. After that, it tries again.
Do
you recall those old bicycle locks that had the combination lock
on them which had 3 wheels with the digits 0-9 on them? Well,
you could open one of those locks simply by starting at 000 and
then trying 001, 002, 003... and so on. You'd open the lock in
at the most 999 tries. This is very much the same thing. I just
keep changing this block of the BattleSphere code until
it has the right number in it to generate the right answer. Simplicity
at it's best.
MT>
You’ve chosen to donate all Battlesphere profits to the Juvenile
Diabetes Foundation. Very generous! Certainly a good cause, but
why this cause over another?
DE>
Because
Stephanie herself has been afflicted by diabetes and we all have
seen her struggle with it and we've all had a number of scares
from some close-calls she has had because of it. We know what
it's like to be close to someone with diabetes and we want to
do what we can to try and help other people avoid the things we've
gone through.
Good
Deal Games would like to thank Douglas, as well as Scott &
Stephanie,
for
their continuous dedication to
the BattleSphere project.
Visit
the 4-Play's
BattleSphere Website
E-Mail
Doug
Engel
Are
You Involved with Classic Games?!?
Let us know, and we'll interview you!
E-Mail:
GOOD
DEAL GAMES
GOOD DEAL GAMES HOMEPAGE
Copyright © 2003, GOOD DEAL GAMES