(upbeat electronic music)
- Right from the get-go,
the question we all posed is
how do we make this better,
how do we do it differently?
Let's throw out everything and start over.
And we had all these great ideas.
The game plan in
Uncharted was much more...
In Uncharted 4 was much more dynamic.
So, we had this stealth action component
that we'd never had before.
The set-ups that these
stealth action events
happened in were more open.
They were like big fishbowls
instead of these linear paths
that you had to go through.
You could solve these
things different ways.
You could stealth through a whole fight.
So, we started looking at the AI states
and this is where the real story is
because they had all these
lofty goals for the AI
in the game right from the beginning
and they were gonna have six plus states
that they could be in at any point in time
and we'd have an aggregate value of that
that we could tap into.
Then I wanted to push it a bit further
and I spent all this time
and I actually talked about
this the last time I was here,
if anybody saw that talk in 2015.
I've had this fantasy for a
long time of getting more...
In an action game, of getting
more like an action movie.
And when I watch a lot of action movies,
I think about the angularity
of the music in that, right?
And they have the advantage
of knowing from cut to cut
what's going to happen.
So, the hero runs down a hallway
and there's a cool groove going
and he stops at a corner
and everything drops out
and there's high string tension
and then he looks around the corner
and some element comes in and
then he jumps out of cover
and we go back to the groove or whatever.
And so, the direction
I gave to our team was
when something happens, do something.
(laughter)
And they did it.
But that really sums up how
we came up with this system
and I'll show you how it worked.
Or didn't.
So we decided to take all the percussion
and attach it to what I just described.
So basically we're taking a big risk
because something we try to avoid,
which is you as a player
making things happen
in the music in a very direct way
by, say, taking cover or leaving cover
or looking down the sights of your gun,
and we decided to go with that.
We decided to give the player more agency
in the interactivity of the music.
But at the same time,
we have the AI driving
the rest of the music.
So the percussion and the
groove elements are tied
to all these player-driven events.
The rest of the music is reacting to
what's happening in the AI.
So these are the AI states.
I don't know if you can read that,
but it says Unaware on
the left, Search, Combat.
And this is live-recorded,
big, bold orchestral music.
So, we cut it up into the
smallest chunks possible.
These are usually eight
or 16 bars of music.
And then we also have to have transitions
that work between the different states.
If you've ever tried
making interactive music,
it's really easy to go up in intensity
because you're interrupting
something kind of mellow.
So you do it on a bar
line, it sounds good.
Getting back down is
super difficult, right?
Because the bottom just falls out.
So we have all these
custom transitions there.
And then on the far right,
we have all these percussion
elements that we carved out
and they go into a separate system.
Now this is really under the hood stuff.
So this is actually the music
scripting engine, custom made,
that we've used at Naughty Dog for years
and I just want to show
you how this works.
So this is how the chunks
that are attached to the AI state work
and any non-interactive music in the game,
any of the scripted story-driven stuff,
is all scripted this way.
So, it's really simple, right?
There's no pretty GUI here.
It's just text-based but
it is super powerful.
That's the name of the queue.
We've got the volume in there.
This is a playlist, this
is one playlist of chunks.
So this is the stealth action chunks
for the low intensity state
in one of those set-ups.
So, the volume of each
chunk is adjustable.
We've got a loop counter.
We know which layer they go on
if we were to stack them up vertically
which we can do in this system.
We're tracking tempo
because we want everything
to be beat synchronous.
All our transitions are beat synchronous,
unless something happens
that we want to trigger immediately.
Then we can override that.
We've essentially got
a time signature thing
where we can say the
number of beats per bar.
And then this exit point
which I'm gonna talk about a little later,
but the exit point on a
piece of music in this game
became super, super
important as we went along
and I'll tell you why in a little while.
But that is the point
at the end of the file
where maybe there's a tail
and it sounds good to
start the next thing.
And so typically that's
a beat synchronous event
but not always.
