WEBVTT

00:00:00.000 --> 00:00:01.600
You know, I was digging through some old computer

00:00:01.600 --> 00:00:05.099
magazines the other day from around 1987. Oh,

00:00:05.099 --> 00:00:08.279
yeah. And it is just wild how we used to define

00:00:08.279 --> 00:00:11.199
futuristic back then. I can imagine. A lot of,

00:00:11.220 --> 00:00:14.519
like, neon grids and shiny chrome robots. Exactly.

00:00:15.099 --> 00:00:18.960
But in gaming, if a game said it was 3D, it usually

00:00:18.960 --> 00:00:20.960
meant, you know, a black background with some

00:00:20.960 --> 00:00:22.960
green wireframe lines. Right. The Battlezone

00:00:22.960 --> 00:00:25.820
era. Yeah. Your brain was basically doing half

00:00:25.820 --> 00:00:27.280
the rendering work. You had to pretend those

00:00:27.280 --> 00:00:29.519
triangles were spaceships. Totally. But then

00:00:29.519 --> 00:00:32.020
I hit this review that just, it stopped me cold.

00:00:32.159 --> 00:00:35.060
It was for a game from 1987 that looked like

00:00:35.060 --> 00:00:37.399
it fell out of a time machine from, I don't know,

00:00:37.500 --> 00:00:41.020
mid -90s. Okay. No wireframes. It was solid.

00:00:41.320 --> 00:00:44.460
It had rolling hills, actual lighting, shadows,

00:00:44.859 --> 00:00:47.140
a physics engine. It was like seeing a color

00:00:47.140 --> 00:00:49.219
photo in a newspaper from 1850 or something.

00:00:49.439 --> 00:00:51.820
That is the perfect way to describe the arrival

00:00:51.820 --> 00:00:54.609
of Zark. It wasn't just a step forward. It was

00:00:54.609 --> 00:00:57.530
a completely different species of software. And

00:00:57.530 --> 00:00:59.369
that's exactly what we're unpacking today. We're

00:00:59.369 --> 00:01:01.729
talking about Zark, or as you might know it from

00:01:01.729 --> 00:01:04.329
the ports, Virus. We're going to look at why

00:01:04.329 --> 00:01:07.930
this game was a technical miracle, why the controls

00:01:07.930 --> 00:01:12.769
made grown adults cry, and just the sheer genius

00:01:12.769 --> 00:01:15.370
of the engineering that made it all possible.

00:01:15.590 --> 00:01:16.989
And we have to talk about the hardware, too.

00:01:17.519 --> 00:01:19.180
Because you can't really talk about Zark without

00:01:19.180 --> 00:01:21.579
talking about the machine it was born on. The

00:01:21.579 --> 00:01:24.400
Acorn Archimedes. The Acorn Archimedes. This

00:01:24.400 --> 00:01:26.760
is a piece of hardware history that I feel like

00:01:26.760 --> 00:01:28.760
a lot of people in the States probably missed.

00:01:28.900 --> 00:01:32.439
But in the UK, this thing was legendary. It absolutely

00:01:32.439 --> 00:01:36.040
was. The Archimedes was the first home computer

00:01:36.040 --> 00:01:39.280
built on the ARM architecture. And if that sounds

00:01:39.280 --> 00:01:41.200
familiar to you. It should. It should. Yeah.

00:01:41.280 --> 00:01:43.819
It's because ARM chips are powering pretty much

00:01:43.819 --> 00:01:45.900
every smartphone on the planet right now. This

00:01:45.900 --> 00:01:48.959
computer was like the great grandfather of the

00:01:48.959 --> 00:01:50.840
iPhone in your pocket. So this machine was a

00:01:50.840 --> 00:01:53.939
beast. An absolute beast for 1987. And Acorn

00:01:53.939 --> 00:01:56.439
needed a way to show it off. They needed a killer

00:01:56.439 --> 00:01:58.500
app that would make people look at their Commodore

00:01:58.500 --> 00:02:01.859
64s and just weep. So they called David Braben.

00:02:01.920 --> 00:02:03.620
Who was already gaming royalty at this point

00:02:03.620 --> 00:02:07.709
because Elite. Right. Exactly. Braben is a legend.

00:02:07.769 --> 00:02:10.650
And he created Zark specifically to show off

00:02:10.650 --> 00:02:13.490
it was a flex. The whole point was to say, look

00:02:13.490 --> 00:02:16.330
at this processing power. So let's set the scene

00:02:16.330 --> 00:02:18.889
visually. You boot this thing up. What are you

00:02:18.889 --> 00:02:20.949
seeing that just blew everyone's mind? Okay,

00:02:20.990 --> 00:02:24.629
so you're seeing a landscape. but not a flat

00:02:24.629 --> 00:02:27.009
scrolling background. You're seeing this checkerboard

00:02:27.009 --> 00:02:30.330
grid of like green and brown that actually undulates.

00:02:30.610 --> 00:02:33.909
It has hills and valleys and coastlines. Wow.

00:02:34.030 --> 00:02:36.050
And you're flying this little ship over it that

00:02:36.050 --> 00:02:38.009
casts a real shadow on the ground that moves

00:02:38.009 --> 00:02:40.460
with you. And this is what they called solid

00:02:40.460 --> 00:02:44.020
3D. That was the buzzword. Solid -filled polygons.

00:02:44.139 --> 00:02:46.520
Before this, everything was sprites, just flat

00:02:46.520 --> 00:02:48.180
images moving around. This is a world you could

00:02:48.180 --> 00:02:51.039
actually, you know, fly into. The reception must

00:02:51.039 --> 00:02:52.979
have been insane. I saw a note here about ACE

00:02:52.979 --> 00:02:56.240
magazine, Advanced Computer Entertainment. They

00:02:56.240 --> 00:02:59.159
gave it a score that seems, well, it seems mathematically

00:02:59.159 --> 00:03:02.780
impossible. 979 out of 1 ,000. It was the highest

00:03:02.780 --> 00:03:04.780
rating they had ever given a game at that point.

00:03:04.900 --> 00:03:07.319
That's incredible. The headline was literally...

00:03:08.170 --> 00:03:11.110
solid 3D the future of games. And, you know,

00:03:11.150 --> 00:03:13.250
they weren't wrong. It took the rest of the industry

00:03:13.250 --> 00:03:15.550
about five or six years to really catch up to

00:03:15.550 --> 00:03:19.169
what Braben did in 87. Now, Zark was the original

00:03:19.169 --> 00:03:22.370
title on the Archimedes, but most people, like

00:03:22.370 --> 00:03:24.030
you said, probably played it as Virus. Was that

00:03:24.030 --> 00:03:26.569
just a marketing name change? Mostly, yeah. It

00:03:26.569 --> 00:03:29.689
was ported to the Atari ST, the Amiga, the PC,

00:03:29.870 --> 00:03:33.150
and even the ZX Spectrum in 1988 under the name

00:03:33.150 --> 00:03:36.050
Virus. Did it look the same? It looked... Similar,

00:03:36.090 --> 00:03:38.189
but there were trade -offs. The Archimedes was

00:03:38.189 --> 00:03:40.229
just so powerful it could handle really complex

00:03:40.229 --> 00:03:42.710
lighting effects, depth shading. Right. The Atari

00:03:42.710 --> 00:03:45.250
and Amiga were great machines, but they couldn't

00:03:45.250 --> 00:03:48.169
quite handle that light sourcing. So Virus looks

00:03:48.169 --> 00:03:50.590
a bit flatter lighting -wise, but the speed and

00:03:50.590 --> 00:03:52.590
the gameplay were pretty much identical. And

00:03:52.590 --> 00:03:55.590
weirdly enough, the Atari ST version of Virus

00:03:55.590 --> 00:03:58.650
actually scored higher in ACE magazine than the

00:03:58.650 --> 00:04:02.090
original 981. I think by that point, reviewers

00:04:02.090 --> 00:04:04.250
were just so in love with the gameplay loop that

00:04:04.250 --> 00:04:07.229
the lack of, you know, fancy lighting didn't

00:04:07.229 --> 00:04:09.030
really matter. It was still light years ahead

00:04:09.030 --> 00:04:11.310
of anything else out there. Okay, so we've established

00:04:11.310 --> 00:04:14.409
it's gorgeous. But once you get over that initial

00:04:14.409 --> 00:04:17.569
wow factor, what are you actually doing? Is there

00:04:17.569 --> 00:04:19.850
a story or are we just looking at pretty hills?

00:04:20.089 --> 00:04:22.350
Oh, there's a plot, but it's very much an old

00:04:22.350 --> 00:04:25.050
school arcade setup. You're the pilot of this

00:04:25.050 --> 00:04:28.009
lone craft called a lander, and you are the only

00:04:28.009 --> 00:04:30.689
thing standing between a peaceful landscape and

00:04:30.689 --> 00:04:33.990
an alien invasion. Classic 80s setup. One ship

00:04:33.990 --> 00:04:36.790
against the armada. Exactly. But the way the

00:04:36.790 --> 00:04:39.370
invasion happens is really unique. The enemies

00:04:39.370 --> 00:04:41.670
are these cedar ships. They don't just shoot

00:04:41.670 --> 00:04:44.069
at you. They fly over the landscape and scatter

00:04:44.069 --> 00:04:46.730
these red particles, the virus. Ah, and this

00:04:46.730 --> 00:04:48.689
is where the visuals become the UI, right? You

00:04:48.689 --> 00:04:52.079
don't have, like, a Planet Health bar. in the

00:04:52.079 --> 00:04:53.839
corner of the screen. No, you watch it happen.

00:04:54.060 --> 00:04:56.220
The landscape starts out all green. When the

00:04:56.220 --> 00:04:58.660
virus hits, it turns brown, then red. It spreads

00:04:58.660 --> 00:05:00.560
like a blight. You can literally look down and

00:05:00.560 --> 00:05:03.000
see the infection moving across the map in real

00:05:03.000 --> 00:05:05.279
time. That sounds incredibly stressful. It is.

00:05:05.279 --> 00:05:08.199
It's visceral. Even the trees mutate. If the

00:05:08.199 --> 00:05:10.819
virus hits a tree, it turns red. And later on,

00:05:10.860 --> 00:05:13.779
if you or an enemy shoots a mutated tree. Let

00:05:13.779 --> 00:05:16.040
me guess. The tree itself becomes aggressive

00:05:16.040 --> 00:05:18.060
and starts attacking you. The trees attack you.

00:05:18.350 --> 00:05:20.209
That just feels personal. It feels like the whole

00:05:20.209 --> 00:05:22.750
world is turning against you. It's very similar

00:05:22.750 --> 00:05:25.649
in a way to the arcade game Defender. You're

00:05:25.649 --> 00:05:27.790
not just trying to survive. You're trying to

00:05:27.790 --> 00:05:30.990
protect a finite amount of territory from being

00:05:30.990 --> 00:05:33.149
erased. And the scoring system ties into that,

00:05:33.209 --> 00:05:35.170
doesn't it? You don't just get points for kills.

00:05:35.389 --> 00:05:37.490
Right. You get bonus points at the end of each

00:05:37.490 --> 00:05:40.490
wave based on how much uninfected green landscape

00:05:40.490 --> 00:05:42.750
is left. So if you save the world, you get a

00:05:42.750 --> 00:05:45.209
high score. If you let it burn, you get nothing.

00:05:45.410 --> 00:05:48.019
And then just to tune the screws. The game changes

00:05:48.019 --> 00:05:50.959
the map on you. Every four waves, you get a new

00:05:50.959 --> 00:05:54.060
landscape. But as you progress, the ratio of

00:05:54.060 --> 00:05:57.120
land to water shifts. You get less land and more

00:05:57.120 --> 00:05:59.120
ocean. Which sounds like it would be easier,

00:05:59.240 --> 00:06:01.199
right? Less land to protect. You'd think so,

00:06:01.259 --> 00:06:03.540
but it actually concentrates the infection. The

00:06:03.540 --> 00:06:06.300
enemies have a smaller target, so the virus spreads

00:06:06.300 --> 00:06:09.259
much, much faster. It forces you into this tighter

00:06:09.259 --> 00:06:11.540
and tighter kill box. Okay, premise is stressful.

00:06:12.339 --> 00:06:14.740
Visuals are great. But we have to talk about

00:06:14.740 --> 00:06:18.420
the elephant in the room. The controls. Ah, yes.

00:06:18.759 --> 00:06:22.680
The controls. I have heard Zark described as

00:06:22.680 --> 00:06:26.110
unplayable. sadistic and my personal favorite,

00:06:26.250 --> 00:06:29.310
a physics lesson gone wrong. Why is flying this

00:06:29.310 --> 00:06:33.089
ship so hard? Because it simulates real thrust

00:06:33.089 --> 00:06:37.370
physics with absolutely zero handholding. I mean,

00:06:37.389 --> 00:06:39.389
think about a modern flight sim or even a space

00:06:39.389 --> 00:06:42.009
game. You push the stick forward, the ship goes

00:06:42.009 --> 00:06:44.050
forward. The computer is firing little retro

00:06:44.050 --> 00:06:46.769
rockets to stabilize you. Zark gives you a single

00:06:46.769 --> 00:06:49.050
thruster and is mounted on the bottom of your

00:06:49.050 --> 00:06:51.720
ship. Pointing straight down. That's it. No forward

00:06:51.720 --> 00:06:53.720
thrusters. No forward thrusters. No brakes. Just

00:06:53.720 --> 00:06:57.019
go up. So how do you go forward? You have to

00:06:57.019 --> 00:06:59.480
tilt the nose of your ship. down like you're

00:06:59.480 --> 00:07:01.939
basically aiming at the ground and then fire

00:07:01.939 --> 00:07:05.120
the thruster this pushes you up relative to the

00:07:05.120 --> 00:07:07.500
ship which propels you forward and down but you're

00:07:07.500 --> 00:07:09.720
accelerating toward the ground exactly so you

00:07:09.720 --> 00:07:11.980
have to thrust to get speed and then immediately

00:07:11.980 --> 00:07:13.939
pull the nose back up to level out before you

00:07:13.939 --> 00:07:16.980
crash it's this constant rhythmic battle of tilt

00:07:16.980 --> 00:07:19.420
thrust level tilt thrust level that sounds like

00:07:19.420 --> 00:07:21.639
trying to balance a broom on your palm while

00:07:21.639 --> 00:07:24.410
you're riding a unicycle That is a startlingly

00:07:24.410 --> 00:07:27.009
accurate analogy. And remember, there's no auto

00:07:27.009 --> 00:07:30.389
level button. You have full 360 degree pitch

00:07:30.389 --> 00:07:33.670
and yaw. If you tilt too far, you flip completely

00:07:33.670 --> 00:07:35.730
upside down. And if you hit the thruster while

00:07:35.730 --> 00:07:38.269
you're upside down. You rocket yourself straight

00:07:38.269 --> 00:07:42.100
into the earth at Mach 2. Game over. I can just

00:07:42.100 --> 00:07:45.259
picture the panic. You see an alien, you jerk

00:07:45.259 --> 00:07:48.060
the mouse, you flip over, and you just pile drive

00:07:48.060 --> 00:07:50.040
yourself into the scenery. That is the essential

00:07:50.040 --> 00:07:52.720
Zark experience. In fact, it was even worse during

00:07:52.720 --> 00:07:54.720
development. There's a funny story about the

00:07:54.720 --> 00:07:57.180
prototype, which was just called Lander. Oh.

00:07:57.259 --> 00:07:59.879
The mouse sensitivity was so high that if you

00:07:59.879 --> 00:08:01.600
were just sitting on the launch pad, having even

00:08:01.600 --> 00:08:03.759
taken off, and you so much as bumped the mouse.

00:08:03.980 --> 00:08:06.100
Oh, no. The ship would register the tilt, flip

00:08:06.100 --> 00:08:09.420
over, and explode. Instantly. You died while

00:08:09.420 --> 00:08:12.360
parked. You died while parked, yes. They dialed

00:08:12.360 --> 00:08:13.980
that back for the commercial release of Iris,

00:08:14.100 --> 00:08:16.540
so you only explode if you try to land while

00:08:16.540 --> 00:08:19.040
tilted. But it shows you the level of precision

00:08:19.040 --> 00:08:21.339
Braben was working with. And you have to land,

00:08:21.420 --> 00:08:22.980
right? You can't just stay in the air forever.

00:08:23.339 --> 00:08:26.079
Nope. You have fuel. So imagine this. You're

00:08:26.079 --> 00:08:28.439
fighting off three Cedars. The ground is turning

00:08:28.439 --> 00:08:31.240
red. Trees are shooting at you, and your fuel

00:08:31.240 --> 00:08:34.460
alarm goes off. You have to disengage, fly back

00:08:34.460 --> 00:08:37.620
to your base, hover perfectly level. and gently

00:08:37.620 --> 00:08:40.360
set it down. While being shot at. While being

00:08:40.360 --> 00:08:43.620
shot at. You are a complete sitting duck. It

00:08:43.620 --> 00:08:45.440
creates this incredible tension where the simple

00:08:45.440 --> 00:08:48.500
act of parking your car becomes the boss fight.

00:08:48.639 --> 00:08:50.600
That sounds absolutely punishing. And speaking

00:08:50.600 --> 00:08:52.220
of punishment, I read about the weapon system.

00:08:52.500 --> 00:08:55.639
The game actually penalizes you for shooting.

00:08:55.820 --> 00:08:57.799
It does. It's another layer of what I'd call

00:08:57.799 --> 00:09:00.879
Braben difficulty. You have a rapid fire autocannon.

00:09:00.919 --> 00:09:03.840
It's fun to use. But every single bullet you

00:09:03.840 --> 00:09:06.860
fire subtracts one point from your score. So

00:09:06.860 --> 00:09:09.120
you can't just spray and pray? You can, but you'll

00:09:09.120 --> 00:09:11.740
end up with a terrible rank. It is mathematically

00:09:11.740 --> 00:09:14.200
possible to finish a game of Zark with a negative

00:09:14.200 --> 00:09:16.639
score. That is just humiliating. And the game

00:09:16.639 --> 00:09:19.220
rubs it in. If you finish with a bad score, the

00:09:19.220 --> 00:09:21.039
high score table doesn't just say game over.

00:09:21.200 --> 00:09:23.879
It displays a message saying that slugs and dried

00:09:23.879 --> 00:09:25.820
up bits of lichen have been known to achieve

00:09:25.820 --> 00:09:30.460
better scores than you? Wow. That is peak 1980s

00:09:30.460 --> 00:09:34.120
British developer snark. I love it. It really

00:09:34.120 --> 00:09:37.000
is. It frames the whole game not as a power fantasy,

00:09:37.159 --> 00:09:40.139
but as like a test of competence. The game thinks

00:09:40.139 --> 00:09:42.200
it's better than you and it wants you to prove

00:09:42.200 --> 00:09:44.700
it wrong. So we have gravity fighting us, the

00:09:44.700 --> 00:09:46.679
score fighting us. Let's talk about the actual

00:09:46.679 --> 00:09:49.480
enemies. What else is out there besides the Cedars?

00:09:49.840 --> 00:09:52.379
Well, once you get good at flying, the game throws

00:09:52.379 --> 00:09:55.320
the bomber at you. This is a high altitude aircraft

00:09:55.320 --> 00:09:58.379
that just moves incredibly fast across the top

00:09:58.379 --> 00:10:00.720
of the map, dropping massive amounts of virus.

00:10:00.980 --> 00:10:03.620
And why is that one so hard to deal with? It's

00:10:03.620 --> 00:10:06.220
a geometry problem caused by the physics. To

00:10:06.220 --> 00:10:08.940
catch a fast enemy, you have to fly fast. To

00:10:08.940 --> 00:10:10.799
fly fast, you have to tilt your nose down. But

00:10:10.799 --> 00:10:13.240
your guns are on the nose. Exactly. You can't

00:10:13.240 --> 00:10:16.159
fly fast and aim forward at the same time. If

00:10:16.159 --> 00:10:18.019
you're chasing the bomber at high speed, your

00:10:18.019 --> 00:10:20.159
guns are pointed at the ground. You have to do

00:10:20.159 --> 00:10:22.340
this sort of swoop maneuver where you gain speed,

00:10:22.639 --> 00:10:25.019
dive under it, and then pull up violently to

00:10:25.019 --> 00:10:26.840
take a shot as you drift past. That sounds like

00:10:26.840 --> 00:10:29.460
it requires a PhD in orbital mechanics. It separates

00:10:29.460 --> 00:10:31.519
the casual players from the masters, for sure.

00:10:31.799 --> 00:10:34.399
Okay, on the flip side of the scary bomber, there's

00:10:34.399 --> 00:10:38.360
something weird in the water. Tell me about the

00:10:38.360 --> 00:10:42.480
fish. Ah, the fish, yes. This is a classic Easter

00:10:42.480 --> 00:10:45.379
egg. In some levels, and some superfans swear

00:10:45.379 --> 00:10:47.019
it's in every level if you look hard enough,

00:10:47.200 --> 00:10:50.019
there is a fish -like enemy just swimming around

00:10:50.019 --> 00:10:52.720
in the ocean. Does it attack you? No, it doesn't

00:10:52.720 --> 00:10:54.460
shoot. It doesn't even appear on your radar.

00:10:54.519 --> 00:10:57.860
It just swims. But... If you manage to find it

00:10:57.860 --> 00:11:01.059
and shoot it, it explodes and releases a cloud

00:11:01.059 --> 00:11:03.659
of virus particles. Wait, so killing it is bad.

00:11:03.720 --> 00:11:05.580
It spreads the infection. It spreads the infection,

00:11:05.779 --> 00:11:08.159
yes. But it also gives you a massive point bonus.

00:11:08.220 --> 00:11:11.759
So it's this weird risk -reward secret. Do you

00:11:11.759 --> 00:11:13.820
want the points bad enough to pollute your own

00:11:13.820 --> 00:11:16.259
map? That is so strange. It just feels like the

00:11:16.259 --> 00:11:18.100
developer put it in there purely to mess with

00:11:18.100 --> 00:11:20.200
people. I think that's a very safe assumption.

00:11:20.500 --> 00:11:22.379
You mentioned the radar. That seems pretty critical

00:11:22.379 --> 00:11:23.940
since you can't see the whole island at once.

00:11:24.179 --> 00:11:25.919
Oh, it's essential. You have a little scanner

00:11:25.919 --> 00:11:27.919
in the top left showing red and green areas.

00:11:28.460 --> 00:11:31.559
But Braben being Braben, he didn't just make

00:11:31.559 --> 00:11:34.659
it a UI element. The radar data is provided by

00:11:34.659 --> 00:11:37.419
physical scanning towers located on the landscape.

00:11:37.779 --> 00:11:40.740
Let me guess. They're destructible. Completely.

00:11:40.899 --> 00:11:43.710
If you accidentally shoot a radar tower. or an

00:11:43.710 --> 00:11:46.389
alien destroys it, that whole sector of your

00:11:46.389 --> 00:11:48.450
radar screen just goes black, you're flying blind

00:11:48.450 --> 00:11:50.909
in that area. It feels like every single mechanic,

00:11:51.210 --> 00:11:54.330
the fuel, the ammo, the radar, is designed to

00:11:54.330 --> 00:11:57.110
say, be careful or you will break something.

00:11:57.370 --> 00:12:00.350
Exactly. It simulates the fragility of your machine.

00:12:00.690 --> 00:12:02.710
You aren't driving a tank, you're piloting a

00:12:02.710 --> 00:12:04.549
delicate instrument. I want to shift gears and

00:12:04.549 --> 00:12:06.529
look under the hood again. We talked about how

00:12:06.529 --> 00:12:09.490
advanced this was for 1987. How long did it take

00:12:09.490 --> 00:12:12.500
David Braben to write this thing? This is the

00:12:12.500 --> 00:12:14.460
part that makes other programmers want to quit

00:12:14.460 --> 00:12:17.299
their jobs. Braben wrote the original demo, Lander,

00:12:17.480 --> 00:12:20.360
in less than three months. Three months to build

00:12:20.360 --> 00:12:22.659
a 3D physics engine from scratch. Less than three

00:12:22.659 --> 00:12:25.480
months. He apparently only had access to a development

00:12:25.480 --> 00:12:27.840
machine for the Archimedes for about two weeks

00:12:27.840 --> 00:12:31.399
in January of 87. He wrote it all in ARM assembly

00:12:31.399 --> 00:12:34.320
code. Wow. He'd been experimenting with 3D algorithms

00:12:34.320 --> 00:12:37.000
on the BBC Micro, but the Archimedes finally

00:12:37.000 --> 00:12:39.320
gave him the horsepower to make it real. But

00:12:39.320 --> 00:12:41.919
even with all that power, He must have used some

00:12:41.919 --> 00:12:45.779
serious shortcuts. I mean, generating a 3D landscape

00:12:45.779 --> 00:12:49.559
in real time in 1987, how do you even do that?

00:12:49.940 --> 00:12:52.360
It's all math. He didn't have an artist draw

00:12:52.360 --> 00:12:54.860
the hills. He used pseudo -random sequence sine

00:12:54.860 --> 00:12:57.879
waves. Okay. English, please. Basically, he used

00:12:57.879 --> 00:13:00.720
a mathematical formula to generate waves, like

00:13:00.720 --> 00:13:03.139
sound waves or ocean waves, and then just phrase

00:13:03.139 --> 00:13:05.080
them in place to create the hills and valleys.

00:13:05.460 --> 00:13:07.700
It uses almost no memory because you're just

00:13:07.700 --> 00:13:09.940
storing the formula, not the whole map. That's

00:13:09.940 --> 00:13:11.539
brilliant. And then there's the sorting issue.

00:13:11.639 --> 00:13:14.740
This is really clever. In 3D games, the computer

00:13:14.740 --> 00:13:16.899
has to decide which object is in front of which

00:13:16.899 --> 00:13:18.960
other object. Right, so you don't have a tree

00:13:18.960 --> 00:13:21.049
that's behind a hill appearing. on top of the

00:13:21.049 --> 00:13:23.509
hill. Exactly. The standard way to do this is

00:13:23.509 --> 00:13:25.830
called bubble sort or quick sort. Basically,

00:13:25.830 --> 00:13:28.149
you compare every object to every other object

00:13:28.149 --> 00:13:31.529
to put them in perfect order. Is tree A in front

00:13:31.529 --> 00:13:34.289
of tree B? Is tree B in front of rock C? That

00:13:34.289 --> 00:13:37.070
sounds slow. It's incredibly slow. It eats processor

00:13:37.070 --> 00:13:40.090
cycles. So Braben realized he didn't need perfect

00:13:40.090 --> 00:13:42.789
order. He just needed good enough. He used something

00:13:42.789 --> 00:13:45.129
called bin sorting. Okay, what's the analogy

00:13:45.129 --> 00:13:47.970
for that? Imagine you have a messy pile of books.

00:13:48.659 --> 00:13:51.139
Bubble sort is looking at every single book and

00:13:51.139 --> 00:13:54.179
alphabetizing them perfectly. Bin sorting is

00:13:54.179 --> 00:13:56.600
like taking three laundry baskets and saying,

00:13:56.679 --> 00:13:59.720
okay, A through M goes in this basket, N through

00:13:59.720 --> 00:14:02.059
Z goes in that one. So you're grouping them roughly

00:14:02.059 --> 00:14:04.460
by distance instead of perfectly ordering them

00:14:04.460 --> 00:14:07.799
one by one. Exactly. He just divided the world

00:14:07.799 --> 00:14:10.600
into these depth bins. He didn't care if Tree

00:14:10.600 --> 00:14:13.059
A was one inch behind Tree B as long as they

00:14:13.059 --> 00:14:15.700
were both in the far away bin. It uses a bit

00:14:15.700 --> 00:14:18.080
more memory, but it is lightning fast. That's

00:14:18.080 --> 00:14:20.779
a fascinating trade -off. It's prioritizing speed

00:14:20.779 --> 00:14:23.799
over absolute perfection. And speed was everything.

00:14:24.159 --> 00:14:26.620
The game ran at a frame rate that made other

00:14:26.620 --> 00:14:29.179
games look like slideshows. What about the shadows?

00:14:29.340 --> 00:14:31.100
You mentioned they were solid, but were they

00:14:31.100 --> 00:14:34.730
like... real, dynamically cast shadows? They

00:14:34.730 --> 00:14:38.629
were a cheat, but a really useful one. The shadows

00:14:38.629 --> 00:14:40.610
are just projected vertically, straight down.

00:14:40.710 --> 00:14:42.669
They don't distort perfectly over the curved

00:14:42.669 --> 00:14:44.330
hills or anything. If you look closely, they

00:14:44.330 --> 00:14:46.110
kind of look like stickers on the ground. But

00:14:46.110 --> 00:14:48.350
they worked. They worked beautifully for gameplay.

00:14:48.850 --> 00:14:51.210
Because of that vertical projection, you could

00:14:51.210 --> 00:14:53.309
see the shadow of an enemy ship on the ground

00:14:53.309 --> 00:14:55.629
before the ship itself flew onto your screen.

00:14:55.830 --> 00:14:58.649
So the graphical hack became a tactical radar

00:14:58.649 --> 00:15:01.539
system. Precisely. I also saw a note about display

00:15:01.539 --> 00:15:04.379
modes. Apparently, the computer could do a higher

00:15:04.379 --> 00:15:06.460
resolution, but Braben actually turned it down.

00:15:06.600 --> 00:15:08.419
Yeah, this is a great little detail. The game

00:15:08.419 --> 00:15:11.840
runs in what's called Mode 13, which is 256 colors.

00:15:12.240 --> 00:15:15.019
The Archimedes had a higher resolution Mode 15,

00:15:15.200 --> 00:15:17.240
but Braben skipped it. Why would you do that?

00:15:17.360 --> 00:15:19.600
Better graphics are always better. Not if it

00:15:19.600 --> 00:15:21.980
kills your bandwidth. Mode 15 required moving

00:15:21.980 --> 00:15:24.419
so much data around that it actually clogged

00:15:24.419 --> 00:15:26.360
up the memory controller and slowed down the

00:15:26.360 --> 00:15:29.539
main CPU. Braben knew that for a game like Zark,

00:15:29.639 --> 00:15:32.840
fluidity was king. He sacrificed resolution to

00:15:32.840 --> 00:15:35.799
keep that buttery smooth frame rate. It seems

00:15:35.799 --> 00:15:38.019
like every single decision was laser focused

00:15:38.019 --> 00:15:40.480
on the feel of the flight. It really was. So

00:15:40.480 --> 00:15:45.120
Zark lands in 1987. It blows minds, gets ported

00:15:45.120 --> 00:15:47.860
as virus. How is it remembered today? Did it

00:15:47.860 --> 00:15:50.940
spawn a massive franchise? Not exactly a franchise,

00:15:51.019 --> 00:15:53.779
no, but it has a very respectable legacy. In

00:15:53.779 --> 00:15:56.960
1991, Amiga Power Magazine voted it the fifth

00:15:56.960 --> 00:15:59.159
best game of all time. That's high praise. Very

00:15:59.159 --> 00:16:01.159
high praise. Did we get any sequels? We did.

00:16:01.399 --> 00:16:03.820
There was a game called Conqueror, which used

00:16:03.820 --> 00:16:06.120
the same landscape engine, but instead of flying

00:16:06.120 --> 00:16:08.779
a lander, you drove a tank. That sounds a lot

00:16:08.779 --> 00:16:11.399
easier. Tanks generally don't flip upside down

00:16:11.399 --> 00:16:13.879
and explode if you tap the mouse. It was definitely

00:16:13.879 --> 00:16:16.740
more accessible. And then much later, in 1998,

00:16:17.179 --> 00:16:19.899
Braben's company, Frontier Developments, released

00:16:19.899 --> 00:16:23.960
Virus 2000 for the PC and PlayStation. And 98

00:16:23.960 --> 00:16:26.340
is a long gap. That's the PlayStation era. Did

00:16:26.340 --> 00:16:28.700
they keep the brutal controls? They tried to

00:16:28.700 --> 00:16:30.960
modernize it. They added more forgiving physics,

00:16:31.019 --> 00:16:35.480
better mission structures. But honestly, it didn't

00:16:35.480 --> 00:16:37.720
quite capture the magic of the original. Why

00:16:37.720 --> 00:16:40.370
do you think that is? I think because the brutality

00:16:40.370 --> 00:16:43.049
was the magic. When you play Zark, you feel like

00:16:43.049 --> 00:16:45.289
you are wrestling a machine. When you succeed,

00:16:45.450 --> 00:16:47.509
when you land that ship perfectly after a huge

00:16:47.509 --> 00:16:50.090
dogfight, you feel like a god. Because you earned

00:16:50.090 --> 00:16:53.990
it. You absolutely earned it. Modern games. They

00:16:53.990 --> 00:16:57.250
love us. They want us to win. They have auto

00:16:57.250 --> 00:17:00.190
-aim, auto -leveling checkpoints every five seconds.

00:17:00.470 --> 00:17:03.230
Zark did not care if you won. It's the difference

00:17:03.230 --> 00:17:05.529
between riding a roller coaster and flying a

00:17:05.529 --> 00:17:08.970
helicopter. One is thrilling but safe. The other

00:17:08.970 --> 00:17:10.769
requires you to actually know what you're doing

00:17:10.769 --> 00:17:14.069
or you die. That's it. And Zark comes from that

00:17:14.069 --> 00:17:16.269
era where the challenge wasn't just beat the

00:17:16.269 --> 00:17:19.109
level. The challenge was master the interface.

00:17:19.549 --> 00:17:22.069
Read the manual or suffer. Read the manual, practice

00:17:22.069 --> 00:17:23.950
for 10 hours, and then maybe you won't explode

00:17:23.950 --> 00:17:26.730
on the launch pad. But that feeling of mastery

00:17:26.730 --> 00:17:28.849
is something very special. And I think very few

00:17:28.849 --> 00:17:31.190
games today are brave enough to demand that from

00:17:31.190 --> 00:17:33.910
the player. Well, next time I crash my ship in

00:17:33.910 --> 00:17:36.269
a modern game, I will try to remember that at

00:17:36.269 --> 00:17:38.250
least I didn't get a message telling me I played

00:17:38.250 --> 00:17:40.349
worse than a piece of dried lichen. Always a

00:17:40.349 --> 00:17:42.839
silver lining. Huge thanks to everyone for listening

00:17:42.839 --> 00:17:45.539
to this deep dive into Zark. Go check out a video

00:17:45.539 --> 00:17:47.940
of it if you can. The movement is still mesmerizing

00:17:47.940 --> 00:17:50.240
to watch. It really is. Thanks for listening.

00:17:50.400 --> 00:17:51.579
See you on the next deep dive.
