WEBVTT

00:00:00.060 --> 00:00:02.500
The following content is
provided under a Creative

00:00:02.500 --> 00:00:04.019
Commons license.

00:00:04.019 --> 00:00:06.360
Your support will help
MIT OpenCourseWare

00:00:06.360 --> 00:00:10.730
continue to offer high-quality
educational resources for free.

00:00:10.730 --> 00:00:13.330
To make a donation or
view additional materials

00:00:13.330 --> 00:00:17.217
from hundreds of MIT courses,
visit MIT OpenCourseWare

00:00:17.217 --> 00:00:17.842
at ocw.mit.edu.

00:00:20.795 --> 00:00:22.170
PROFESSOR: All
right, so it looks

00:00:22.170 --> 00:00:23.419
like we've got everybody here.

00:00:23.419 --> 00:00:24.760
It's about 1:11.

00:00:24.760 --> 00:00:29.180
Today in class, we are going
to end our project twos.

00:00:29.180 --> 00:00:30.230
Yay.

00:00:30.230 --> 00:00:32.420
We feeling good about this?

00:00:32.420 --> 00:00:33.644
Kinda?

00:00:33.644 --> 00:00:34.810
I'm feeling good about this.

00:00:34.810 --> 00:00:36.435
And we're going to
start project three.

00:00:36.435 --> 00:00:39.317
So we're going to start off with
our project two presentations.

00:00:39.317 --> 00:00:40.900
Again, we're going
to go through here.

00:00:40.900 --> 00:00:45.560
Each team has five minutes
to give their presentation.

00:00:45.560 --> 00:00:46.230
Slides.

00:00:46.230 --> 00:00:48.400
You can set up your
slides up here.

00:00:48.400 --> 00:00:51.270
We've carved out
enough time for today

00:00:51.270 --> 00:00:54.520
to be able to swap out
between computers and for us

00:00:54.520 --> 00:00:58.420
to ask a couple of questions
after each presentation.

00:00:58.420 --> 00:01:00.470
After all the
presentations are done,

00:01:00.470 --> 00:01:01.820
we're going to take a break.

00:01:01.820 --> 00:01:03.640
Instructors will kind
of talk to each other

00:01:03.640 --> 00:01:05.110
about what we saw in
the presentations,

00:01:05.110 --> 00:01:07.318
and we'll address some of
the feedback that we heard,

00:01:07.318 --> 00:01:10.070
some of the things that we
saw in the presentations.

00:01:10.070 --> 00:01:11.960
As a reminder,
presentations, we want

00:01:11.960 --> 00:01:15.290
to hear about what went
right, what went wrong,

00:01:15.290 --> 00:01:17.834
and also what would
you do differently?

00:01:17.834 --> 00:01:19.500
Then we're going to
start project three.

00:01:19.500 --> 00:01:21.430
And we're going to do
brainstorming in class.

00:01:21.430 --> 00:01:23.870
Basically, the
first week of class

00:01:23.870 --> 00:01:27.557
we're going to compress into
about 30 minutes of this class.

00:01:27.557 --> 00:01:29.140
We're going to
brainstorm, we're going

00:01:29.140 --> 00:01:31.932
to do our elevator pitches, and
then we're going to form teams.

00:01:31.932 --> 00:01:33.890
So we're going to do that
really, really quick.

00:01:33.890 --> 00:01:36.580
And it might require
rolling the die again.

00:01:36.580 --> 00:01:39.180
It might require moving you
from project to project.

00:01:39.180 --> 00:01:40.350
And that's going to be OK.

00:01:40.350 --> 00:01:43.250
We'll talk about why we're
doing that when we go.

00:01:43.250 --> 00:01:45.290
So I think that's
everything from me.

00:01:45.290 --> 00:01:48.130
Any questions?

00:01:48.130 --> 00:01:52.320
And if not, Sparkly
Redemption, come on down.

00:01:52.320 --> 00:01:55.100
PRESENTER 1: So what went right?

00:01:55.100 --> 00:01:56.170
The game got made.

00:01:56.170 --> 00:01:59.507
It isn't broken or sad or dead.

00:01:59.507 --> 00:02:01.090
Even though we had
to cut some things,

00:02:01.090 --> 00:02:04.382
I feel like the general
idea of you are a player

00:02:04.382 --> 00:02:06.840
and you pick up sparklies and
your sparklies change monster

00:02:06.840 --> 00:02:09.400
behavior slash your
power-up slash whatever

00:02:09.400 --> 00:02:12.325
got implemented pretty
well in a way that carried

00:02:12.325 --> 00:02:13.900
across our original idea.

00:02:17.310 --> 00:02:19.970
What went wrong?

00:02:19.970 --> 00:02:22.160
I guess we had to
drop some things.

00:02:22.160 --> 00:02:25.960
We had a person on our
team not get hit by a bus,

00:02:25.960 --> 00:02:29.236
but they did basically
not have as much time

00:02:29.236 --> 00:02:31.110
to work on the project
as much as we thought.

00:02:31.110 --> 00:02:32.360
So we had to adapt to that.

00:02:32.360 --> 00:02:35.270
On the other hand, I feel like
we adapted to that pretty well.

00:02:35.270 --> 00:02:39.765
So not good, but still
good, I think, personally.

00:02:43.720 --> 00:02:46.220
We were told to test
early and test often,

00:02:46.220 --> 00:02:48.970
which I think we actually kind
of did-- maybe not as early

00:02:48.970 --> 00:02:50.320
or as often as we could have.

00:02:50.320 --> 00:02:52.530
But we still tested even
when we had something

00:02:52.530 --> 00:02:54.320
that we felt wasn't
really testable

00:02:54.320 --> 00:02:56.220
but was still touchable.

00:02:56.220 --> 00:02:58.930
And I feel like that was
kind of interesting to do

00:02:58.930 --> 00:03:00.405
because people kept
telling us, you

00:03:00.405 --> 00:03:01.360
should totally be able to die.

00:03:01.360 --> 00:03:02.790
And we were like,
yes, we do think

00:03:02.790 --> 00:03:05.160
you should be able to die, but
we haven't implemented that.

00:03:05.160 --> 00:03:06.150
And so on and so forth.

00:03:06.150 --> 00:03:07.565
But on the other
hand, that meant

00:03:07.565 --> 00:03:09.900
we still got lots and lots
of good feedback and things

00:03:09.900 --> 00:03:12.910
to think about, like
stuff that we probably

00:03:12.910 --> 00:03:15.700
wouldn't have thought to
have implemented but still

00:03:15.700 --> 00:03:18.790
implemented because we
caught that early on.

00:03:18.790 --> 00:03:22.540
So yes, test early and test
often, even if it's annoying,

00:03:22.540 --> 00:03:27.236
is what I learned, and
I feel we all learned.

00:03:27.236 --> 00:03:30.396
And that might be
all I can think of.

00:03:30.396 --> 00:03:32.520
PROFESSOR: What would you
do differently next time?

00:03:32.520 --> 00:03:34.645
PRESENTER 1: What would I
do differently next time?

00:03:34.645 --> 00:03:36.000
Meet up with people.

00:03:36.000 --> 00:03:37.560
Well, not necessarily
physically,

00:03:37.560 --> 00:03:39.899
because we scheduled
meetings but then we

00:03:39.899 --> 00:03:41.940
decided maybe we don't
need to physically meet up

00:03:41.940 --> 00:03:43.856
because it's a pain
getting people onto campus

00:03:43.856 --> 00:03:46.280
if they don't live on campus,
which would have been fine.

00:03:46.280 --> 00:03:48.405
But then there were still
times we were like, well,

00:03:48.405 --> 00:03:50.550
we meant to meet up
but then we got iffy

00:03:50.550 --> 00:03:53.060
about scheduling a time,
and everyone got confused.

00:03:53.060 --> 00:03:55.946
And I feel like we managed
to work our way through it.

00:03:55.946 --> 00:03:57.320
But it was still
more of a hassle

00:03:57.320 --> 00:04:01.610
than it probably needed to be if
we just sat down and scheduled

00:04:01.610 --> 00:04:03.570
out a chunk of time
and listed things

00:04:03.570 --> 00:04:05.180
that we were going to get done.

00:04:05.180 --> 00:04:10.110
So differently would
be better about meeting

00:04:10.110 --> 00:04:12.199
with each other,
either physically

00:04:12.199 --> 00:04:13.240
or through the interwebs.

00:04:16.004 --> 00:04:17.587
PROFESSOR: Any
questions from anybody?

00:04:22.400 --> 00:04:22.900
OK.

00:04:22.900 --> 00:04:24.847
Which game engine
was that again?

00:04:24.847 --> 00:04:26.180
PRESENTER 1: Sparkly Redemption.

00:04:26.180 --> 00:04:27.835
It's the one-armed lady.

00:04:27.835 --> 00:04:29.580
PROFESSOR: What game
engine did you use?

00:04:29.580 --> 00:04:30.576
PRESENTER 1: Oh.

00:04:30.576 --> 00:04:32.162
Phaser.

00:04:32.162 --> 00:04:34.467
AUDIENCE: Anything to
say about the experience

00:04:34.467 --> 00:04:36.320
of working with Phaser?

00:04:36.320 --> 00:04:40.580
PRESENTER 1: So you do the
thing where you have a bug

00:04:40.580 --> 00:04:42.420
and you think it's
Phaser related,

00:04:42.420 --> 00:04:44.420
so you Google vague terms.

00:04:44.420 --> 00:04:46.360
And I've worked with
Flixel and Unity,

00:04:46.360 --> 00:04:50.667
so I know personally I'm used
to having long form posts pop up

00:04:50.667 --> 00:04:51.750
that you then dig through.

00:04:51.750 --> 00:04:54.190
But I feel like with Phaser
it was a bit of a mixed bag.

00:04:54.190 --> 00:04:57.129
And sometimes you
got relevant posts.

00:04:57.129 --> 00:04:59.170
Or sometimes you just went
to the Phaser examples

00:04:59.170 --> 00:05:01.470
and kept digging through it
until you found something

00:05:01.470 --> 00:05:02.640
vaguely relevant.

00:05:02.640 --> 00:05:05.350
So it wasn't terrible,
but it was still

00:05:05.350 --> 00:05:10.720
not quite what I was used to in
terms of figuring things out.

00:05:10.720 --> 00:05:14.180
PRESENTER 2: So we're
Lost Underground.

00:05:14.180 --> 00:05:16.680
One of the biggest things I
felt our team had a problem with

00:05:16.680 --> 00:05:18.150
was communication.

00:05:18.150 --> 00:05:20.470
Because at the very beginning,
we were really good.

00:05:20.470 --> 00:05:22.220
We all got really
pumped for this project,

00:05:22.220 --> 00:05:23.230
and we got together.

00:05:23.230 --> 00:05:26.250
We had the paper prototype.

00:05:26.250 --> 00:05:27.690
We edited it a bunch.

00:05:27.690 --> 00:05:30.360
We quickly got that over
to a digital prototype.

00:05:30.360 --> 00:05:32.500
And then it kind of stagnated.

00:05:32.500 --> 00:05:38.464
We had the play testing, and
we learned a lot from that.

00:05:38.464 --> 00:05:39.880
One of the most
interesting things

00:05:39.880 --> 00:05:42.590
is we added the darkness
mechanic, where you can only

00:05:42.590 --> 00:05:44.885
see a certain zone around you.

00:05:44.885 --> 00:05:47.980
And some people felt
like you shouldn't

00:05:47.980 --> 00:05:49.100
be able to see as much.

00:05:49.100 --> 00:05:52.087
People felt you should be
able to see more or less.

00:05:52.087 --> 00:05:53.420
Everyone had different opinions.

00:05:53.420 --> 00:05:55.170
But we liked the way it worked.

00:05:55.170 --> 00:05:57.870
But it didn't work the
way we wanted it to.

00:05:57.870 --> 00:06:01.600
People weren't concerned
about walking around at all.

00:06:01.600 --> 00:06:04.780
The whole point of the dark is
to be afraid of it, like oh,

00:06:04.780 --> 00:06:06.600
is there a monster
over there, but there

00:06:06.600 --> 00:06:08.340
could be something to
collect, and people

00:06:08.340 --> 00:06:09.790
weren't feeling that.

00:06:09.790 --> 00:06:12.145
And so we found out
from the play testing

00:06:12.145 --> 00:06:13.870
we needed to change it.

00:06:13.870 --> 00:06:16.130
And the best way to do
this was to shrink it

00:06:16.130 --> 00:06:18.900
so you could see even less,
to zoom out the camera so you

00:06:18.900 --> 00:06:21.920
feel really claustrophobic
and far away from everything.

00:06:21.920 --> 00:06:24.140
And I think that
really helped us.

00:06:24.140 --> 00:06:25.520
We also learned--
what was really

00:06:25.520 --> 00:06:28.480
funny is we had
just a placeholder,

00:06:28.480 --> 00:06:31.319
a little coffee cup,
instead of a coin, which

00:06:31.319 --> 00:06:32.610
is what we originally went for.

00:06:32.610 --> 00:06:35.865
But every play tester
was like, oh, coffee.

00:06:35.865 --> 00:06:37.412
That's the coolest thing.

00:06:37.412 --> 00:06:39.713
I love the idea of
collecting coffee.

00:06:39.713 --> 00:06:41.713
And so one of the cool
things about play testing

00:06:41.713 --> 00:06:44.260
is if you don't say
anything, they will give you

00:06:44.260 --> 00:06:46.880
really useful information,
even though that's not

00:06:46.880 --> 00:06:48.630
what you intended at
all, which was really

00:06:48.630 --> 00:06:49.906
cool to experience firsthand.

00:06:49.906 --> 00:06:52.770
And so we decided to stick
with the coffee mechanic,

00:06:52.770 --> 00:06:54.990
and it ended up being a
little more silly than what

00:06:54.990 --> 00:06:58.020
we originally planned for.

00:06:58.020 --> 00:07:00.780
But like I said,
communication was really hard.

00:07:00.780 --> 00:07:03.940
Planning out who was going to
do what with a digital prototype

00:07:03.940 --> 00:07:07.640
was much more difficult
than with a paper prototype,

00:07:07.640 --> 00:07:09.550
I personally feel.

00:07:09.550 --> 00:07:13.534
Because code intermingles
in a way that paper doesn't.

00:07:13.534 --> 00:07:14.950
And so it becomes
really difficult

00:07:14.950 --> 00:07:17.200
when people are pushing
things and pulling things

00:07:17.200 --> 00:07:18.290
and then things break.

00:07:18.290 --> 00:07:22.770
And so that was really hard.

00:07:22.770 --> 00:07:24.250
A way to change
this, I feel like,

00:07:24.250 --> 00:07:27.810
would be to just make
sure everyone replies

00:07:27.810 --> 00:07:30.570
to their emails, and make
sure people are talking

00:07:30.570 --> 00:07:32.950
and everyone knows
what's going on.

00:07:32.950 --> 00:07:34.700
And I don't know the
best way to do this.

00:07:34.700 --> 00:07:38.160
Maybe an IRC chat,
where they constantly

00:07:38.160 --> 00:07:40.195
have that chat channel
there and people

00:07:40.195 --> 00:07:42.540
can look at it
when they want to.

00:07:42.540 --> 00:07:44.300
Because emails kind of get lost.

00:07:44.300 --> 00:07:47.500
And text messages people
forget to reply to.

00:07:47.500 --> 00:07:49.640
So something like that,
where it's constantly there

00:07:49.640 --> 00:07:51.950
and you can go look
at it and hopefully

00:07:51.950 --> 00:07:53.267
reply to it in a timely manner.

00:07:53.267 --> 00:07:54.850
Or maybe just have--
one of the things

00:07:54.850 --> 00:07:57.020
I did in my other classes
is the very beginning,

00:07:57.020 --> 00:07:59.670
everyone had to write
up a contract of when

00:07:59.670 --> 00:08:02.460
you'd be working on things,
when you reply to things.

00:08:02.460 --> 00:08:04.520
And so we had to
sign and say, I will

00:08:04.520 --> 00:08:09.030
reply to any emails about
this at 9:00 PM every day.

00:08:09.030 --> 00:08:11.856
And so you can expect a
reply by my by 10:00 PM.

00:08:11.856 --> 00:08:13.355
And so because we
had this contract,

00:08:13.355 --> 00:08:17.280
we knew-- if I send an email
to this person before 9:00 PM,

00:08:17.280 --> 00:08:19.620
I will get a reply
an hour later, which

00:08:19.620 --> 00:08:22.800
was really useful when
people were a little hectic

00:08:22.800 --> 00:08:24.330
and they had other things to do.

00:08:24.330 --> 00:08:26.163
At least I knew I would
get that email back.

00:08:28.544 --> 00:08:29.488
So any questions?

00:08:32.466 --> 00:08:34.049
PROFESSOR: So same
question as before.

00:08:34.049 --> 00:08:35.480
What game engine did you use?

00:08:35.480 --> 00:08:36.771
PRESENTER 2: So we used Phaser.

00:08:36.771 --> 00:08:38.465
And any coding
questions, I'm going

00:08:38.465 --> 00:08:41.290
to direct to another team member
who was more heavily invested

00:08:41.290 --> 00:08:42.559
in it than I was.

00:08:42.559 --> 00:08:44.600
PROFESSOR: Anybody want
to speak up about coding?

00:08:44.600 --> 00:08:46.391
AUDIENCE: [INAUDIBLE]
curious about Phaser.

00:09:01.339 --> 00:09:03.630
PRESENTER 3: I thought Phaser
was an interesting engine

00:09:03.630 --> 00:09:04.820
to use.

00:09:04.820 --> 00:09:07.330
I think in terms of the
organization of the code,

00:09:07.330 --> 00:09:09.750
you have to do a lot of
thinking beforehand if you

00:09:09.750 --> 00:09:10.925
want to make it work well.

00:09:13.680 --> 00:09:16.450
I guess it could be a
little finicky when you just

00:09:16.450 --> 00:09:18.676
start building, because we
thought, OK, well, we'll

00:09:18.676 --> 00:09:20.550
add code, and then we'll
sort of architect it

00:09:20.550 --> 00:09:22.520
based on what we see happening.

00:09:22.520 --> 00:09:25.420
But then we came to realize
that our code wasn't

00:09:25.420 --> 00:09:28.660
going to be as separable
as we thought it might be.

00:09:28.660 --> 00:09:32.580
I also ran into a couple of
bugs that were in Phaser itself

00:09:32.580 --> 00:09:35.880
that I had to sort
of dance around.

00:09:35.880 --> 00:09:39.360
So I would say watch
out for the fact

00:09:39.360 --> 00:09:41.680
that there are still
some bugs in it.

00:09:41.680 --> 00:09:45.860
PRESENTER 4: Yeah,
just callback nastiness

00:09:45.860 --> 00:09:50.220
and having to think about
something will happen now-ish.

00:09:50.220 --> 00:09:52.605
Time isn't really now-now.

00:09:52.605 --> 00:09:56.570
It's like, now kind of
now, then kind of then,

00:09:56.570 --> 00:09:58.532
floating point numbers
that are somehow always

00:09:58.532 --> 00:09:59.990
floats and nothing
is ever actually

00:09:59.990 --> 00:10:01.596
equal to anything else.

00:10:01.596 --> 00:10:03.800
PROFESSOR: Is any
of that documented?

00:10:03.800 --> 00:10:05.380
PRESENTER 4: This
is just found out.

00:10:05.380 --> 00:10:08.320
That's JavaScript.

00:10:08.320 --> 00:10:11.150
But I thought we could get away
from JavaScript by wrapping

00:10:11.150 --> 00:10:13.285
that all in an engine, but no.

00:10:22.850 --> 00:10:24.050
PROFESSOR: Thank you.

00:10:24.050 --> 00:10:24.841
PRESENTER 5: Hello.

00:10:24.841 --> 00:10:26.020
We were Plunder Winds.

00:10:26.020 --> 00:10:28.150
So starting off with the good.

00:10:28.150 --> 00:10:31.080
I think our team was actually
pretty well organized,

00:10:31.080 --> 00:10:34.170
and our roles were well-defined.

00:10:34.170 --> 00:10:38.700
So from the very beginning,
we set up task lists and lines

00:10:38.700 --> 00:10:39.500
of communication.

00:10:39.500 --> 00:10:41.130
We set up a mailing
list and then

00:10:41.130 --> 00:10:43.060
assigned everybody
specific roles.

00:10:43.060 --> 00:10:47.690
And then from that, we
were able to-- none of us

00:10:47.690 --> 00:10:49.130
duplicated work.

00:10:49.130 --> 00:10:53.550
And we set up a good
architecture early on.

00:10:53.550 --> 00:10:55.630
And so we used Phaser.

00:10:55.630 --> 00:10:57.890
And unfortunately, there's
this one part of Phaser

00:10:57.890 --> 00:10:59.365
that's not really
well documented

00:10:59.365 --> 00:11:02.000
in any of the examples and
tutorials which is the state

00:11:02.000 --> 00:11:03.757
machine that Phaser has.

00:11:03.757 --> 00:11:05.590
Surprise, there's a
state machine in Phaser.

00:11:05.590 --> 00:11:08.740
And then once we discovered
that-- we discovered

00:11:08.740 --> 00:11:10.800
that early on and used it.

00:11:10.800 --> 00:11:15.120
And so that allowed us to
really architect our code well

00:11:15.120 --> 00:11:17.120
and separate out modules.

00:11:17.120 --> 00:11:21.360
And we also used a JavaScript
module thing, which basically

00:11:21.360 --> 00:11:25.470
made it so that all of our
coding efforts were really--

00:11:25.470 --> 00:11:27.327
were really efficient, I think.

00:11:27.327 --> 00:11:32.060
And as for the bad,
five out of six,

00:11:32.060 --> 00:11:34.630
or basically our
entire team, came down

00:11:34.630 --> 00:11:37.650
with the flu the first week,
or over the first weekend.

00:11:37.650 --> 00:11:40.060
And that really
impacted our schedule.

00:11:40.060 --> 00:11:43.360
So originally we had wanted
to get a playable prototype

00:11:43.360 --> 00:11:47.620
by the first weekend so we
could get people touching it

00:11:47.620 --> 00:11:49.630
and start getting feedback.

00:11:49.630 --> 00:11:53.740
But the plans best
laid, it doesn't

00:11:53.740 --> 00:11:55.050
help if everyone gets sick.

00:11:55.050 --> 00:11:57.470
So we had a large
schedule impact.

00:11:57.470 --> 00:12:00.960
And the way we had to deal
with that was, like, there's

00:12:00.960 --> 00:12:03.512
one guy who was able to code
throughout the entire first

00:12:03.512 --> 00:12:04.060
week.

00:12:04.060 --> 00:12:06.660
And then the rest of us
were playing catch up.

00:12:06.660 --> 00:12:08.470
And so we didn't get
anything playable

00:12:08.470 --> 00:12:12.740
until the in-class
workshop on Wednesday.

00:12:12.740 --> 00:12:15.010
And I think that really
hurt us because we weren't

00:12:15.010 --> 00:12:17.680
able to get a lot of
important feedback

00:12:17.680 --> 00:12:19.790
until very late in the process.

00:12:19.790 --> 00:12:23.731
And so there were some
features that we kind of added.

00:12:23.731 --> 00:12:27.090
And we were like, this may
address player concerns.

00:12:27.090 --> 00:12:29.340
But we just didn't get
enough feedback or data

00:12:29.340 --> 00:12:32.555
to figure out whether or not
those concerns were actually

00:12:32.555 --> 00:12:34.375
really addressed.

00:12:34.375 --> 00:12:38.570
PROFESSOR: And anything
you'd do differently?

00:12:38.570 --> 00:12:41.960
PRESENTER 5: I think
we would not get sick.

00:12:41.960 --> 00:12:49.646
But also, we set up Asana
and everything on Monday.

00:12:49.646 --> 00:12:51.020
But then we learned,
like, oh, we

00:12:51.020 --> 00:12:53.230
have to do a sprint task
list and a product backlog

00:12:53.230 --> 00:12:54.560
on Wednesday.

00:12:54.560 --> 00:12:57.590
So I think there was
a bit of a weird issue

00:12:57.590 --> 00:13:00.900
there, where we already had
one task management system,

00:13:00.900 --> 00:13:02.610
and then we introduced
another one.

00:13:02.610 --> 00:13:05.950
And then we introduced scrum
boards and we were like, well,

00:13:05.950 --> 00:13:06.979
which one do we use?

00:13:06.979 --> 00:13:09.020
And then we just didn't
end up using any of them.

00:13:13.724 --> 00:13:14.765
PROFESSOR: Any questions?

00:13:17.570 --> 00:13:21.790
So my question, I think,
is you had the flu.

00:13:21.790 --> 00:13:23.660
A bunch of people were out.

00:13:23.660 --> 00:13:24.850
You didn't cut features.

00:13:24.850 --> 00:13:26.044
You tried to just catch up.

00:13:26.044 --> 00:13:27.585
Did you think about
cutting features?

00:13:27.585 --> 00:13:30.530
Do you feel like you ended
up cutting anything at all?

00:13:30.530 --> 00:13:34.680
PRESENTER 5: So I think our core
game was actually, like-- it

00:13:34.680 --> 00:13:38.110
was pretty simple to implement.

00:13:38.110 --> 00:13:41.870
And I just want to give
a shout-out to our team.

00:13:41.870 --> 00:13:43.380
You guys pulled
off an awesome job

00:13:43.380 --> 00:13:47.020
and implemented
everything by Wednesday.

00:13:47.020 --> 00:13:50.810
And so we did actually
manage to get a feature

00:13:50.810 --> 00:13:54.250
complete game by Wednesday.

00:13:54.250 --> 00:13:57.790
And then we started adding
tweaks, like interface tweaks

00:13:57.790 --> 00:14:01.590
and maybe a visual cue here
and there throughout the rest

00:14:01.590 --> 00:14:02.530
of the week.

00:14:02.530 --> 00:14:07.370
But in terms of
cutting features,

00:14:07.370 --> 00:14:10.490
we didn't really have any
complex time-intensive features

00:14:10.490 --> 00:14:15.440
that we would have benefited
from cutting, I don't think.

00:14:15.440 --> 00:14:16.430
PROFESSOR: Thank you.

00:14:16.430 --> 00:14:19.400
PRESENTER 6: So our project
was Beaver Evolution.

00:14:19.400 --> 00:14:23.607
And so I guess I'll first go
through three of the bigger

00:14:23.607 --> 00:14:25.587
design challenges
we came up with

00:14:25.587 --> 00:14:28.805
or that we encountered
during these two weeks.

00:14:28.805 --> 00:14:31.280
And our [? system ?]
was working with Phaser,

00:14:31.280 --> 00:14:35.735
which is kind of design, kind
of the project challenge.

00:14:35.735 --> 00:14:37.962
And so one thing
we ran into is we

00:14:37.962 --> 00:14:40.190
didn't realize there was
this thing called stages,

00:14:40.190 --> 00:14:42.190
and I think you guys
just mentioned that.

00:14:42.190 --> 00:14:45.390
But since everything is
turn-based, and in each turn

00:14:45.390 --> 00:14:47.600
you can make a choice
between building, populating,

00:14:47.600 --> 00:14:51.340
and evolving, and then
disaster might strike.

00:14:51.340 --> 00:14:53.205
So there was different
things that happen.

00:14:53.205 --> 00:14:54.788
So we thought it
could be very modular

00:14:54.788 --> 00:14:56.214
and we could use stages.

00:14:56.214 --> 00:14:59.390
But then we learned that
stages really start and stop

00:14:59.390 --> 00:15:02.475
every time you switch stages.

00:15:02.475 --> 00:15:06.400
So it doesn't take
the info about what

00:15:06.400 --> 00:15:08.508
happened in a previous
stage, which was

00:15:08.508 --> 00:15:09.732
really important to our game.

00:15:09.732 --> 00:15:11.898
So then we ended up having
to switch everything over

00:15:11.898 --> 00:15:14.934
to Phaser groups, so we could
hide groups and show groups.

00:15:14.934 --> 00:15:16.649
So that was one of
our first challenges,

00:15:16.649 --> 00:15:18.440
just kind of figuring
out how Phaser worked

00:15:18.440 --> 00:15:21.365
and what would be
best for our code.

00:15:21.365 --> 00:15:23.326
It turned out our
code was very modular

00:15:23.326 --> 00:15:25.200
because there were so
many different elements

00:15:25.200 --> 00:15:25.930
to each turn.

00:15:25.930 --> 00:15:28.655
So it was very easy
to split up the work.

00:15:28.655 --> 00:15:30.220
And that was helpful.

00:15:30.220 --> 00:15:32.530
Overall, we really liked Phaser.

00:15:32.530 --> 00:15:34.940
Our second challenge
is balancing the game,

00:15:34.940 --> 00:15:43.252
so making it not too easy to
win and not too hard to win.

00:15:43.252 --> 00:15:48.225
And we kind of changed that by
changing some of the winning

00:15:48.225 --> 00:15:51.906
conditions and then also
adding a few mechanics here

00:15:51.906 --> 00:15:54.650
and there to make
the game harder.

00:15:54.650 --> 00:15:56.530
Because often it
was just too easy.

00:15:56.530 --> 00:15:59.530
So for example, you
could just keep evolving.

00:15:59.530 --> 00:16:01.630
Or you could keep
populating your beavers.

00:16:01.630 --> 00:16:04.420
And then once you reached the
number of beavers you needed,

00:16:04.420 --> 00:16:05.350
you'd win.

00:16:05.350 --> 00:16:07.520
But we kind of changed
that by implementing

00:16:07.520 --> 00:16:12.076
a rule where you can't
populate every turn because you

00:16:12.076 --> 00:16:15.410
have to [INAUDIBLE].

00:16:15.410 --> 00:16:17.202
So I guess the slide
is not really working.

00:16:17.202 --> 00:16:17.951
PRESENTER 7: Yeah.

00:16:17.951 --> 00:16:20.170
So I'm not sure why the
screen won't show our slides,

00:16:20.170 --> 00:16:22.630
but we can keep
talking about the game.

00:16:22.630 --> 00:16:24.630
So Rachel talked a
lot about the design

00:16:24.630 --> 00:16:27.540
challenges we ran
into for the game.

00:16:27.540 --> 00:16:30.260
And so I'll talk about some
of the project challenges

00:16:30.260 --> 00:16:32.000
that we ran into.

00:16:32.000 --> 00:16:36.880
I was assigned the role
of the product manager.

00:16:36.880 --> 00:16:40.170
So you remember the product
manager in the scrum roles

00:16:40.170 --> 00:16:43.830
is the person who's supposed to
sort of lead where the game is

00:16:43.830 --> 00:16:46.654
going and make sure that all
the design implementations are

00:16:46.654 --> 00:16:48.570
the way that they're
supposed to be and handle

00:16:48.570 --> 00:16:51.330
any changes that we need
to make to the code.

00:16:51.330 --> 00:16:54.300
So unfortunately,
we didn't explicitly

00:16:54.300 --> 00:16:55.870
assign a scrum master.

00:16:55.870 --> 00:16:58.930
So by taking on the role of
being the product manager,

00:16:58.930 --> 00:17:01.496
I also assumed some of the
roles of the scrum master.

00:17:01.496 --> 00:17:04.380
And I know that this
was stated to us

00:17:04.380 --> 00:17:07.560
in the lecture about scrum,
how we should definitely not

00:17:07.560 --> 00:17:08.060
do that.

00:17:08.060 --> 00:17:10.069
And we now see why.

00:17:10.069 --> 00:17:12.609
I unfortunately had to run
some of the meeting-- I

00:17:12.609 --> 00:17:14.650
unfortunately had to focus
on running the meeting

00:17:14.650 --> 00:17:16.630
as well as on making
sure that the design was

00:17:16.630 --> 00:17:18.510
going in the direction
it was supposed to go.

00:17:18.510 --> 00:17:21.619
So I definitely lost
some efficiency there.

00:17:21.619 --> 00:17:24.050
And we started off
very efficient.

00:17:24.050 --> 00:17:27.214
We were able to assign tasks,
and our product backlog,

00:17:27.214 --> 00:17:29.130
our sprint task lists,
were all very laid out.

00:17:29.130 --> 00:17:30.480
We had an early
meeting to make sure

00:17:30.480 --> 00:17:31.771
that everything was going well.

00:17:31.771 --> 00:17:35.480
But then by the end, I just sort
of started running out of time.

00:17:35.480 --> 00:17:38.330
We were unable to schedule a
meeting after the play testing

00:17:38.330 --> 00:17:41.250
session due to everybody's
schedules being very tight.

00:17:41.250 --> 00:17:43.140
And so some of the
changes that we

00:17:43.140 --> 00:17:45.690
wanted to implement after
the feedback from the testing

00:17:45.690 --> 00:17:47.535
session we were
unable to implement.

00:17:47.535 --> 00:17:49.660
But we were still able to
get a good game together.

00:17:49.660 --> 00:17:52.920
Our organization just sort of
fell apart towards the end.

00:17:52.920 --> 00:17:55.980
So those were probably
some of the biggest design

00:17:55.980 --> 00:17:57.220
problems we ran into.

00:17:57.220 --> 00:18:00.300
I would definitely next
time, for our next project,

00:18:00.300 --> 00:18:02.260
make sure that there's
a clear product

00:18:02.260 --> 00:18:06.430
manager and a clear scrum
master so that those two

00:18:06.430 --> 00:18:08.720
roles can be done very
efficiently and not overlap.

00:18:08.720 --> 00:18:09.608
PRESENTER 6: Yeah.

00:18:09.608 --> 00:18:11.841
And I'll just add
on, so our testing

00:18:11.841 --> 00:18:14.096
we really realized that
user experience could

00:18:14.096 --> 00:18:17.450
be improved between having all
the players know all the game

00:18:17.450 --> 00:18:19.450
mechanics and rules
coming into the game.

00:18:19.450 --> 00:18:23.100
So yeah, in addition to
not being able to meet up,

00:18:23.100 --> 00:18:24.780
not being able to
play all the features,

00:18:24.780 --> 00:18:29.660
we really just focused on
improving game experience

00:18:29.660 --> 00:18:32.830
by adding audio and by
adding smaller things.

00:18:32.830 --> 00:18:36.159
But I think earlier
in the game, we

00:18:36.159 --> 00:18:38.075
should have thought more
about user experience

00:18:38.075 --> 00:18:41.879
and making sure that
was a good flow.

00:18:41.879 --> 00:18:43.340
PROFESSOR: Are
there any questions?

00:18:46.919 --> 00:18:48.210
I think you covered everything.

00:18:48.210 --> 00:18:49.042
Thank you.

00:18:49.042 --> 00:18:50.000
PRESENTER 8: All right.

00:18:50.000 --> 00:18:51.050
We're Comcastic.

00:18:51.050 --> 00:18:53.320
So as you'll recall,
our game involves

00:18:53.320 --> 00:18:55.480
placing service centers
on a map and trying

00:18:55.480 --> 00:18:57.656
to cover all of the houses.

00:18:57.656 --> 00:19:00.645
So what went wrong-- setting
up Phaser took a long time.

00:19:00.645 --> 00:19:04.055
It was really hard for us to
actually start writing code.

00:19:04.055 --> 00:19:06.360
We were using TypeScript,
which was important,

00:19:06.360 --> 00:19:09.420
I think, for us, especially
as a documentation.

00:19:09.420 --> 00:19:12.245
But it took some time to
get a good set-up where

00:19:12.245 --> 00:19:14.570
you had a posted Phaser
where everybody could develop

00:19:14.570 --> 00:19:16.585
and you had
TypeScript integrated.

00:19:16.585 --> 00:19:19.215
And it would be nice if--
future projects, I think,

00:19:19.215 --> 00:19:20.215
will be set up for that.

00:19:20.215 --> 00:19:22.940
But for the first
project, that was hard.

00:19:22.940 --> 00:19:25.106
Meetings-- it was really
hard to schedule meetings.

00:19:25.106 --> 00:19:26.605
We had seven people
when we started,

00:19:26.605 --> 00:19:28.130
and we went down to six.

00:19:28.130 --> 00:19:31.520
And even at six, it was still
hard to schedule meetings,

00:19:31.520 --> 00:19:33.720
mostly because of PSETs.

00:19:33.720 --> 00:19:36.940
I had one PSET, but everybody
else had a lot of PSETs,

00:19:36.940 --> 00:19:42.030
and it was a lot of
conflicting times.

00:19:42.030 --> 00:19:44.620
What went right-- so
Phaser itself, I think,

00:19:44.620 --> 00:19:46.050
really helped us develop fast.

00:19:46.050 --> 00:19:48.990
Once we got the hang of Phaser,
it was a lot easier to develop.

00:19:48.990 --> 00:19:50.445
It was pretty consistent.

00:19:50.445 --> 00:19:52.210
The code is pretty good.

00:19:52.210 --> 00:19:58.540
It was not hard to debug by just
looking at Phaser code for us.

00:19:58.540 --> 00:20:01.237
Also, I think we got the
synchronous communication down,

00:20:01.237 --> 00:20:03.403
because we really didn't
meet that often, especially

00:20:03.403 --> 00:20:05.490
as a whole group.

00:20:05.490 --> 00:20:07.290
So we were using
Trello, and it was

00:20:07.290 --> 00:20:10.190
really nice to just
sort of bounce an idea

00:20:10.190 --> 00:20:13.020
off Trello, just put
in [INAUDIBLE] feature,

00:20:13.020 --> 00:20:17.320
and then we would sort
of discuss it via Trello.

00:20:17.320 --> 00:20:21.050
I think that that's something
that we want to keep doing.

00:20:21.050 --> 00:20:23.150
Also balance-- I think
our balance is actually

00:20:23.150 --> 00:20:23.680
pretty good.

00:20:23.680 --> 00:20:25.950
It was sort of a coincidence
that our pieces--

00:20:25.950 --> 00:20:29.070
so the components of our
balance are basically

00:20:29.070 --> 00:20:31.100
how the map looks,
where the houses are,

00:20:31.100 --> 00:20:33.495
and then also the service
centers you can place are.

00:20:33.495 --> 00:20:36.120
And you can imagine it'd be kind
of difficult to make these two

00:20:36.120 --> 00:20:39.390
match up, but I think our
first random attempts ended up

00:20:39.390 --> 00:20:41.430
working pretty well.

00:20:41.430 --> 00:20:44.047
What we would do differently--
we would definitely

00:20:44.047 --> 00:20:46.630
stick to one communication tool
and stick to something simple.

00:20:46.630 --> 00:20:49.530
I think Trello was fine,
[? but even ?] GitHub issues

00:20:49.530 --> 00:20:53.961
would be good, and they would
integrate with the code.

00:20:53.961 --> 00:20:56.210
Definitely we want to keep
scheduling partial meetings

00:20:56.210 --> 00:20:58.830
with some of the group,
just the programmers, just

00:20:58.830 --> 00:21:01.280
a handful of people, whoever
can make it to one meeting.

00:21:01.280 --> 00:21:05.020
I think with students that ends
up being the best thing to do.

00:21:05.020 --> 00:21:08.090
And getting a [INAUDIBLE]
viable product out early on-- I

00:21:08.090 --> 00:21:12.320
think we underestimated how
important that was, even just

00:21:12.320 --> 00:21:15.490
getting a Phaser set up where
you have an empty game running

00:21:15.490 --> 00:21:16.360
quickly.

00:21:16.360 --> 00:21:18.940
Even that, if you get that done
in two hours versus two days,

00:21:18.940 --> 00:21:22.484
it makes a huge difference.

00:21:22.484 --> 00:21:24.388
PROFESSOR: Any
questions from anybody?

00:21:24.388 --> 00:21:27.720
AUDIENCE: [INAUDIBLE].

00:21:27.720 --> 00:21:30.790
PRESENTER 8: Yes,
face-to-face meetings.

00:21:30.790 --> 00:21:32.337
Even Google Hangouts
actually weren't

00:21:32.337 --> 00:21:34.540
easy to get everybody
at one time.

00:21:38.860 --> 00:21:40.324
PROFESSOR: All right, thank you.

00:21:40.324 --> 00:21:40.990
PRESENTER 9: Hi.

00:21:40.990 --> 00:21:42.630
We're Modudice.

00:21:42.630 --> 00:21:43.690
That is our game.

00:21:43.690 --> 00:21:46.515
For those of you that
played it, it's sort of

00:21:46.515 --> 00:21:48.076
like a number-puzzle type game.

00:21:48.076 --> 00:21:49.330
You move around a dice.

00:21:49.330 --> 00:21:52.140
You add numbers,
a module of seven.

00:21:52.140 --> 00:21:54.933
And you want to make as many
sevens on the board as you can,

00:21:54.933 --> 00:21:57.660
and you get points.

00:21:57.660 --> 00:22:02.050
And so what went well for
us is our design meetings

00:22:02.050 --> 00:22:02.730
went quite well.

00:22:02.730 --> 00:22:04.350
We had two or
three of these that

00:22:04.350 --> 00:22:06.190
were basically dedicated
to figuring out,

00:22:06.190 --> 00:22:07.332
how do we do this better?

00:22:07.332 --> 00:22:09.290
And how do we answer some
of the questions that

00:22:09.290 --> 00:22:10.570
came up during testing?

00:22:10.570 --> 00:22:12.400
And I feel like those
went really well.

00:22:12.400 --> 00:22:13.930
We were able to get
good discussion.

00:22:13.930 --> 00:22:15.875
We actually came up with,
like, solid answers.

00:22:15.875 --> 00:22:17.740
And we were convinced, like, OK.

00:22:17.740 --> 00:22:20.110
This may not be
the best way to go,

00:22:20.110 --> 00:22:24.220
but it's definitely comparably
good to anything else.

00:22:24.220 --> 00:22:26.350
So we're going to
just stick with this.

00:22:26.350 --> 00:22:29.070
And we were able to make task
lists as a result of that.

00:22:29.070 --> 00:22:30.990
So we decide on something
and then say, OK,

00:22:30.990 --> 00:22:33.000
what do we need to do
to actually do this?

00:22:33.000 --> 00:22:35.963
And I think that went
across fairly well.

00:22:35.963 --> 00:22:39.020
And we did a lot of good
testing, especially the testing

00:22:39.020 --> 00:22:40.520
we did in class.

00:22:40.520 --> 00:22:41.992
And on top of that,
like, all of us

00:22:41.992 --> 00:22:43.575
just tested the game
with our friends,

00:22:43.575 --> 00:22:47.540
since it's, like, fairly
easy to play and sort of fun.

00:22:47.540 --> 00:22:49.320
So yeah, the testing
was really useful.

00:22:49.320 --> 00:22:52.099
And we actually did change
a lot as a cause of it.

00:22:52.099 --> 00:22:54.015
PRESENTER 10: I'd like
to add to the task list

00:22:54.015 --> 00:22:56.056
that I think we also did
a very good job in terms

00:22:56.056 --> 00:22:58.640
of prioritizing what
tasks were important.

00:22:58.640 --> 00:23:01.920
I'd like to say that we cut
two features-- the dice rolling

00:23:01.920 --> 00:23:03.192
animation and sound.

00:23:03.192 --> 00:23:05.150
And I think those were
really good feature cuts

00:23:05.150 --> 00:23:07.180
because they weren't
central to our game-play

00:23:07.180 --> 00:23:09.360
as a very fast-paced
browser game.

00:23:09.360 --> 00:23:13.120
And cutting them actually
saved us a lot of work

00:23:13.120 --> 00:23:15.314
and let us have the time
to spend on other features

00:23:15.314 --> 00:23:15.814
and stuff.

00:23:22.130 --> 00:23:24.490
PRESENTER 9: And Phaser
was good in the sense

00:23:24.490 --> 00:23:26.060
that it was something
that went well,

00:23:26.060 --> 00:23:27.700
because it was
easy to start with

00:23:27.700 --> 00:23:29.060
and it was fairly easy to use.

00:23:29.060 --> 00:23:31.310
Like, once you knew what you
needed to do with Phaser,

00:23:31.310 --> 00:23:33.400
it was pretty simple
to get it going.

00:23:33.400 --> 00:23:36.450
But it was also a bad
thing because it's Java.

00:23:36.450 --> 00:23:37.850
At least we did
it in JavaScript.

00:23:37.850 --> 00:23:40.640
So JavaScript is
hard to work with,

00:23:40.640 --> 00:23:42.920
hard to fix bugs and stuff.

00:23:42.920 --> 00:23:45.003
And I could see-- like,
Phaser was fine because it

00:23:45.003 --> 00:23:46.150
was a fairly small project.

00:23:46.150 --> 00:23:48.210
I could see Phaser being
absolutely horrible

00:23:48.210 --> 00:23:48.625
for large projects.

00:23:48.625 --> 00:23:50.291
Like, I would never
want to use it ever.

00:23:52.219 --> 00:23:54.260
PRESENTER 11: I actually
thought that it actually

00:23:54.260 --> 00:23:56.219
did not have a lot
of good documentation

00:23:56.219 --> 00:23:57.344
when we were trying things.

00:23:57.344 --> 00:24:01.120
I thought the community was
not the best for Phaser.

00:24:01.120 --> 00:24:04.445
PRESENTER 9: And so Git,
I think, is awesome.

00:24:04.445 --> 00:24:06.490
But a lot of people
weren't familiar with Git.

00:24:06.490 --> 00:24:08.770
And so the branching
was confusing.

00:24:08.770 --> 00:24:10.620
And that became an issue.

00:24:10.620 --> 00:24:13.694
So if you're going to use a
[? version control ?] like Git,

00:24:13.694 --> 00:24:15.110
make sure everyone
understands it.

00:24:15.110 --> 00:24:16.470
That's something we learned.

00:24:16.470 --> 00:24:19.494
And getting tasks
done separately--

00:24:19.494 --> 00:24:21.660
we thought that would be
most efficient, since we're

00:24:21.660 --> 00:24:24.035
everywhere across campus, it's
hard to meet up and stuff.

00:24:24.035 --> 00:24:26.602
But I think it's actually
better to just at least start

00:24:26.602 --> 00:24:27.310
working together.

00:24:27.310 --> 00:24:30.040
When you have a set of tasks,
begin the work together,

00:24:30.040 --> 00:24:32.350
do as much as you can,
and make sure everyone's

00:24:32.350 --> 00:24:34.260
clear on how to do
what they need to do

00:24:34.260 --> 00:24:39.180
and what exactly they need
to do so that everyone feels

00:24:39.180 --> 00:24:41.534
like they are actually
contributing and working

00:24:41.534 --> 00:24:42.770
together on this.

00:24:42.770 --> 00:24:44.978
PRESENTER 12: I want to add
one more point on Phaser,

00:24:44.978 --> 00:24:47.877
in the sense that-- I feel like
Phaser-- we're trash-talking it

00:24:47.877 --> 00:24:50.460
right now, but I think Phaser
is good for a one-person project

00:24:50.460 --> 00:24:53.190
because it's very easy to
manage the stuff on your own.

00:24:53.190 --> 00:24:55.850
But with larger
groups, I just don't

00:24:55.850 --> 00:24:59.885
like reading through
JavaScript spaghetti code.

00:24:59.885 --> 00:25:02.010
So maybe we needed to find
a better way to organize

00:25:02.010 --> 00:25:03.400
our code with more people.

00:25:03.400 --> 00:25:06.647
But I just didn't like-- like,
I edited a piece of code,

00:25:06.647 --> 00:25:08.480
someone else edited it,
and I was like, wow,

00:25:08.480 --> 00:25:11.450
it's totally different from
what I expected it to be.

00:25:11.450 --> 00:25:13.470
PRESENTER 9: And
so yeah, next time

00:25:13.470 --> 00:25:15.670
it would definitely help
to have scrum meeting

00:25:15.670 --> 00:25:18.680
and work physically together,
so basically just spend

00:25:18.680 --> 00:25:22.410
more time together as opposed
to messaging on email and stuff.

00:25:22.410 --> 00:25:24.760
Make sure everyone
understands the source control

00:25:24.760 --> 00:25:25.925
and the engine.

00:25:25.925 --> 00:25:30.320
And like, have more people
really think about-- like,

00:25:30.320 --> 00:25:33.250
have everyone on the team really
think about design decisions.

00:25:33.250 --> 00:25:35.892
And then communicate,
communicate.

00:25:35.892 --> 00:25:37.600
More communication
definitely would hurt.

00:25:37.600 --> 00:25:39.420
PRESENTER 10: I would
like to add to that

00:25:39.420 --> 00:25:40.669
in terms of the communication.

00:25:40.669 --> 00:25:43.180
Because as a new
member of a team who

00:25:43.180 --> 00:25:47.330
joined the Modudice, not
the original Modudice team,

00:25:47.330 --> 00:25:49.750
we didn't actually host
an information session

00:25:49.750 --> 00:25:52.060
about what were the critical
things about the game,

00:25:52.060 --> 00:25:53.840
that we made it
the way we made it.

00:25:53.840 --> 00:25:56.640
So the new members, such
as me, had difficulty

00:25:56.640 --> 00:26:00.850
to put in variable input, at
least for the starting duration

00:26:00.850 --> 00:26:02.860
of the project, and then
we picked up later on.

00:26:02.860 --> 00:26:05.789
But if we had an information
session, something like that,

00:26:05.789 --> 00:26:06.830
it would be very helpful.

00:26:10.309 --> 00:26:12.297
PROFESSOR: Any
questions from anybody?

00:26:12.297 --> 00:26:14.782
AUDIENCE: Well, [INAUDIBLE].

00:26:14.782 --> 00:26:17.764
When you said that your
design meetings-- this was

00:26:17.764 --> 00:26:19.917
all the way on your first
slide, were those online?

00:26:19.917 --> 00:26:20.917
Or were those in person?

00:26:20.917 --> 00:26:22.360
PRESENTER 9: It was in person.

00:26:22.360 --> 00:26:24.580
But those were mostly
focused, like-- so we

00:26:24.580 --> 00:26:27.389
had a lot of questions of how
to represent the dice in 2D

00:26:27.389 --> 00:26:28.222
and stuff like that.

00:26:28.222 --> 00:26:29.675
So the design
meetings were mostly

00:26:29.675 --> 00:26:31.543
focused on big
questions like that.

00:26:31.543 --> 00:26:32.990
PRESENTER 11: In
addition, I think

00:26:32.990 --> 00:26:35.744
we had [INAUDIBLE] meetings.

00:26:35.744 --> 00:26:38.134
And I thought that we should
just have multiple smaller

00:26:38.134 --> 00:26:39.090
ones, [INAUDIBLE].

00:26:42.440 --> 00:26:46.556
PRESENTER 9: It ended up
going, like, two hours.

00:26:46.556 --> 00:26:47.510
PROFESSOR: Thank you.

00:26:47.510 --> 00:26:50.692
PRESENTER 13: So what was bad?

00:26:50.692 --> 00:26:52.400
We're going to start
with the bad things.

00:26:52.400 --> 00:26:55.400
The first decision
we made as a team

00:26:55.400 --> 00:26:58.600
was using Unity 2D, because
that was just the majority vote.

00:26:58.600 --> 00:27:03.660
Most people had worked with
Unity for the project before.

00:27:03.660 --> 00:27:06.520
But it ended up having
too many complications.

00:27:06.520 --> 00:27:09.480
And it was actually a good
thing that we switched

00:27:09.480 --> 00:27:10.945
to Phaser very early on.

00:27:10.945 --> 00:27:13.670
Like, two days into the
project we switched to Phaser.

00:27:13.670 --> 00:27:15.710
So Unity [INAUDIBLE].

00:27:15.710 --> 00:27:18.910
Second thing, we weren't
paying too much attention

00:27:18.910 --> 00:27:20.310
to the assignments.

00:27:20.310 --> 00:27:22.300
Everyone was focusing
on the game development

00:27:22.300 --> 00:27:24.530
and making the game look good.

00:27:24.530 --> 00:27:27.490
And we weren't updating
the product backlog,

00:27:27.490 --> 00:27:29.020
and a change log [INAUDIBLE].

00:27:29.020 --> 00:27:31.180
So we had to go back
and remember what

00:27:31.180 --> 00:27:32.620
we worked on in the past week.

00:27:32.620 --> 00:27:36.960
And it was very
asynchronized with that.

00:27:36.960 --> 00:27:39.940
Another thing is we put off a
lot of the work until the day

00:27:39.940 --> 00:27:40.910
before they were due.

00:27:40.910 --> 00:27:43.920
Like, the last project
we had a lot of things

00:27:43.920 --> 00:27:46.116
that could have been
done during the week,

00:27:46.116 --> 00:27:48.440
but the night before,
we always have

00:27:48.440 --> 00:27:50.935
hundreds of emails to sending
the emails around, trying

00:27:50.935 --> 00:27:53.845
to get everything
to actually work.

00:27:53.845 --> 00:27:58.140
And that was a thing that
cut off on our productivity.

00:27:58.140 --> 00:28:01.040
Another thing is that we didn't
really have a lot of meetings.

00:28:01.040 --> 00:28:04.830
We only had two meetings
throughout the entire project,

00:28:04.830 --> 00:28:09.900
which had a downside that we
weren't very synchronized.

00:28:09.900 --> 00:28:12.850
Even in some of those meetings,
some of us couldn't make it.

00:28:12.850 --> 00:28:16.510
So we had to update whoever
wasn't there with what

00:28:16.510 --> 00:28:19.182
happened in the meetings
and things like that.

00:28:19.182 --> 00:28:21.140
And we definitely could
have used more meetings

00:28:21.140 --> 00:28:24.980
to keep our work synchronized.

00:28:24.980 --> 00:28:26.935
The last part is CoffeeScript.

00:28:26.935 --> 00:28:29.300
CoffeeScript was a
good and a bad thing.

00:28:29.300 --> 00:28:31.510
I think it was a good
decision overall,

00:28:31.510 --> 00:28:33.380
but it definitely
had bad parts to it,

00:28:33.380 --> 00:28:35.880
which is that we had
to sort of-- there's

00:28:35.880 --> 00:28:39.825
a hack-ish with Phaser that
had to compile CoffeeScript

00:28:39.825 --> 00:28:43.220
to JavaScript, which caused
some problems with the

00:28:43.220 --> 00:28:46.273
[? gulping, ?] where it
would sometimes not work.

00:28:46.273 --> 00:28:48.800
And we had to run it twice.

00:28:48.800 --> 00:28:52.770
It generated JS files
which we had to not

00:28:52.770 --> 00:28:55.024
commit into the source
control because they

00:28:55.024 --> 00:28:56.940
were changed when the
CoffeeScript files would

00:28:56.940 --> 00:28:57.750
change.

00:28:57.750 --> 00:28:59.840
And so there was some
problems with it.

00:28:59.840 --> 00:29:01.540
But once we had
it up and running,

00:29:01.540 --> 00:29:04.790
it was so easy to write code
and just iterate on the code.

00:29:04.790 --> 00:29:07.060
It was also easy to read
other people's code,

00:29:07.060 --> 00:29:09.420
because it simplified
100 lines of JavaScript

00:29:09.420 --> 00:29:11.200
into two lines of CoffeeScript.

00:29:11.200 --> 00:29:13.090
I'm exaggerating.

00:29:13.090 --> 00:29:17.830
And then finally, also, it
optimized the JS when compiled,

00:29:17.830 --> 00:29:21.750
so it would run faster.

00:29:21.750 --> 00:29:24.665
PRESENTER 14: So talking about
now some things that went well

00:29:24.665 --> 00:29:26.902
in addition to
finding CoffeeScript,

00:29:26.902 --> 00:29:29.286
we had really great group
direction from the get-go.

00:29:29.286 --> 00:29:31.160
Even though we didn't
have a lot of meetings,

00:29:31.160 --> 00:29:33.450
I think one way we
still managed to make

00:29:33.450 --> 00:29:38.820
that work was we divided bigger
tasks into the sub-categories

00:29:38.820 --> 00:29:39.988
really quickly.

00:29:39.988 --> 00:29:42.257
And we also set
up a Google folder

00:29:42.257 --> 00:29:44.230
in which we kept everything.

00:29:44.230 --> 00:29:46.560
We didn't end up using
Trello or anything like that

00:29:46.560 --> 00:29:49.060
because we really found that a
Google folder with everything

00:29:49.060 --> 00:29:52.830
in it was the simplest for
us-- that along with just

00:29:52.830 --> 00:29:56.020
one chain email where we
sent everything really

00:29:56.020 --> 00:29:59.852
kept everything focused and
everybody in communication,

00:29:59.852 --> 00:30:02.900
in the loop, as
best as possible.

00:30:02.900 --> 00:30:05.579
So source control, we
used Git and GitHub.

00:30:05.579 --> 00:30:07.620
And we actually had a
great experience with that.

00:30:07.620 --> 00:30:09.630
I'm sorry some people didn't.

00:30:09.630 --> 00:30:11.530
Nothing ever broke,
and we barely

00:30:11.530 --> 00:30:13.160
had to merge because
I don't think

00:30:13.160 --> 00:30:16.280
we did very much branching,
which is the way I think

00:30:16.280 --> 00:30:18.980
we avoided any problems there.

00:30:18.980 --> 00:30:22.450
So iteration-- we
iterated our game a lot.

00:30:22.450 --> 00:30:24.430
We changed a lot of
things, because we'd

00:30:24.430 --> 00:30:26.795
play it and be like,
well, people keep dying,

00:30:26.795 --> 00:30:28.800
so how can we make that better?

00:30:28.800 --> 00:30:30.650
Another example is
with our sprites,

00:30:30.650 --> 00:30:33.000
as you can see up there--
so the initial designs

00:30:33.000 --> 00:30:34.744
and then what we
changed them to.

00:30:34.744 --> 00:30:36.410
We actually had a
problem where somebody

00:30:36.410 --> 00:30:39.020
looked at our first
alien design and said,

00:30:39.020 --> 00:30:42.520
that looks like a piece
of the female anatomy.

00:30:42.520 --> 00:30:43.700
That is distracting.

00:30:43.700 --> 00:30:44.998
You need to change it.

00:30:44.998 --> 00:30:47.574
And we said, OK, you might
have a valid point there.

00:30:47.574 --> 00:30:50.110
Even if we don't think
so, maybe it does.

00:30:50.110 --> 00:30:51.100
Let's change it.

00:30:51.100 --> 00:30:53.504
So we iterated a lot.

00:30:53.504 --> 00:30:56.660
And then focus testing--
we really actually

00:30:56.660 --> 00:30:58.855
implemented-- talking
about iteration,

00:30:58.855 --> 00:31:00.480
in our focus testing,
the two things we

00:31:00.480 --> 00:31:03.520
found were that new players
were dying really fast.

00:31:03.520 --> 00:31:06.020
It took them, like,
five times before they

00:31:06.020 --> 00:31:07.310
realized how to play the game.

00:31:07.310 --> 00:31:09.590
And then, in addition to
that, after five minutes,

00:31:09.590 --> 00:31:10.590
they were getting bored.

00:31:10.590 --> 00:31:12.674
So we actually
took that to heart,

00:31:12.674 --> 00:31:15.090
and we changed one of the main
premises of our game, which

00:31:15.090 --> 00:31:16.797
was this reloading
thing, that it

00:31:16.797 --> 00:31:19.297
would take a couple of seconds
before you could shoot again.

00:31:19.297 --> 00:31:21.845
And instead, we added
a short term goal

00:31:21.845 --> 00:31:23.350
of actually picking up ammo.

00:31:23.350 --> 00:31:25.585
So you can see-- it's
kind of hard to see.

00:31:25.585 --> 00:31:27.710
But the ammo-- the big
thing is just the animation.

00:31:27.710 --> 00:31:29.165
But if you can see on the
screen, there's a player,

00:31:29.165 --> 00:31:30.880
there's the ammo,
and there's a bug.

00:31:30.880 --> 00:31:36.020
And basically we changed that
whole way the player actually

00:31:36.020 --> 00:31:40.250
shot to make the game a little
more difficult over time

00:31:40.250 --> 00:31:43.470
but also starting easier,
by having everybody smaller

00:31:43.470 --> 00:31:45.300
and then the bugs get bigger.

00:31:45.300 --> 00:31:46.980
So a lot of changes
and iteration

00:31:46.980 --> 00:31:50.670
even based on our focus testing.

00:31:50.670 --> 00:31:53.825
What we would change--
we'd start earlier.

00:31:53.825 --> 00:31:55.630
I know we talked
about a lot of changes

00:31:55.630 --> 00:31:57.993
we made were the night
before things were due.

00:31:57.993 --> 00:32:00.300
Pretty much all of our
documents changed the night

00:32:00.300 --> 00:32:02.120
before they were due.

00:32:02.120 --> 00:32:03.869
And it's kind of
frustrating, you

00:32:03.869 --> 00:32:06.410
know, having to stay up really
late the night before it's due

00:32:06.410 --> 00:32:08.240
when you've had the
whole week to do it.

00:32:08.240 --> 00:32:09.230
So just start earlier.

00:32:09.230 --> 00:32:12.200
I mean, we started pretty early,
but finish earlier, definitely.

00:32:12.200 --> 00:32:14.960
Hands off for the last
12 hours, kind of thing.

00:32:14.960 --> 00:32:17.920
And then we also talked
about this-- being

00:32:17.920 --> 00:32:19.930
focused on what's actually due.

00:32:19.930 --> 00:32:22.630
So one thing that was good
about having a lot of focus

00:32:22.630 --> 00:32:26.565
on our game was that we had a
viable product really early.

00:32:26.565 --> 00:32:31.230
But a lot of our other documents
kind of fell by the wayside,

00:32:31.230 --> 00:32:33.290
and they kind of came
up to one or two people

00:32:33.290 --> 00:32:35.830
to just fix them all the
night before they were due.

00:32:35.830 --> 00:32:38.730
So definitely focus on those
things and more accountability

00:32:38.730 --> 00:32:39.850
with that.

00:32:39.850 --> 00:32:44.330
And in conclusion, even though
we had some frustrations,

00:32:44.330 --> 00:32:45.478
it went pretty well.

00:32:45.478 --> 00:32:48.374
Our game ended up pretty
clean and creep and fun.

00:32:48.374 --> 00:32:50.714
So we really like it.

00:32:50.714 --> 00:32:52.702
Thanks, guys.

00:32:52.702 --> 00:32:55.187
[APPLAUSE]

00:32:56.300 --> 00:32:57.175
PROFESSOR: Questions?

00:32:59.649 --> 00:33:01.648
AUDIENCE: How did you
stumble upon CoffeeScript?

00:33:01.648 --> 00:33:05.630
What was the decision when you
were trying to [INAUDIBLE]?

00:33:05.630 --> 00:33:07.591
PRESENTER 13: Jen, you
want to take this one?

00:33:07.591 --> 00:33:09.465
AUDIENCE: If you could
come down [INAUDIBLE].

00:33:18.180 --> 00:33:20.070
PRESENTER 15: I used
CoffeeScript a lot

00:33:20.070 --> 00:33:22.279
before I was really
familiar with the

00:33:22.279 --> 00:33:23.998
build systems and stuff.

00:33:23.998 --> 00:33:28.662
So I figured it'd be
best to kind of set

00:33:28.662 --> 00:33:32.836
up a build pipeline that
optimizes the [? alpha ?]

00:33:32.836 --> 00:33:39.250
JavaScript to make the game
run faster because [INAUDIBLE].

00:33:39.250 --> 00:33:43.230
PRESENTER 13: And CoffeeScript
also has a lot of shortcuts.

00:33:43.230 --> 00:33:44.810
It's like Python.

00:33:44.810 --> 00:33:46.370
It's like using
Python to write Java.

00:33:46.370 --> 00:33:48.270
It's so good.

00:33:48.270 --> 00:33:51.114
Like that.

00:33:51.114 --> 00:33:52.530
PRESENTER 14: Any
other questions?

00:33:52.530 --> 00:33:54.590
PROFESSOR: Thanks.

00:33:54.590 --> 00:33:55.620
OK, feedback.

00:33:55.620 --> 00:33:58.330
And instructors, please
feel free to jump in

00:33:58.330 --> 00:34:00.800
if I'm missing anything.

00:34:00.800 --> 00:34:02.460
Oh, and I forgot to
copy all my notes.

00:34:02.460 --> 00:34:02.960
All right.

00:34:02.960 --> 00:34:04.160
So yeah, I was wrong.

00:34:04.160 --> 00:34:06.431
Ha, you caught me.

00:34:06.431 --> 00:34:08.639
Slides were intended to be
required for this project,

00:34:08.639 --> 00:34:09.390
but they were not.

00:34:09.390 --> 00:34:12.172
So you're not going to
get penalized for that.

00:34:12.172 --> 00:34:14.750
The issue for that
is slides and visuals

00:34:14.750 --> 00:34:17.159
are recommended to help your
presentations stay on topic.

00:34:17.159 --> 00:34:21.120
Basically, you had
some issues sometimes

00:34:21.120 --> 00:34:23.844
with keeping track of changes.

00:34:23.844 --> 00:34:26.010
We had some issues with
keeping track of our changes

00:34:26.010 --> 00:34:26.840
to our documents.

00:34:26.840 --> 00:34:30.909
So QA is important in
everything that we do in life.

00:34:30.909 --> 00:34:32.850
But for project three,
slides and visuals

00:34:32.850 --> 00:34:37.524
are recommended to help your
presentations stay on topic.

00:34:37.524 --> 00:34:38.940
And what we saw
presentation-wise,

00:34:38.940 --> 00:34:41.120
slide-wise, was perfect
for these five minute

00:34:41.120 --> 00:34:42.250
presentations.

00:34:42.250 --> 00:34:44.540
Quick, dirty, gets
the point across,

00:34:44.540 --> 00:34:46.719
gets the bullets across.

00:34:46.719 --> 00:34:49.570
Visuals, like images or
something, if you need it.

00:34:49.570 --> 00:34:52.300
For project four, that's
a 20-minute presentation.

00:34:52.300 --> 00:34:53.780
Visuals are more
important there.

00:34:53.780 --> 00:34:56.400
And we'll talk about those
presentation requirements

00:34:56.400 --> 00:34:59.640
later when we
start project four.

00:34:59.640 --> 00:35:03.560
So discussion on
meetings, things

00:35:03.560 --> 00:35:05.737
you should do in
project three-- address

00:35:05.737 --> 00:35:08.070
how you're going to meet in
your initial design meeting.

00:35:08.070 --> 00:35:09.530
The most important
thing you have,

00:35:09.530 --> 00:35:11.360
before you even start
designing your game,

00:35:11.360 --> 00:35:14.930
is to talk about who can meet
when, what is your schedule.

00:35:14.930 --> 00:35:17.390
You all have syllabuses
from your other classes.

00:35:17.390 --> 00:35:20.070
When are your PSETs due,
when are your recitations,

00:35:20.070 --> 00:35:21.180
all that stuff.

00:35:21.180 --> 00:35:23.000
Put it in your high-level
design document.

00:35:23.000 --> 00:35:26.130
It's actually one
thing that we use often

00:35:26.130 --> 00:35:28.580
in that one section where
we talk about team roles,

00:35:28.580 --> 00:35:31.030
is team meeting times.

00:35:31.030 --> 00:35:33.870
And I think I heard
this team mention that,

00:35:33.870 --> 00:35:35.530
that you've used in
previous classes.

00:35:35.530 --> 00:35:37.190
That's a very good tip.

00:35:37.190 --> 00:35:38.365
Use that.

00:35:38.365 --> 00:35:40.174
If others can't make
it to your meetings,

00:35:40.174 --> 00:35:41.590
is there a way you
can take video?

00:35:41.590 --> 00:35:43.050
Is there a way you
can archive what

00:35:43.050 --> 00:35:46.500
happened in the meeting for
those people who couldn't come?

00:35:49.580 --> 00:35:52.020
Here's something that I've
seen some local companies do--

00:35:52.020 --> 00:35:53.430
drop in IRC.

00:35:53.430 --> 00:35:57.010
Basically, even something as
simple as keeping Skype open.

00:35:57.010 --> 00:35:59.320
Even better-- actually, my
notes weren't put in there.

00:35:59.320 --> 00:36:01.840
Even better, an
IRC solution that

00:36:01.840 --> 00:36:03.500
has some kind of
archival process

00:36:03.500 --> 00:36:06.089
in, so all the previous
chat can be saved.

00:36:06.089 --> 00:36:08.380
I know there are some solutions
out there that actually

00:36:08.380 --> 00:36:12.950
hook this into your GitHub or
Bitbucket or what you're using.

00:36:12.950 --> 00:36:14.400
Those solutions are out there.

00:36:14.400 --> 00:36:15.576
Try one of them.

00:36:15.576 --> 00:36:17.450
But again, even something
as simple as having

00:36:17.450 --> 00:36:20.150
Skype open and
online, you can always

00:36:20.150 --> 00:36:22.060
tell if one of your
team members is online.

00:36:22.060 --> 00:36:24.150
You can throw a
text and say, hey,

00:36:24.150 --> 00:36:26.300
can I get your feedback on this?

00:36:26.300 --> 00:36:28.519
Can you take a
look at this code?

00:36:28.519 --> 00:36:30.560
For your daily scrum, 15
minute Hangouts probably

00:36:30.560 --> 00:36:32.670
is-- all you need is
15 minutes for doing

00:36:32.670 --> 00:36:35.620
that kind of daily scrum
meeting, so trying that out.

00:36:40.060 --> 00:36:42.990
Problems we saw with backfilling
your product management.

00:36:42.990 --> 00:36:45.461
Integrate your project
management from the beginning.

00:36:45.461 --> 00:36:47.460
We know that this was a
problem for this project

00:36:47.460 --> 00:36:50.051
because we introduced it
to you midway through.

00:36:50.051 --> 00:36:50.550
That's OK.

00:36:50.550 --> 00:36:52.690
You actually did--
we mentioned this,

00:36:52.690 --> 00:36:57.662
you did some pretty good
use of product management.

00:36:57.662 --> 00:36:59.120
The goal for any
project management

00:36:59.120 --> 00:37:00.270
tool that we're
teaching in this class

00:37:00.270 --> 00:37:01.478
is that it should be helpful.

00:37:01.478 --> 00:37:02.670
It shouldn't be a hindrance.

00:37:02.670 --> 00:37:04.890
That said, we'd like you to
get some practice with it

00:37:04.890 --> 00:37:06.840
first before you
start throwing it out.

00:37:06.840 --> 00:37:09.540
So for project three, please
use the project management tools

00:37:09.540 --> 00:37:12.340
that we described as we've
described them to you.

00:37:12.340 --> 00:37:15.750
In particular, product
backlogs, sprint task lists,

00:37:15.750 --> 00:37:19.280
and the design change log,
and the vision statements,

00:37:19.280 --> 00:37:21.350
those high level
design documents.

00:37:21.350 --> 00:37:25.320
Scrum boards, mostly optional,
but we found them useful.

00:37:25.320 --> 00:37:27.744
They might not be useful for
how your team is distributed.

00:37:27.744 --> 00:37:29.160
It's up to you to
figure that out.

00:37:29.160 --> 00:37:32.529
For project four, we'll
give you the ability

00:37:32.529 --> 00:37:34.445
to create the system
that works for your team,

00:37:34.445 --> 00:37:39.340
so long as you give us what
information we're asking for.

00:37:39.340 --> 00:37:41.630
So you know you need
this information.

00:37:41.630 --> 00:37:44.390
You know you need a way
to manage your tasks.

00:37:44.390 --> 00:37:46.520
You know you need a way
to manage your features

00:37:46.520 --> 00:37:49.220
and to prioritize your
features to estimate.

00:37:49.220 --> 00:37:52.075
But how you actually do that
and how you actually save it,

00:37:52.075 --> 00:37:55.150
that can be up to
you for project four.

00:37:55.150 --> 00:37:58.339
We will want to see it actually
cause some improvements.

00:37:58.339 --> 00:37:59.880
And if it doesn't
cause improvements,

00:37:59.880 --> 00:38:05.120
let us know why and what kind
of problems you found with that.

00:38:05.120 --> 00:38:06.640
And again, the
design change log.

00:38:06.640 --> 00:38:08.190
This is a design diary.

00:38:08.190 --> 00:38:09.990
It's even better.

00:38:09.990 --> 00:38:11.740
It's your meeting minutes.

00:38:11.740 --> 00:38:15.307
You should be able to fill
it out in five minutes.

00:38:15.307 --> 00:38:16.890
Along with your task
list and backlog,

00:38:16.890 --> 00:38:18.744
it kind of shows the
history of the project.

00:38:18.744 --> 00:38:20.660
Take the time just to
spend those five minutes

00:38:20.660 --> 00:38:22.810
at the end of each meeting
to just throw something

00:38:22.810 --> 00:38:26.220
quick down so you know what
has changed in the past.

00:38:29.480 --> 00:38:31.230
Phillip, you want to
chime in on this one?

00:38:31.230 --> 00:38:34.606
Modular code doesn't mean your
tasks are actually separate.

00:38:34.606 --> 00:38:35.380
PHILLIP: Yeah.

00:38:35.380 --> 00:38:37.640
This is just
something that I got

00:38:37.640 --> 00:38:40.530
a sense of from watching
everyone's presentations today.

00:38:40.530 --> 00:38:43.800
A lot of folks, even the folks
who mentioned that the code was

00:38:43.800 --> 00:38:46.756
well separated and people
could code independently,

00:38:46.756 --> 00:38:48.650
it doesn't mean that
there are no benefits

00:38:48.650 --> 00:38:51.380
to actually still working side
by side, even if you're working

00:38:51.380 --> 00:38:53.008
on different parts of the code.

00:38:53.008 --> 00:38:54.810
And some teams mentioned that.

00:38:54.810 --> 00:38:58.600
So actually, again, being
on Google Hangout or Skype

00:38:58.600 --> 00:39:01.950
or IRC or whatever, if you're
working in your own rooms,

00:39:01.950 --> 00:39:04.155
or even better, a lot
of people mentioned

00:39:04.155 --> 00:39:06.530
scheduling those face-to-face
meetings-- it's OK for you

00:39:06.530 --> 00:39:08.030
to have a face-to-face
meeting, even

00:39:08.030 --> 00:39:09.470
if you're not
planning on working

00:39:09.470 --> 00:39:12.030
on the same batch of code.

00:39:12.030 --> 00:39:14.580
And you can actually still save
a lot of communication time--

00:39:14.580 --> 00:39:17.560
if nothing else, just to tell
people what you're doing.

00:39:17.560 --> 00:39:19.006
So maybe it's not
speeding you up,

00:39:19.006 --> 00:39:20.185
but it might speed
everybody else up,

00:39:20.185 --> 00:39:21.851
and suddenly it helps
the communication.

00:39:26.540 --> 00:39:27.940
PROFESSOR: Form strike teams.

00:39:27.940 --> 00:39:30.750
You've got six people, maybe
seven people, and eight people

00:39:30.750 --> 00:39:31.650
on project four.

00:39:31.650 --> 00:39:33.890
Not everyone needs
to be touching code.

00:39:33.890 --> 00:39:36.040
There are other tasks
that need to get done.

00:39:36.040 --> 00:39:38.010
You can form up
into smaller teams.

00:39:38.010 --> 00:39:41.370
One team might just be working
on some kind of-- again,

00:39:41.370 --> 00:39:43.830
if it's modular, it's going
to have some dependencies.

00:39:43.830 --> 00:39:45.670
But if you can
modularize it out, great.

00:39:45.670 --> 00:39:48.690
But even better, especially
with project four,

00:39:48.690 --> 00:39:53.680
when you have longer time, one
team doing paper modification,

00:39:53.680 --> 00:39:56.990
doing UI elements, running
focus tests, while another team

00:39:56.990 --> 00:40:00.210
is writing code.

00:40:00.210 --> 00:40:02.440
Think about how you
can better utilize

00:40:02.440 --> 00:40:05.040
all the personal resources
and all the man hours

00:40:05.040 --> 00:40:09.280
you have without requiring
all these clashes

00:40:09.280 --> 00:40:11.209
with so many people
touching the code.

00:40:11.209 --> 00:40:13.500
It's that too many cooks in
the kitchen kind of thing--

00:40:13.500 --> 00:40:16.260
not everybody needs to be doing
that, need to be touching that.

00:40:18.957 --> 00:40:20.290
Here's another thing we noticed.

00:40:20.290 --> 00:40:23.357
A lot of what you asked for
was basically more time-- just

00:40:23.357 --> 00:40:25.940
various different ways of saying
you wished you had more time,

00:40:25.940 --> 00:40:28.300
you wished you had
started earlier,

00:40:28.300 --> 00:40:32.309
you wish you had iterated
earlier, the flu hit.

00:40:32.309 --> 00:40:33.850
A lot of what you're
describing there

00:40:33.850 --> 00:40:37.270
are things you're not going
to have any control over ever.

00:40:37.270 --> 00:40:39.390
You never have control
over that stuff.

00:40:39.390 --> 00:40:41.250
What you need to do is
focus on those things

00:40:41.250 --> 00:40:42.440
that you can control.

00:40:42.440 --> 00:40:52.210
So if you have illnesses, if you
have major technical problems,

00:40:52.210 --> 00:40:54.044
the game is whatever
you decide the game is.

00:40:54.044 --> 00:40:56.584
You've actually got some freedom
in this class in that you've

00:40:56.584 --> 00:40:59.130
told us what the game is, and
we're actually even telling you

00:40:59.130 --> 00:41:02.240
in the last week, again, tell
us, what was this game actually

00:41:02.240 --> 00:41:04.710
supposed to be, so that
when things change midway

00:41:04.710 --> 00:41:07.240
through the project,
be flexible.

00:41:07.240 --> 00:41:09.500
Change what you're
delivering to us.

00:41:09.500 --> 00:41:11.500
Make it so that whatever
you're delivering to us

00:41:11.500 --> 00:41:15.200
runs, works, is playable.

00:41:15.200 --> 00:41:16.600
This isn't a design class.

00:41:16.600 --> 00:41:19.579
We're trying to teach
you some design skills.

00:41:19.579 --> 00:41:20.870
But it's not focused on design.

00:41:20.870 --> 00:41:24.100
So if the final game
isn't fun, it's sad,

00:41:24.100 --> 00:41:27.951
but it's OK, so long as it runs,
so long as it's playable, so

00:41:27.951 --> 00:41:30.200
long as it fits all the
requirements that we're asking

00:41:30.200 --> 00:41:31.283
of you from the beginning.

00:41:31.283 --> 00:41:32.169
I know it's weird.

00:41:32.169 --> 00:41:33.710
This is the only
class we do this in.

00:41:33.710 --> 00:41:35.561
Trust me.

00:41:35.561 --> 00:41:36.060
All right.

00:41:36.060 --> 00:41:36.710
So that's it.

00:41:36.710 --> 00:41:39.796
Any other questions
about project two?

00:41:39.796 --> 00:41:42.080
I think you all did
really, really well.

00:41:42.080 --> 00:41:43.560
Really happy to see how
the presentations went out.

00:41:43.560 --> 00:41:44.059
Yes?

00:41:44.059 --> 00:41:46.712
AUDIENCE: Is there any way
we can see what everyone did?

00:41:46.712 --> 00:41:47.670
PROFESSOR: What's that?

00:41:47.670 --> 00:41:49.560
AUDIENCE: Is there any way
we can see what everyone did?

00:41:49.560 --> 00:41:50.393
PROFESSOR: Oh, yeah.

00:41:50.393 --> 00:41:52.850
So one thing I highly
suggest, somebody on your team

00:41:52.850 --> 00:41:55.920
email the video
game mailing list.

00:41:55.920 --> 00:41:56.840
Video games, yeah.

00:41:56.840 --> 00:41:58.634
I did the plurals wrong.

00:41:58.634 --> 00:42:00.050
I never do that
right with mailing

00:42:00.050 --> 00:42:02.909
lists. videogames@mit.edu--
email out a link to your game

00:42:02.909 --> 00:42:05.450
to your classmates if you want
people to play it and give you

00:42:05.450 --> 00:42:06.990
feedback on it.

00:42:06.990 --> 00:42:08.490
At the end of every
project do that.

00:42:08.490 --> 00:42:11.520
Actually, use that mailing
list as a resource for you

00:42:11.520 --> 00:42:13.690
to talk to each
other across teams.

00:42:13.690 --> 00:42:17.290
Hey, here's our game.

00:42:17.290 --> 00:42:19.170
We need a little bit
of feedback on this.

00:42:19.170 --> 00:42:20.209
My team is all sick.

00:42:20.209 --> 00:42:22.500
Can somebody please play this
and tell me what's wrong?

00:42:22.500 --> 00:42:24.166
Can you play this on
a different browser

00:42:24.166 --> 00:42:25.770
and tell me if it's broken?

00:42:25.770 --> 00:42:28.537
Take advantage of
that mailing list.

00:42:28.537 --> 00:42:29.370
Any other questions?

00:42:29.370 --> 00:42:29.870
Yeah.

00:42:29.870 --> 00:42:34.330
AUDIENCE: So
[INAUDIBLE] postmortem,

00:42:34.330 --> 00:42:37.802
will we get more feedback on
project one and project two,

00:42:37.802 --> 00:42:40.054
what the group grade was?

00:42:40.054 --> 00:42:41.720
PROFESSOR: So there
are no group grades.

00:42:41.720 --> 00:42:44.000
So what you're getting
is-- your grades, if you

00:42:44.000 --> 00:42:48.350
look at the grading rubric, 20%
of your grade is individual.

00:42:48.350 --> 00:42:52.270
The other 80% percent
is your group.

00:42:52.270 --> 00:42:55.680
So the grade that
you get is basically

00:42:55.680 --> 00:42:59.039
adjusted based on the
quality of the write-up.

00:42:59.039 --> 00:42:59.580
AUDIENCE: OK.

00:42:59.580 --> 00:43:02.460
And on project two, will we
get more feedback on everything

00:43:02.460 --> 00:43:04.904
we've done, so we can better
plan for project four?

00:43:04.904 --> 00:43:05.570
PROFESSOR: Yeah.

00:43:05.570 --> 00:43:08.640
So for project two, you're going
to get feedback on your design

00:43:08.640 --> 00:43:09.840
change log again.

00:43:09.840 --> 00:43:12.256
You're going to get feedback
on your task list and product

00:43:12.256 --> 00:43:12.940
backlog.

00:43:12.940 --> 00:43:14.990
We just gave you feedback
on the presentations

00:43:14.990 --> 00:43:16.360
and on those skills.

00:43:16.360 --> 00:43:18.700
You're going to do that
again for project three.

00:43:18.700 --> 00:43:21.100
You get your feedback on
the individual write-up.

00:43:21.100 --> 00:43:24.040
Is there anything
I'm missing there?

00:43:24.040 --> 00:43:25.856
And then game
functionality-- we're

00:43:25.856 --> 00:43:27.480
going to give you
more feedback on game

00:43:27.480 --> 00:43:30.490
functionality, because last
time we did that in class.

00:43:30.490 --> 00:43:32.940
This time we're actually
going to play your digitally

00:43:32.940 --> 00:43:33.732
released games.

00:43:33.732 --> 00:43:35.190
We'll give you some
design feedback

00:43:35.190 --> 00:43:37.020
there for product three.

00:43:37.020 --> 00:43:37.700
PHILLIP: Yeah.

00:43:37.700 --> 00:43:42.930
Because we could just show
the actual numerical grading

00:43:42.930 --> 00:43:44.430
proclamations that
we do, but that's

00:43:44.430 --> 00:43:46.725
meaningless without actually
explaining what it is.

00:43:46.725 --> 00:43:51.030
So what we'll try to do is focus
more on actual text feedback

00:43:51.030 --> 00:43:53.650
on what we thought were the
strengths or the weaknesses

00:43:53.650 --> 00:43:57.310
of whatever you've given us.

00:43:57.310 --> 00:43:58.550
PROFESSOR: That answer?

00:43:58.550 --> 00:43:59.270
Cool.

00:43:59.270 --> 00:44:00.561
Any other questions on grading?

00:44:02.234 --> 00:44:03.650
All right, give
yourselves a round

00:44:03.650 --> 00:44:05.889
of applause for
finalizing project two.

00:44:05.889 --> 00:44:07.845
[APPLAUSE]

00:44:11.270 --> 00:44:14.519
Let me double check to make
sure I didn't miss a break.

00:44:14.519 --> 00:44:15.560
No, we just took a break.

00:44:15.560 --> 00:44:16.140
Ha, ha.

00:44:16.140 --> 00:44:16.639
All right.

00:44:16.639 --> 00:44:22.041
So project three, you're going
to practice project management,

00:44:22.041 --> 00:44:24.290
meaning you're going to use
those tools that we talked

00:44:24.290 --> 00:44:27.440
to you about in the middle of
project two from the get-go,

00:44:27.440 --> 00:44:29.000
with a slightly larger team.

00:44:29.000 --> 00:44:31.790
Some of your teams were
five people this time,

00:44:31.790 --> 00:44:33.120
minimum is going to be six.

00:44:33.120 --> 00:44:35.850
We're going to make sure we
leave class today with at least

00:44:35.850 --> 00:44:37.452
six people on each team.

00:44:37.452 --> 00:44:39.160
And again, that's just
to get used to it.

00:44:39.160 --> 00:44:42.342
Project eight, your minimum
is going to be eight people.

00:44:42.342 --> 00:44:43.800
So with a larger
team, you're going

00:44:43.800 --> 00:44:47.630
to focus on design iteration
to maximize usability

00:44:47.630 --> 00:44:50.650
using user feedback through
independent user testing.

00:44:50.650 --> 00:44:54.644
So the keywords there--
users, feedback, usability.

00:44:54.644 --> 00:44:56.060
Those are things
we're going to be

00:44:56.060 --> 00:44:58.140
looking at when we're
grading the functionality

00:44:58.140 --> 00:44:59.290
of your games.

00:45:02.259 --> 00:45:04.300
So for project management,
we mean create and use

00:45:04.300 --> 00:45:06.640
a product backlog and
a sprint task list.

00:45:06.640 --> 00:45:08.474
There's few turn-ins for that.

00:45:08.474 --> 00:45:09.890
For design iteration,
you're going

00:45:09.890 --> 00:45:15.990
to conduct focus testing and
user testing on your own.

00:45:15.990 --> 00:45:18.500
And I'll touch on this
again, but basically you're

00:45:18.500 --> 00:45:21.186
going to turn in two focus
test reports, one of which

00:45:21.186 --> 00:45:22.810
can happen in class
on a scheduled day.

00:45:22.810 --> 00:45:24.660
The other one must
happen outside of class

00:45:24.660 --> 00:45:26.810
with a group of people
who are not in class.

00:45:26.810 --> 00:45:30.910
So get people to test your game
and report back to us on that.

00:45:30.910 --> 00:45:32.956
And again, maximize usability.

00:45:32.956 --> 00:45:35.080
All the iteration that we
see you do on your games,

00:45:35.080 --> 00:45:37.538
you should be iterating on that
user interface or that user

00:45:37.538 --> 00:45:38.160
experience.

00:45:38.160 --> 00:45:40.960
So we are going to ask
you to make a little bit

00:45:40.960 --> 00:45:42.330
more complex game than before.

00:45:42.330 --> 00:45:44.205
But really what we're
trying to get you to do

00:45:44.205 --> 00:45:47.810
is make a complex game that
has a possibly problematic user

00:45:47.810 --> 00:45:49.606
interface.

00:45:49.606 --> 00:45:50.980
Give us an interface
that's good.

00:45:50.980 --> 00:45:53.550
Give us a user experience that
matches the user experience

00:45:53.550 --> 00:45:56.366
that you want to strive for
when you're designing the game.

00:45:56.366 --> 00:45:58.190
PHILLIP: Just a quick thing.

00:45:58.190 --> 00:45:59.900
We do have a couple
of lectures coming up

00:45:59.900 --> 00:46:01.080
on designing for that.

00:46:01.080 --> 00:46:03.820
But as Greg mentioned
earlier, this is not actually

00:46:03.820 --> 00:46:04.970
the design class.

00:46:04.970 --> 00:46:07.480
There is actually a different
design class that some of you

00:46:07.480 --> 00:46:10.660
have taken and are going to be
distributed among the teams.

00:46:10.660 --> 00:46:14.110
Or you might have taken, say,
Rob Miller's user interface

00:46:14.110 --> 00:46:17.389
class, which also has a lot of
those same sort of concepts.

00:46:17.389 --> 00:46:18.930
If you've taken any
of those classes,

00:46:18.930 --> 00:46:21.690
you should be identifying
yourself to your teams,

00:46:21.690 --> 00:46:23.780
because you probably
have actually

00:46:23.780 --> 00:46:25.260
practiced designing
for usability

00:46:25.260 --> 00:46:29.100
a lot more than a lot of the
other people in your group.

00:46:29.100 --> 00:46:32.120
And that's what we're
going to be looking for.

00:46:32.120 --> 00:46:33.980
But most importantly,
the testing

00:46:33.980 --> 00:46:35.400
that we've been
talking about, we

00:46:35.400 --> 00:46:37.820
are expecting you to
be able to do that.

00:46:37.820 --> 00:46:39.620
And that anyone of
you have already

00:46:39.620 --> 00:46:43.690
got the basic foundation of.

00:46:43.690 --> 00:46:46.900
PROFESSOR: So our design
constraint-- we're leveling up

00:46:46.900 --> 00:46:48.490
from planning for randomness.

00:46:48.490 --> 00:46:51.390
We want to see trade-offs
in decision making.

00:46:51.390 --> 00:46:53.340
So every decision
made by the player

00:46:53.340 --> 00:46:56.040
must have a positive
and negative outcome

00:46:56.040 --> 00:46:58.090
in their play state.

00:46:58.090 --> 00:47:00.276
So first off, what
does that mean to you?

00:47:00.276 --> 00:47:01.730
What do you think that means?

00:47:04.740 --> 00:47:05.730
Jenny?

00:47:05.730 --> 00:47:07.638
AUDIENCE: Good
things and bad things

00:47:07.638 --> 00:47:09.546
happen when you take steps.

00:47:09.546 --> 00:47:12.408
So you have to decide whether
the good things outweigh

00:47:12.408 --> 00:47:14.810
the bad things at your
current point in time?

00:47:14.810 --> 00:47:15.820
PROFESSOR: Yep.

00:47:15.820 --> 00:47:18.600
Basically it--
opportunity costs.

00:47:18.600 --> 00:47:21.812
Risk management, future
risks, unknown risks.

00:47:21.812 --> 00:47:23.770
There should be some
unknowns and knowns there.

00:47:23.770 --> 00:47:26.590
So while the players
should know that there's

00:47:26.590 --> 00:47:28.690
going to be some positive
and some negative,

00:47:28.690 --> 00:47:31.231
they might not know the values
of those positive and negative

00:47:31.231 --> 00:47:31.817
outcomes.

00:47:31.817 --> 00:47:33.650
So there's some kind
of uncertainty going on

00:47:33.650 --> 00:47:34.732
in the game there.

00:47:34.732 --> 00:47:36.190
And then some of
the side effects--

00:47:36.190 --> 00:47:38.640
sometimes when you
make a decision,

00:47:38.640 --> 00:47:41.506
there's going to be an immediate
change in player state.

00:47:41.506 --> 00:47:43.130
Sometimes it's going
to be a long term.

00:47:43.130 --> 00:47:48.080
It's going to chain or combo
up from previous decisions,

00:47:48.080 --> 00:47:49.606
causing problems
in later things.

00:47:49.606 --> 00:47:51.230
So easy way to think
about this, again,

00:47:51.230 --> 00:47:52.650
is of course strategy games.

00:47:52.650 --> 00:47:55.860
But you're also welcome
to apply this to any genre

00:47:55.860 --> 00:47:57.740
that you might
like to experiment

00:47:57.740 --> 00:47:59.130
with in this project.

00:48:02.020 --> 00:48:03.520
So here's some suggested goals.

00:48:03.520 --> 00:48:05.377
Think of project--
yeah, go ahead.

00:48:05.377 --> 00:48:07.662
AUDIENCE: Do we still
have to use planning

00:48:07.662 --> 00:48:09.514
for randomness in this game?

00:48:09.514 --> 00:48:10.180
PROFESSOR: Yeah.

00:48:10.180 --> 00:48:14.330
So there should be some amount
of randomness in this game.

00:48:14.330 --> 00:48:15.727
So it's building onto it.

00:48:15.727 --> 00:48:17.560
So there should be some
kind of uncertainty.

00:48:17.560 --> 00:48:19.180
It's not the focus
of it anymore.

00:48:19.180 --> 00:48:22.690
So project two and
project one were focusing

00:48:22.690 --> 00:48:24.044
on just that randomness.

00:48:24.044 --> 00:48:26.460
Project three should have some
of the randomness in there.

00:48:26.460 --> 00:48:29.200
But really, what we want you
to focus on is trade-offs.

00:48:29.200 --> 00:48:31.260
So that's a tool
in your toolbox.

00:48:31.260 --> 00:48:31.910
Try it out.

00:48:31.910 --> 00:48:34.243
If it doesn't work, if there's
a reason it doesn't work,

00:48:34.243 --> 00:48:35.400
then don't use it.

00:48:35.400 --> 00:48:38.420
But there should be
some uncertainty there.

00:48:38.420 --> 00:48:42.342
And again, all this is
building up to project four.

00:48:42.342 --> 00:48:44.300
So things you should try
out in project three--

00:48:44.300 --> 00:48:45.327
work with new people.

00:48:45.327 --> 00:48:47.410
The method we're going to
have to put you in teams

00:48:47.410 --> 00:48:48.926
is going to try to do that.

00:48:48.926 --> 00:48:50.550
So you'll be working
in different teams

00:48:50.550 --> 00:48:51.480
with different people.

00:48:51.480 --> 00:48:54.330
These are basically
auditions for project four.

00:48:54.330 --> 00:48:55.630
Use a new game engine.

00:48:55.630 --> 00:48:57.800
Did everybody use Phaser?

00:48:57.800 --> 00:48:58.810
Yeah.

00:48:58.810 --> 00:49:01.960
You're not using Phaser
for project three.

00:49:01.960 --> 00:49:04.460
So we're going to basically
want you to go back to that game

00:49:04.460 --> 00:49:06.620
engine tutorial, think
about the other game engines

00:49:06.620 --> 00:49:07.550
you have available.

00:49:07.550 --> 00:49:09.575
We had one team to use Unity,
and they had some issues

00:49:09.575 --> 00:49:10.810
why they wouldn't use Unity.

00:49:10.810 --> 00:49:12.840
And actually, those
issues will probably

00:49:12.840 --> 00:49:14.490
apply for project three as well.

00:49:14.490 --> 00:49:16.170
Maybe you don't
want to use Unity.

00:49:16.170 --> 00:49:17.510
Maybe it's too scary.

00:49:17.510 --> 00:49:18.610
Maybe it's a challenge.

00:49:18.610 --> 00:49:20.485
Figure it out.

00:49:20.485 --> 00:49:27.520
And the last one-- I
posted this to Stellar.

00:49:27.520 --> 00:49:29.400
It's a light read.

00:49:29.400 --> 00:49:31.250
Games For a New
Climate is basically

00:49:31.250 --> 00:49:33.650
our handbook for project four.

00:49:33.650 --> 00:49:36.230
Our client presented us
with this information.

00:49:36.230 --> 00:49:40.610
This is basically
how games are used

00:49:40.610 --> 00:49:42.470
for game based learning,
for climate change,

00:49:42.470 --> 00:49:47.160
for talking about planning for
future risks, the complexity

00:49:47.160 --> 00:49:48.360
of future risks.

00:49:48.360 --> 00:49:50.290
Take a flip through the book.

00:49:50.290 --> 00:49:51.070
Read it now.

00:49:51.070 --> 00:49:52.120
Start it now.

00:49:52.120 --> 00:49:54.209
Have it read by project four.

00:49:54.209 --> 00:49:56.000
Again, we don't have
required reading here,

00:49:56.000 --> 00:49:57.645
but you'll have a
better game, you'll

00:49:57.645 --> 00:49:58.700
have a better
product if you take

00:49:58.700 --> 00:50:01.150
a look at this and maybe even
do a little bit of research

00:50:01.150 --> 00:50:02.730
on your own, which
is actually going

00:50:02.730 --> 00:50:03.854
to be part of project four.

00:50:03.854 --> 00:50:05.200
We'll talk about that later.

00:50:05.200 --> 00:50:08.077
But if you want to make a
game that does this, you can.

00:50:08.077 --> 00:50:09.910
If you want to make a
game for project three

00:50:09.910 --> 00:50:13.050
that is a game to help a
policymaker understand the need

00:50:13.050 --> 00:50:14.900
to spend money,
time, or resources

00:50:14.900 --> 00:50:18.710
on disaster preparedness as
a result of climate change,

00:50:18.710 --> 00:50:21.026
feel free.

00:50:21.026 --> 00:50:22.650
Part of that trade-off
design challenge

00:50:22.650 --> 00:50:24.510
is actually inside
of that statement.

00:50:24.510 --> 00:50:26.565
The uncertainty is
inside of that statement.

00:50:26.565 --> 00:50:27.940
Project three
actually would turn

00:50:27.940 --> 00:50:30.280
into a possible
springboard and a way

00:50:30.280 --> 00:50:32.605
to recruit people
for project four.

00:50:32.605 --> 00:50:33.980
But again, you're
not necessarily

00:50:33.980 --> 00:50:35.190
going to have the same group.

00:50:35.190 --> 00:50:37.610
So it's up to you to
figure out if that's

00:50:37.610 --> 00:50:41.340
going to be useful for
you on this team or not.

00:50:41.340 --> 00:50:43.100
All right.

00:50:43.100 --> 00:50:44.730
And then the hard
requirements-- please

00:50:44.730 --> 00:50:46.230
read this handout on Stellar.

00:50:46.230 --> 00:50:48.563
I'll actually read the handout
on Stellar too this time.

00:50:48.563 --> 00:50:49.950
Sorry about that.

00:50:49.950 --> 00:50:51.970
Maximum play length,
again, is five minutes.

00:50:51.970 --> 00:50:54.920
Again, single player game.

00:50:54.920 --> 00:50:57.310
User interface tested for
legibility and usability.

00:50:57.310 --> 00:51:01.320
It must use and play
audio for the player.

00:51:01.320 --> 00:51:03.167
And then, like
previously, players

00:51:03.167 --> 00:51:04.750
can pick up and start
playing the game

00:51:04.750 --> 00:51:06.090
with no external instructions.

00:51:06.090 --> 00:51:08.280
So if there are instructions,
which there can be,

00:51:08.280 --> 00:51:10.279
it must be inside of the
game or at least inside

00:51:10.279 --> 00:51:12.690
of the frame of the
web page that you

00:51:12.690 --> 00:51:15.055
are using as a link
for us to play within.

00:51:15.055 --> 00:51:17.430
And then, of course, must be
delivered as a browser game,

00:51:17.430 --> 00:51:19.240
running on Chrome.

00:51:19.240 --> 00:51:26.920
And also, only in those engines
that w e used in the tutorial.

00:51:26.920 --> 00:51:31.550
Deliverables-- so actually,
this is Monday the 29th.

00:51:31.550 --> 00:51:32.750
Wednesday is the 1st.

00:51:32.750 --> 00:51:35.083
On Wednesday the 1st, we have
a guest lecture coming in.

00:51:35.083 --> 00:51:38.444
Swery65 is coming in to talk
to us about his new game.

00:51:38.444 --> 00:51:40.610
His lecture is probably
going to last about an hour.

00:51:40.610 --> 00:51:44.580
That means you're going to have
two hours in class on Wednesday

00:51:44.580 --> 00:51:47.220
to work in teams and create
a low fidelity prototype.

00:51:47.220 --> 00:51:50.120
It is not something you're
required to turn in.

00:51:50.120 --> 00:51:54.240
We are asking you to have
a playable game on Monday,

00:51:54.240 --> 00:51:55.170
the 6th.

00:51:55.170 --> 00:51:57.880
Whether that's digital or paper
is up to you, but we highly,

00:51:57.880 --> 00:52:01.640
highly, highly recommend making
a quick, low fidelity prototype

00:52:01.640 --> 00:52:04.296
on Wednesday in the two
hours you have, and then

00:52:04.296 --> 00:52:06.420
based on that prototype
create the product backlog.

00:52:06.420 --> 00:52:08.878
It's the best way that I've
found to make product backlogs.

00:52:08.878 --> 00:52:10.220
You might find a different way.

00:52:10.220 --> 00:52:12.740
That's OK, as long
as you make one.

00:52:12.740 --> 00:52:15.300
But on Monday, on the
6th, turn in the Stellar,

00:52:15.300 --> 00:52:18.190
your high level design doc, and
what your product backlog is.

00:52:18.190 --> 00:52:20.040
So what are all
the features that

00:52:20.040 --> 00:52:24.052
have been estimated, that have
been put in priority order?

00:52:24.052 --> 00:52:26.010
In class, you're going
to give a really quick--

00:52:26.010 --> 00:52:26.860
AUDIENCE: Next slide.

00:52:26.860 --> 00:52:27.380
PROFESSOR: What's up?

00:52:27.380 --> 00:52:29.010
AUDIENCE: You're talking
about stuff on the next one.

00:52:29.010 --> 00:52:29.070
PROFESSOR: Oh, wow.

00:52:29.070 --> 00:52:30.736
I'm talking about
stuff on the next one.

00:52:30.736 --> 00:52:31.552
Thank you.

00:52:31.552 --> 00:52:33.500
That's weird.

00:52:33.500 --> 00:52:36.207
In class, two minute
presentations.

00:52:36.207 --> 00:52:38.290
Basically, just the core
of your game design idea.

00:52:38.290 --> 00:52:39.900
Let us know what you're making.

00:52:39.900 --> 00:52:41.858
And then we'll be able
to test your prototypes.

00:52:44.450 --> 00:52:47.176
I think-- let me look ahead.

00:52:47.176 --> 00:52:50.180
Yeah, so testing prototype
is not required on the 6th.

00:52:50.180 --> 00:52:53.980
But if you do it, please
we'll test them then.

00:52:53.980 --> 00:52:55.820
We will also test
on-- and this is

00:52:55.820 --> 00:52:57.610
where we actually
do want you to have

00:52:57.610 --> 00:52:58.920
a playable, digital version.

00:52:58.920 --> 00:53:02.300
Basically, let us know that you
have a playable game by October

00:53:02.300 --> 00:53:03.700
8.

00:53:03.700 --> 00:53:06.350
And turn in via Stellar
your sprint task list--

00:53:06.350 --> 00:53:09.150
basically all the tasks
with time estimates

00:53:09.150 --> 00:53:12.300
that are going to happen
between Wednesday, October

00:53:12.300 --> 00:53:15.385
8 and Monday, October 15.

00:53:15.385 --> 00:53:17.260
And the project due is
the same kind of stuff

00:53:17.260 --> 00:53:20.540
that we did for this
project-- your game prototype

00:53:20.540 --> 00:53:22.520
builds, your post mortems,
your design change

00:53:22.520 --> 00:53:25.610
log, updated design document
if you have an updated design

00:53:25.610 --> 00:53:26.360
document.

00:53:26.360 --> 00:53:29.870
And again, two focus
test reports this time.

00:53:29.870 --> 00:53:32.361
One can be created in class
on either the 6th or the 8th.

00:53:32.361 --> 00:53:34.360
The other one should be
created outside of class

00:53:34.360 --> 00:53:35.670
with external testers.

00:53:38.419 --> 00:53:39.210
AUDIENCE: Question.

00:53:39.210 --> 00:53:41.195
PROFESSOR: Yes?

00:53:41.195 --> 00:53:45.192
AUDIENCE: Is that Monday the
13th or Wednesday the 15th?

00:53:45.192 --> 00:53:46.150
PROFESSOR: Oh, my lord.

00:53:46.150 --> 00:53:47.441
Did I really make that mistake?

00:53:50.324 --> 00:53:51.865
Can somebody check
on Stellar for me?

00:53:57.600 --> 00:53:59.292
So it should be Monday
the 13th, right?

00:53:59.292 --> 00:54:00.650
AUDIENCE: No, we
think it's Wednesday.

00:54:00.650 --> 00:54:01.930
PROFESSOR: Wednesday
the 15th is when we're

00:54:01.930 --> 00:54:03.096
having people turn stuff in?

00:54:03.096 --> 00:54:03.695
AUDIENCE: Yep.

00:54:03.695 --> 00:54:05.520
PROFESSOR: All right, holiday.

00:54:05.520 --> 00:54:06.070
Right?

00:54:06.070 --> 00:54:07.666
Is there a holiday that week?

00:54:07.666 --> 00:54:08.500
AUDIENCE: Yeah.

00:54:08.500 --> 00:54:09.200
PROFESSOR: OK.

00:54:09.200 --> 00:54:11.700
Stellar is the right place,
and I will update these slides

00:54:11.700 --> 00:54:13.426
before I post them to Stellar.

00:54:13.426 --> 00:54:16.618
AUDIENCE: Let me check
on the big schedule.

00:54:16.618 --> 00:54:17.990
It's Columbus Day.

00:54:17.990 --> 00:54:19.579
So Monday, there is no class.

00:54:19.579 --> 00:54:20.870
PROFESSOR: So Monday, no class.

00:54:20.870 --> 00:54:23.787
So Wednesday, the 15th.

00:54:23.787 --> 00:54:25.370
So you got a little
bit of extra time.

00:54:25.370 --> 00:54:27.661
But it's a holiday, so maybe
you don't have extra time.

00:54:27.661 --> 00:54:30.218
PHILLIP: But if you
get it done by Monday,

00:54:30.218 --> 00:54:34.162
then you can let your code
soak a little bit [INAUDIBLE].

00:54:39.006 --> 00:54:39.880
PROFESSOR: All right.

00:54:39.880 --> 00:54:41.947
So we are going to
do brainstorming,

00:54:41.947 --> 00:54:44.280
and we're going to brainstorm
in groups that you are not

00:54:44.280 --> 00:54:47.180
currently working with, so
you can meet new people.

00:54:47.180 --> 00:54:49.024
You're going to get a card.

00:54:49.024 --> 00:54:52.700
It's going to have a number
on it-- one, two, three, five,

00:54:52.700 --> 00:54:55.580
eight, or 13.

00:54:55.580 --> 00:54:58.130
I'll hand out the
cards really quickly.

00:54:58.130 --> 00:55:01.154
Go to one of these stations,
erase whatever's on the board

00:55:01.154 --> 00:55:02.570
if you need to
erase on the board.

00:55:02.570 --> 00:55:04.210
If you're in five,
eight, or 13, you're

00:55:04.210 --> 00:55:07.340
going to have these easel pads.

00:55:07.340 --> 00:55:10.180
We are going to give you two
timed quick brainstorming

00:55:10.180 --> 00:55:10.680
sessions.

00:55:13.440 --> 00:55:19.020
Five minutes, small break,
another five minutes.

00:55:19.020 --> 00:55:21.590
When we break, change
whoever's writing things down

00:55:21.590 --> 00:55:24.550
so everybody has
a chance to speak.

00:55:24.550 --> 00:55:27.650
After this, each
brainstorm group

00:55:27.650 --> 00:55:30.890
is going to be allowed to
make two pitches to the larger

00:55:30.890 --> 00:55:31.475
class.

00:55:31.475 --> 00:55:32.850
What we're going
to ask you to do

00:55:32.850 --> 00:55:38.070
is write a title for the
game on a large Post-It,

00:55:38.070 --> 00:55:39.500
and we'll hand these out.

00:55:39.500 --> 00:55:40.500
One of these, yeah.

00:55:40.500 --> 00:55:43.650
We'll hand these out
when we get there.

00:55:43.650 --> 00:55:45.510
In your elevator pitch,
make sure to address

00:55:45.510 --> 00:55:48.220
the core mechanic of the
game and how it's applied

00:55:48.220 --> 00:55:50.360
to the design constraints.

00:55:50.360 --> 00:55:53.180
Games from project one that were
not selected for project two

00:55:53.180 --> 00:55:55.204
can be pitched if your
brainstorming group says

00:55:55.204 --> 00:55:56.745
that was actually
a pretty cool idea.

00:55:56.745 --> 00:55:58.400
Let's pitch that too.

00:55:58.400 --> 00:56:01.910
But it must be altered
for design constraints.

00:56:01.910 --> 00:56:04.780
And I'll give you a break
after that second brainstorming

00:56:04.780 --> 00:56:07.500
session to come up with these
pitches-- about 10 minutes,

00:56:07.500 --> 00:56:09.670
I think.

00:56:09.670 --> 00:56:12.520
Any questions about this?

00:56:12.520 --> 00:56:13.020
Psyched?

00:56:13.020 --> 00:56:14.080
Pumped?

00:56:14.080 --> 00:56:16.138
All right, I'm going
to hand these out.

00:56:16.138 --> 00:56:19.126
[SIDE CONVERSATION]

00:56:42.532 --> 00:56:46.975
PROFESSOR: Team one,
pitch one, come on down.

00:56:50.480 --> 00:56:53.130
And just like before,
you've got about a minute.

00:56:53.130 --> 00:56:55.050
Describe-- oops, wrong ones.

00:57:01.720 --> 00:57:05.380
Give us the name of the
pitch, the core mechanic,

00:57:05.380 --> 00:57:09.380
and how this pitch approaches
the design constraint.

00:57:09.380 --> 00:57:10.330
Pitch, go.

00:57:15.775 --> 00:57:19.460
PRESENTER 16: So our first
pitch is called Dragon's Lair.

00:57:19.460 --> 00:57:23.390
It bears no relation to the
previous Dragon's Lair idea.

00:57:23.390 --> 00:57:26.850
The idea we came up with is
that as a dragon, when you're

00:57:26.850 --> 00:57:28.780
acquiring gold, the
more gold you have,

00:57:28.780 --> 00:57:31.765
the more heroes want to
come in and mess you up

00:57:31.765 --> 00:57:33.450
to try and steal your stuff.

00:57:33.450 --> 00:57:35.850
So we thought that there's
a fun trade-off there

00:57:35.850 --> 00:57:38.180
between acquiring
more gold and becoming

00:57:38.180 --> 00:57:41.281
a more powerful dragon,
but at the same time

00:57:41.281 --> 00:57:42.982
having more and
more heroes wanting

00:57:42.982 --> 00:57:44.930
to come in and attack you.

00:57:44.930 --> 00:57:50.380
We also thought that
just in that, in itself,

00:57:50.380 --> 00:57:52.790
you don't quite get the idea
of meaningful decisions,

00:57:52.790 --> 00:57:54.373
because everybody's
just going to want

00:57:54.373 --> 00:57:56.997
to be a more powerful dragon and
prove themselves as, oh, I can

00:57:56.997 --> 00:57:58.320
handle more and more knights.

00:57:58.320 --> 00:58:00.028
So we thought it'd be
interesting to have

00:58:00.028 --> 00:58:03.096
this idea of not just
being an enemy to everyone.

00:58:03.096 --> 00:58:06.270
You can actually ally with some
of the villages in the game

00:58:06.270 --> 00:58:09.437
so you'll be making less
money, but then you'd

00:58:09.437 --> 00:58:12.240
have more people on your
side to help you defend.

00:58:12.240 --> 00:58:16.150
So the trade-off here is
between being nice to people

00:58:16.150 --> 00:58:20.230
in order to get more
defense or slaughtering them

00:58:20.230 --> 00:58:24.158
or just steal their money.

00:58:24.158 --> 00:58:26.113
PROFESSOR: Nice pitch.

00:58:26.113 --> 00:58:26.613
Number two.

00:58:32.996 --> 00:58:35.730
PRESENTER 17: All right,
so our second game

00:58:35.730 --> 00:58:37.850
is called caffeine worker.

00:58:37.850 --> 00:58:44.640
And it's based on the idea
that caffeine will pretty much

00:58:44.640 --> 00:58:47.880
simulate your [INAUDIBLE]
where you can actually

00:58:47.880 --> 00:58:53.620
get more work done under
less amount of sleep.

00:58:53.620 --> 00:58:56.240
But it also tends to
have side effects.

00:58:56.240 --> 00:59:00.069
So our game pretty much revolves
around you are a worker,

00:59:00.069 --> 00:59:01.610
and you want to get
these tasks done.

00:59:01.610 --> 00:59:06.320
And you want to get these done
as efficiently as possible.

00:59:06.320 --> 00:59:09.434
So we're going to have
something like a 24 hour clock.

00:59:09.434 --> 00:59:10.850
We're going to
have night and day.

00:59:10.850 --> 00:59:14.710
We're going to have a lot
of different sort of actions

00:59:14.710 --> 00:59:20.010
that you can sort of, like,
decide on executing, such

00:59:20.010 --> 00:59:22.810
as you can figure out how
many hours you want to sleep,

00:59:22.810 --> 00:59:26.240
how much caffeine
you want to take,

00:59:26.240 --> 00:59:35.270
and also you can also figure out
your eating schedule as well.

00:59:35.270 --> 00:59:37.810
So we don't really have
the nitty-gritty details,

00:59:37.810 --> 00:59:40.000
but we imagine that
this game will involve

00:59:40.000 --> 00:59:46.010
a lot of scheduling, a lot
of sort of-- I don't know,

00:59:46.010 --> 00:59:52.390
the trade-offs between sleeping
and eating and drinking coffee.

00:59:52.390 --> 00:59:54.590
But in the end, I
think what we want

00:59:54.590 --> 00:59:57.470
to do is that we want
to make this game

00:59:57.470 --> 01:00:00.120
sort of like a platformer,
where you are actual in control

01:00:00.120 --> 01:00:04.833
of the character
and for [INAUDIBLE]

01:00:04.833 --> 01:00:08.580
your tasks, something you need
to go from point A to point B.

01:00:08.580 --> 01:00:11.967
But these different sort of
attributes, how much caffeine

01:00:11.967 --> 01:00:14.090
you have over time,
how much sleep you

01:00:14.090 --> 01:00:16.675
have, whether you're eating
enough, whether you're happy

01:00:16.675 --> 01:00:19.940
or not-- those sort of
effect your motor skills

01:00:19.940 --> 01:00:24.320
as well as some
other implementations

01:00:24.320 --> 01:00:26.292
that we have yet to figure out.

01:00:26.292 --> 01:00:27.271
PROFESSOR: All right.

01:00:27.271 --> 01:00:27.771
Thank you.

01:00:27.771 --> 01:00:28.757
Thank you group one.

01:00:33.194 --> 01:00:34.673
Group two.

01:00:34.673 --> 01:00:43.310
Pitch one, category A. Remember,
it's one-minute pitches.

01:00:54.477 --> 01:00:56.310
PRESENTER 18: All right,
so here's the idea.

01:00:56.310 --> 01:00:58.310
You are an administrator at MIT.

01:00:58.310 --> 01:01:02.810
And your goal is the management
of MIT and promote MIT's ideals

01:01:02.810 --> 01:01:04.810
and maximize their
endowment and all that.

01:01:04.810 --> 01:01:08.570
And your goal is to carefully
trade-off the short-term

01:01:08.570 --> 01:01:09.740
versus long-term policy.

01:01:09.740 --> 01:01:11.726
For example, you've
got this plot of land.

01:01:11.726 --> 01:01:14.440
You could lease it to Pfizer
for 60 years and get 2 billion

01:01:14.440 --> 01:01:15.710
straight to the endowment.

01:01:15.710 --> 01:01:18.036
But then you can't
expand it till later.

01:01:18.036 --> 01:01:20.880
And do you want to appease
the students to get more

01:01:20.880 --> 01:01:21.380
in tuition?

01:01:21.380 --> 01:01:23.540
But maybe you need that
money, so you raise tuition,

01:01:23.540 --> 01:01:25.623
but you also get rid of
your unpopular flag policy

01:01:25.623 --> 01:01:26.745
at the same time.

01:01:26.745 --> 01:01:28.786
So you can play as many
different administrators.

01:01:28.786 --> 01:01:31.400
You can play as,
like, Dean Colombo.

01:01:31.400 --> 01:01:34.630
You can play as Kevin
Kraft from the Office

01:01:34.630 --> 01:01:35.730
of Student Citizenship.

01:01:35.730 --> 01:01:38.381
You can play as the
shady MIT corporation

01:01:38.381 --> 01:01:40.960
with this weird board
of self-voting members

01:01:40.960 --> 01:01:43.435
that no one really understands.

01:01:43.435 --> 01:01:46.900
That's our pitch one.

01:01:46.900 --> 01:01:49.375
[APPLAUSE]

01:01:51.215 --> 01:01:52.840
PROFESSOR: What's
the name of that one?

01:01:52.840 --> 01:02:04.720
PRESENTER 18: MIT
Simulator 2015.

01:02:04.720 --> 01:02:06.700
PRESENTER 19: Our second
idea is build a car.

01:02:06.700 --> 01:02:08.431
And we thought that
you could start out

01:02:08.431 --> 01:02:10.660
with a limited amount
of money, and we

01:02:10.660 --> 01:02:13.135
will send the car you
build after a turn

01:02:13.135 --> 01:02:14.620
through a simulator.

01:02:14.620 --> 01:02:19.075
And so you don't exactly know
which maze it's going to get.

01:02:19.075 --> 01:02:21.055
So depending on
the result of that,

01:02:21.055 --> 01:02:23.530
you have trade-offs of
how to spend your money,

01:02:23.530 --> 01:02:26.782
what parts to buy,
and build a car.

01:02:26.782 --> 01:02:27.490
PROFESSOR: Great.

01:02:33.363 --> 01:02:34.349
Group three.

01:02:52.451 --> 01:02:53.576
PRESENTER 20: Hi, everyone.

01:02:53.576 --> 01:02:56.287
I'm going to tell you about
Fight or Flight, which

01:02:56.287 --> 01:02:59.492
is from our first project.

01:02:59.492 --> 01:03:03.377
And if anyone played
the paper prototype,

01:03:03.377 --> 01:03:04.960
it's going to be
completely different.

01:03:04.960 --> 01:03:08.990
So the idea is that you're
playing this platformer, which

01:03:08.990 --> 01:03:13.534
is a map that has a bunch
of separate little rooms.

01:03:13.534 --> 01:03:16.462
So any given little room might
have four or five platforms.

01:03:16.462 --> 01:03:17.450
It's not really big.

01:03:17.450 --> 01:03:20.750
And so this whole
big map has a bunch

01:03:20.750 --> 01:03:22.340
of these little
rooms, all connected

01:03:22.340 --> 01:03:23.675
by different passageways.

01:03:23.675 --> 01:03:26.650
And you can get from different
places to different places.

01:03:26.650 --> 01:03:30.760
And all of these rooms
are potentially exploding.

01:03:30.760 --> 01:03:35.035
So this is some
sort of spaceship,

01:03:35.035 --> 01:03:36.460
and there's a meltdown.

01:03:36.460 --> 01:03:39.310
Or, I don't know, this
is, like, the tavern.

01:03:39.310 --> 01:03:41.910
And near a volcano,
things are filling

01:03:41.910 --> 01:03:44.390
with lava, or something.

01:03:44.390 --> 01:03:45.726
However you want to skin it.

01:03:48.510 --> 01:03:50.135
So each of the
rooms will give you

01:03:50.135 --> 01:03:51.843
some sort of warning
about whether or not

01:03:51.843 --> 01:03:53.196
it's about to explode.

01:03:53.196 --> 01:03:56.210
And then some time after the
warning starts, it explodes.

01:03:56.210 --> 01:03:58.270
And then if you're in
there, you're in trouble.

01:03:58.270 --> 01:04:00.570
So the trade-offs
in this game are

01:04:00.570 --> 01:04:04.670
that-- so the overall goal is
to get somewhere, is to get out,

01:04:04.670 --> 01:04:08.440
is to get from one side
of the map to the other.

01:04:08.440 --> 01:04:12.245
And in between, there's a
whole bunch of other people

01:04:12.245 --> 01:04:16.580
who want to fight you,
just for the heck of it.

01:04:16.580 --> 01:04:18.810
So they want to fight you,
you want to fight them.

01:04:18.810 --> 01:04:22.970
But the more you fight,
the more tired you get.

01:04:22.970 --> 01:04:25.260
And the more tired you
get, the slower you move.

01:04:25.260 --> 01:04:28.220
And the more slowly
you move, the harder

01:04:28.220 --> 01:04:31.130
it is to escape a room
once it starts exploding.

01:04:31.130 --> 01:04:33.370
So you can choose to
fight, and you're probably

01:04:33.370 --> 01:04:35.420
going to kill them, you
could kill the enemies

01:04:35.420 --> 01:04:39.026
because they're AI written
by people in this class.

01:04:42.498 --> 01:04:45.970
Versus, like, the player who
can actually just implement

01:04:45.970 --> 01:04:47.460
strategies and things.

01:04:47.460 --> 01:04:51.990
But if you do go and have fun
and try to kick everyone's ass

01:04:51.990 --> 01:04:55.380
and you succeed at
that, well, then you're

01:04:55.380 --> 01:04:57.870
panting in the middle of a
room that's about to explode.

01:04:57.870 --> 01:04:59.364
So fight or flight everyone.

01:05:11.320 --> 01:05:13.310
PRESENTER 21: The second
one is Jigsaw World,

01:05:13.310 --> 01:05:16.600
another platformer where you are
inside a jigsaw puzzle, where

01:05:16.600 --> 01:05:19.969
every time you get to the
end of a block section

01:05:19.969 --> 01:05:22.344
square thing-- they're oddly
shaped because it's a jigsaw

01:05:22.344 --> 01:05:25.059
puzzle-- you get a choice
of a new set of tiles

01:05:25.059 --> 01:05:27.184
to put on the end of the
one you've already gotten.

01:05:27.184 --> 01:05:29.059
Sometimes you have to
go back and pick one up

01:05:29.059 --> 01:05:32.024
off the beginning of your
puzzle and put it at the end.

01:05:32.024 --> 01:05:34.850
And various power-ups make
certain ones incompatible,

01:05:34.850 --> 01:05:36.870
like being able to fly.

01:05:36.870 --> 01:05:38.285
That means you can't swim.

01:05:38.285 --> 01:05:40.020
Being able to swim
means you can't jump--

01:05:40.020 --> 01:05:41.250
all those kinds of things.

01:05:41.250 --> 01:05:43.660
You're kind of creating
your own world that you then

01:05:43.660 --> 01:05:47.448
have to navigate differently.

01:05:51.312 --> 01:05:52.278
Oh, yeah.

01:05:52.278 --> 01:05:53.740
And deconstruct it.

01:05:53.740 --> 01:05:56.185
You never get to see
the whole thing at once

01:05:56.185 --> 01:06:02.054
because it's falling apart as
you're taking it and moving it

01:06:02.054 --> 01:06:03.536
somewhere.

01:06:03.536 --> 01:06:04.524
PROFESSOR: Thank you.

01:06:09.464 --> 01:06:10.452
Group five.

01:06:28.730 --> 01:06:30.545
PRESENTER 22: So
our first idea is

01:06:30.545 --> 01:06:32.510
a game called The Gun
Wars, in which you're

01:06:32.510 --> 01:06:33.900
managing a defense company.

01:06:33.900 --> 01:06:36.170
And you're trading
off who you're

01:06:36.170 --> 01:06:37.860
going to sell your
product to amidst

01:06:37.860 --> 01:06:39.240
a bunch of different clients.

01:06:39.240 --> 01:06:40.906
So you could have
somebody go up to you,

01:06:40.906 --> 01:06:43.040
you get some information
on who they are, say, hey,

01:06:43.040 --> 01:06:44.095
this is James, seems
like an OK guy,

01:06:44.095 --> 01:06:45.995
and he wants to buy,
like, 10,000 missiles,

01:06:45.995 --> 01:06:47.751
air-to-surface
missiles or something.

01:06:47.751 --> 01:06:49.736
You have to surmise
him, figure out

01:06:49.736 --> 01:06:51.360
if that's somebody
you want to sell to,

01:06:51.360 --> 01:06:53.110
figure out at what
price you want to sell.

01:06:53.110 --> 01:06:55.151
And then there may be some
consequences for that.

01:06:55.151 --> 01:06:56.670
Maybe you sell to
Jimmy, and then he

01:06:56.670 --> 01:07:00.162
launches an attack on some
country you like or don't like.

01:07:00.162 --> 01:07:01.620
But more importantly,
maybe he does

01:07:01.620 --> 01:07:04.120
something your other
clients like or don't like.

01:07:04.120 --> 01:07:05.490
And so you lose other business.

01:07:05.490 --> 01:07:08.084
Or you get new business from
people that are Jimmy's friends

01:07:08.084 --> 01:07:10.086
and realize they can
buy weapons from you.

01:07:10.086 --> 01:07:11.960
So it's sort of a social
responsibility game.

01:07:11.960 --> 01:07:13.340
You're a defense contractor.

01:07:13.340 --> 01:07:15.776
You're managing some
pool of money, trying

01:07:15.776 --> 01:07:17.772
to make money off of contracts.

01:07:17.772 --> 01:07:19.740
And the trade-offs
come with who you're

01:07:19.740 --> 01:07:21.216
deciding to buy and sell from.

01:07:29.580 --> 01:07:32.250
PRESENTER 23: Our second idea
for the game is Bullet Craft.

01:07:32.250 --> 01:07:35.680
Bullet Craft is a fast-paced,
top-down shooter game

01:07:35.680 --> 01:07:38.164
that follows the simple
formula, the classic formula,

01:07:38.164 --> 01:07:41.290
that the player controls
the ship, moves around,

01:07:41.290 --> 01:07:43.346
[INAUDIBLE] that's
coming at him,

01:07:43.346 --> 01:07:46.340
and shoots the
enemies that spawns

01:07:46.340 --> 01:07:48.360
from the top of the screen.

01:07:48.360 --> 01:07:50.820
Well, you might ask,
where does trade-offs come

01:07:50.820 --> 01:07:52.260
into play for Bullet Craft?

01:07:52.260 --> 01:07:54.980
So there are
actually various ways

01:07:54.980 --> 01:07:56.805
we can augment the
game play so that we

01:07:56.805 --> 01:07:58.252
will incorporate trade-offs.

01:07:58.252 --> 01:07:59.710
For example, on
the micro level, we

01:07:59.710 --> 01:08:03.610
can have ammo limits
or overheating guns.

01:08:03.610 --> 01:08:08.090
And we can have a fuel limit
which if the player moves,

01:08:08.090 --> 01:08:11.630
he consumes fuel which
pollutes the environment,

01:08:11.630 --> 01:08:14.390
and the enemies become stronger
because of that pollution.

01:08:14.390 --> 01:08:16.527
At the macro level,
we could also

01:08:16.527 --> 01:08:18.748
have the player choosing
different types of weapons,

01:08:18.748 --> 01:08:20.748
spending their money on
different types of ships

01:08:20.748 --> 01:08:22.160
and even a crew.

01:08:22.160 --> 01:08:25.249
What I like about
Bullet Craft is

01:08:25.249 --> 01:08:29.209
it is very easy to implement,
and it's guaranteed to be fun,

01:08:29.209 --> 01:08:32.475
so that if we make
Bullet Craft, we

01:08:32.475 --> 01:08:35.183
are sure that we will be able
to make a successful game.

01:08:40.182 --> 01:08:41.140
PROFESSOR: Group eight.

01:09:05.665 --> 01:09:09.300
PRESENTER 24: So the first
idea we had is Daydream Inc.

01:09:09.300 --> 01:09:12.620
So in this game, you're like
a regular office worker.

01:09:12.620 --> 01:09:15.569
And you have to try
and not get fired.

01:09:15.569 --> 01:09:19.580
But the goal of the game is
to succeed in your daydreams.

01:09:19.580 --> 01:09:22.560
So there's basically two
mini-games within the game.

01:09:22.560 --> 01:09:24.036
There's surviving
the office life,

01:09:24.036 --> 01:09:25.535
and then there's
also your daydreams

01:09:25.535 --> 01:09:27.819
where you're fighting
your boss or something.

01:09:27.819 --> 01:09:30.500
And it's interesting
because you use tools

01:09:30.500 --> 01:09:32.860
from the office to build
weapons for your daydreams.

01:09:32.860 --> 01:09:35.360
So you might get a
stapler and a rubber band

01:09:35.360 --> 01:09:38.276
and make a staple gun or
something for your daydreams.

01:09:38.276 --> 01:09:43.170
So you have to spend both time
and research from the office

01:09:43.170 --> 01:09:45.509
life in the daydreams
without getting fired,

01:09:45.509 --> 01:09:47.172
so you can eventually
win the game.

01:09:47.172 --> 01:09:48.963
Also, if you become
CEO in the office life,

01:09:48.963 --> 01:09:50.838
so if you do really well
there too, you lose.

01:09:54.002 --> 01:09:56.400
PRESENTER 25: So our
second idea was Score High.

01:09:56.400 --> 01:09:59.530
So basically, you're
an MIT student.

01:09:59.530 --> 01:10:01.860
And you have a list of
maybe three classes.

01:10:01.860 --> 01:10:04.471
And you have some stats-- like,
your food, sleep, happiness,

01:10:04.471 --> 01:10:04.971
health.

01:10:04.971 --> 01:10:08.447
And the thing is, each of your
classes has PSETs and tests.

01:10:08.447 --> 01:10:10.660
And you have to get
to the tests on time,

01:10:10.660 --> 01:10:13.490
and you also have to turn
in your PSETs on time.

01:10:13.490 --> 01:10:15.402
And so how do you do that?

01:10:15.402 --> 01:10:16.995
So you run around
the maze, and you

01:10:16.995 --> 01:10:18.540
have to get to the right
building at the right time.

01:10:18.540 --> 01:10:19.695
But you also, when
you're there, actually

01:10:19.695 --> 01:10:21.060
have to take the tests.

01:10:21.060 --> 01:10:24.150
And depending on-- you
pick up different items.

01:10:24.150 --> 01:10:27.332
And say you drink 10 cups of
coffee, you're really jittery.

01:10:27.332 --> 01:10:30.724
Instead of seeing all of the
options for the multiple choice

01:10:30.724 --> 01:10:33.054
question, suddenly
you can't look at it,

01:10:33.054 --> 01:10:34.340
and you only see one question.

01:10:34.340 --> 01:10:36.200
And somehow you miss
the back of the page.

01:10:36.200 --> 01:10:38.525
So you fail the test, right?

01:10:38.525 --> 01:10:40.780
So the whole game is
about choosing-- you know,

01:10:40.780 --> 01:10:42.113
when am I going to drink coffee?

01:10:42.113 --> 01:10:43.886
Or maybe I'll buy
my friend coffee,

01:10:43.886 --> 01:10:45.424
and he'll give me
the PSET answers

01:10:45.424 --> 01:10:48.735
so I don't have to spend
five minutes doing the PSET.

01:10:48.735 --> 01:10:51.000
And managing those
trade-offs while also

01:10:51.000 --> 01:10:53.244
running around this
maze and getting

01:10:53.244 --> 01:10:54.244
everything done on time.

01:10:54.244 --> 01:10:57.220
And if you fail any of
your classes, you lose.

01:11:04.180 --> 01:11:06.368
PROFESSOR: Group
13, come on down.

01:11:45.789 --> 01:11:49.200
PRESENTER 26: Our first
idea is Ghost Face.

01:11:49.200 --> 01:11:52.322
The title's a working title.

01:11:52.322 --> 01:11:55.570
The idea is you're in a
maze, actually a maze.

01:11:55.570 --> 01:11:57.490
And you have very
limited visibility.

01:11:57.490 --> 01:11:59.890
You can only see
a certain radius

01:11:59.890 --> 01:12:03.920
that is much smaller than
the actual size of the maze.

01:12:03.920 --> 01:12:07.380
And there's ghosts
coming at you.

01:12:07.380 --> 01:12:10.035
And basically the idea is to get
to the other side of the maze,

01:12:10.035 --> 01:12:12.463
solving the maze, but you
only have limited disability.

01:12:12.463 --> 01:12:15.523
So you have to explore the maze
and remember which path was

01:12:15.523 --> 01:12:17.214
a good decision and
which path wasn't.

01:12:17.214 --> 01:12:18.975
So you have to trace back a lot.

01:12:18.975 --> 01:12:21.500
You can also add in more things.

01:12:21.500 --> 01:12:24.020
Like, you may have
a certain number

01:12:24.020 --> 01:12:26.120
of beacons, light
beacons, that you

01:12:26.120 --> 01:12:29.030
can place in different areas,
but a limited number of them.

01:12:29.030 --> 01:12:32.640
So you want to be-- you want
to make a decision as to what

01:12:32.640 --> 01:12:36.940
would be a strategically
good place to place a beacon

01:12:36.940 --> 01:12:43.520
and reveal an important and
critical part of the maze

01:12:43.520 --> 01:12:48.050
so that you can see
more of the maze.

01:12:48.050 --> 01:12:52.990
So that's our first idea.

01:12:52.990 --> 01:12:56.420
PRESENTER 27: So our second
idea revolves around DNA.

01:12:56.420 --> 01:12:58.900
We haven't found a
good title for it.

01:12:58.900 --> 01:13:00.884
But the idea is, let's
say there's an organism.

01:13:00.884 --> 01:13:02.868
And you have a certain
set of diseases

01:13:02.868 --> 01:13:04.356
that you want to
try to get rid of.

01:13:04.356 --> 01:13:09.812
And your goal is to somehow go
around finding other organisms

01:13:09.812 --> 01:13:12.292
that have their set of traits.

01:13:12.292 --> 01:13:14.772
What's the diseases
that you don't have,

01:13:14.772 --> 01:13:17.252
some other diseases
that you have.

01:13:17.252 --> 01:13:19.732
And play a game of
chance-- so whether it's

01:13:19.732 --> 01:13:22.590
worth it to spend your
time and energy eating

01:13:22.590 --> 01:13:24.530
or mating with
the other organism

01:13:24.530 --> 01:13:28.775
and seeing if those genes come
across to your [INAUDIBLE].

01:13:28.775 --> 01:13:32.545
And the trade-off
is-- the trade-off is,

01:13:32.545 --> 01:13:35.657
do you want to mate with
this organism or not?

01:13:35.657 --> 01:13:37.448
We're still working on
the details of this,

01:13:37.448 --> 01:13:41.964
but the idea is this gene
competition [INAUDIBLE].

01:13:41.964 --> 01:13:43.380
PRESENTER 28: And
random mutation.

01:13:43.380 --> 01:13:45.389
PRESENTER 27: Yeah, random
mutations [INAUDIBLE]

01:13:45.389 --> 01:13:46.531
PROFESSOR: OK.

01:13:46.531 --> 01:13:47.030
Thank you.

01:13:51.060 --> 01:13:52.366
All right.

01:13:52.366 --> 01:13:54.160
We're actually really
good on time today,

01:13:54.160 --> 01:13:56.780
so you'll actually have some
time to work in your teams

01:13:56.780 --> 01:13:59.550
after we get you all sorted out.

01:13:59.550 --> 01:14:07.820
So we heard about Dragon's Lair,
Caffeine Worker, MIT Simulator,

01:14:07.820 --> 01:14:13.240
Build a Car, Fight or Flight,
Jigsaw World, The Gun Wars,

01:14:13.240 --> 01:14:18.240
Bullet Craft, Daydream Inc.,
Score High, Ghost Maze,

01:14:18.240 --> 01:14:19.800
and DNA.

01:14:19.800 --> 01:14:21.440
12 ideas-- actually,
a few of them

01:14:21.440 --> 01:14:23.273
could probably combine
pretty well together.

01:14:23.273 --> 01:14:25.610
So we're not really
throwing the ideas away.

01:14:25.610 --> 01:14:28.090
We're really just trying to
get together into groups of six

01:14:28.090 --> 01:14:30.347
around a base idea
we can start with.

01:14:30.347 --> 01:14:32.430
So if you've got a game
that you're really, really

01:14:32.430 --> 01:14:34.480
excited about working
on, come right down

01:14:34.480 --> 01:14:35.540
and put your name on it.

01:14:35.540 --> 01:14:40.230
And make sure your Post-It
has your name and the game

01:14:40.230 --> 01:14:42.063
engine you used in the
tutorial assignments.

01:14:46.584 --> 01:14:47.500
Let's see what we got.

01:14:50.307 --> 01:14:52.140
All right, raise your
hand if you still have

01:14:52.140 --> 01:14:54.080
your name tag, your Post-It.

01:14:54.080 --> 01:14:58.070
One, two, three, four.

01:14:58.070 --> 01:15:00.430
All right.

01:15:00.430 --> 01:15:03.700
We have Caffeine Worker
only has one person on.

01:15:07.010 --> 01:15:09.985
[? Zigamantias ?], you
have your name tag back.

01:15:14.005 --> 01:15:15.570
Nope, sit down.

01:15:15.570 --> 01:15:16.770
Just sit down.

01:15:16.770 --> 01:15:18.830
Jigsaw World.

01:15:18.830 --> 01:15:19.545
Sorry, Kathleen.

01:15:25.010 --> 01:15:25.510
All right.

01:15:29.810 --> 01:15:33.860
We've got one, two,
three, four, five, six.

01:15:33.860 --> 01:15:35.370
DNA is done.

01:15:35.370 --> 01:15:43.100
So DNA is Derek, Eduardo, Ava,
Harry, Trisha, and Lauren.

01:15:43.100 --> 01:15:44.560
One, two, three for Ghost Maze.

01:15:44.560 --> 01:15:45.510
Three for Score High.

01:15:45.510 --> 01:15:47.510
Two for Daydream.

01:15:47.510 --> 01:15:48.895
None for Gun Wars.

01:15:48.895 --> 01:15:49.770
Two for Bullet Craft.

01:15:49.770 --> 01:15:51.075
Three for Fight or Flight.

01:15:51.075 --> 01:15:53.615
One, two, three,
four for Build a Car.

01:15:53.615 --> 01:15:54.975
Two, three, four, five, six.

01:15:54.975 --> 01:15:55.910
Oh, cool.

01:15:55.910 --> 01:15:57.076
MIT Simulator.

01:15:57.076 --> 01:15:58.075
Don't get me in trouble.

01:16:00.670 --> 01:16:05.530
Norman, Jordan, James,
Peter, [? Szeun, ?] and Sam.

01:16:14.980 --> 01:16:18.440
Bullet Craft and
Daydream-- first off,

01:16:18.440 --> 01:16:20.470
does anybody who has
their name tag on them,

01:16:20.470 --> 01:16:25.672
are they all excited about
either of these two games?

01:16:25.672 --> 01:16:26.439
AUDIENCE: I am.

01:16:26.439 --> 01:16:27.230
PROFESSOR: You are?

01:16:27.230 --> 01:16:30.390
Is your name-- do you have
your name tag in your hand?

01:16:30.390 --> 01:16:34.010
OK, raise your hand if you have
your name tag in your hand.

01:16:34.010 --> 01:16:36.260
All right, come down here
and put your name on a game.

01:16:44.917 --> 01:16:46.000
I'm going to get them all.

01:16:46.000 --> 01:16:48.000
I think we have enough
to get every game to six.

01:17:01.205 --> 01:17:06.570
10, nine, eight,
seven, six-- hey, five.

01:17:06.570 --> 01:17:07.070
Cool.

01:17:07.070 --> 01:17:07.870
Thank you.

01:17:07.870 --> 01:17:14.240
All right, Fight or
Flight, Bullet Craft,

01:17:14.240 --> 01:17:19.120
Daydream I think
are all either going

01:17:19.120 --> 01:17:22.380
to go away or combine somehow.

01:17:22.380 --> 01:17:24.565
Score High, one,
two, three, four.

01:17:24.565 --> 01:17:27.260
One, two, three, four,
five on Ghost Maze.

01:17:27.260 --> 01:17:28.910
Just needs one more person.

01:17:28.910 --> 01:17:30.050
Five on Build a Car.

01:17:30.050 --> 01:17:32.500
Just needs one more person.

01:17:32.500 --> 01:17:34.200
Four on Dragon's Lair.

01:17:34.200 --> 01:17:39.680
One, two, three,
four, five, six.

01:17:39.680 --> 01:17:40.440
OK.

01:17:40.440 --> 01:17:42.130
Daydream is gone,
Bullet Craft is gone,

01:17:42.130 --> 01:17:44.210
Fight or Flight is gone.

01:17:44.210 --> 01:17:45.460
Move yourself to another team.

01:17:53.940 --> 01:17:55.940
All right, Ghost Maze
has six and is done.

01:18:00.840 --> 01:18:02.700
Score High has five, six.

01:18:02.700 --> 01:18:03.200
Done.

01:18:09.835 --> 01:18:11.460
AUDIENCE: Everything
is full, isn't it?

01:18:11.460 --> 01:18:12.085
PROFESSOR: Yes.

01:18:12.085 --> 01:18:14.634
So put yourself on one,
two, three, four, five, six.

01:18:14.634 --> 01:18:15.800
Put yourself on any of them.

01:18:24.780 --> 01:18:30.490
Five, four, three,
two-- thank you.

01:18:30.490 --> 01:18:32.640
So here are our final teams.

01:18:32.640 --> 01:18:35.930
We're going to do
one last shuffle.

01:18:35.930 --> 01:18:39.000
If anyone is like, I don't
want to really be on that one,

01:18:39.000 --> 01:18:40.180
they can move to another.

01:18:45.760 --> 01:18:51.400
For Dragon's Lair, we have Roy,
[? Mikael, ?] Liz, Zigamantis,

01:18:51.400 --> 01:18:54.950
Devon, Caleb, and Kathleen.

01:18:54.950 --> 01:18:57.820
You have a good mix
of Unity and Flixel,

01:18:57.820 --> 01:19:00.730
so I imagine you might
use Unity or Flixel.

01:19:00.730 --> 01:19:05.330
Build a Car, we have Rodrigo,
Anderson, Matt, [? Taj ?],

01:19:05.330 --> 01:19:06.750
Jeremy, and [INAUDIBLE].

01:19:06.750 --> 01:19:12.000
We have Unity, Unity, Unity--
three Unity, three Phaser.

01:19:12.000 --> 01:19:14.220
I wonder what
you're going to use.

01:19:14.220 --> 01:19:17.120
Score High, six.

01:19:17.120 --> 01:19:21.940
Miriam, [? Sen ?], Megan,
Kevin, Sabrina, and [? Zinue ?].

01:19:21.940 --> 01:19:23.905
And we have Haxe, Haxe, Flixel.

01:19:23.905 --> 01:19:25.430
Oh, wow, lots of Flixel.

01:19:25.430 --> 01:19:26.160
And two Unity.

01:19:26.160 --> 01:19:27.710
So maybe one of those.

01:19:27.710 --> 01:19:32.030
Ghost Maze, [? Jutoshka ?],
[? Salaam ?], Daniel, Kevin,

01:19:32.030 --> 01:19:33.950
Justin, and Rachel.

01:19:33.950 --> 01:19:36.590
And Unity, Unity, HaxeFlixel.

01:19:36.590 --> 01:19:38.090
Ooh, it's going to
be kind of tough.

01:19:38.090 --> 01:19:40.970
We've got three Phaser, two
Unity, and one HaxeFlixel,

01:19:40.970 --> 01:19:43.280
so that's going to be a
hard decision to make.

01:19:43.280 --> 01:19:47.240
DNA, we've got seven-- Jenny,
Lauren, Ava, Tricia, Harry,

01:19:47.240 --> 01:19:48.890
Eduardo, Derek.

01:19:48.890 --> 01:19:51.610
HaxeFlixel, HaxeFlixel,
HaxeFlixel, Flixel, and one

01:19:51.610 --> 01:19:52.110
Unity.

01:19:52.110 --> 01:19:54.114
So probably one of the Flixels.

01:19:54.114 --> 01:19:56.050
[GROANING]

01:19:58.450 --> 01:20:00.170
You decide.

01:20:00.170 --> 01:20:04.610
MIT Simulator has Unity, Unity,
Unity, Unity, Unity, Unity,

01:20:04.610 --> 01:20:05.907
Unity.

01:20:05.907 --> 01:20:07.865
Four Unitys and two
Phasers, so probably Unity.

01:20:07.865 --> 01:20:10.200
And that is Norman,
Jordan, James, Peter,

01:20:10.200 --> 01:20:12.870
Sam, and [? Szeun. ?] We have
how many students are not

01:20:12.870 --> 01:20:15.250
in class today?

01:20:15.250 --> 01:20:18.700
Five or six students
not in class today.

01:20:18.700 --> 01:20:20.920
They are going to
have to-- what's up?

01:20:20.920 --> 01:20:22.420
AUDIENCE: Make them a team.

01:20:25.329 --> 01:20:27.120
AUDIENCE: Game to learn
how not to be late.

01:20:27.120 --> 01:20:29.445
PROFESSOR: That's
a good question.

01:20:29.445 --> 01:20:31.980
PHILLIP: [INAUDIBLE]
simultaneously on Wednesday,

01:20:31.980 --> 01:20:32.940
that might be possible.

01:20:32.940 --> 01:20:35.030
But if a few of them don't
come back on Wednesday,

01:20:35.030 --> 01:20:35.779
that may not work.

01:20:35.779 --> 01:20:39.690
PROFESSOR: So teams will
be finalized on Wednesday.

01:20:39.690 --> 01:20:43.110
These are the teams as
they stand right now.

01:20:43.110 --> 01:20:44.830
You have 40 minutes
to meet as a team

01:20:44.830 --> 01:20:47.700
to figure out if you
all match schedules,

01:20:47.700 --> 01:20:50.770
to talk about the
idea you just pitched,

01:20:50.770 --> 01:20:53.220
and make a really
quick lo-fi prototype,

01:20:53.220 --> 01:20:56.100
or write down that page
that you just said out loud

01:20:56.100 --> 01:20:57.270
on the spur of the moment.

01:20:57.270 --> 01:20:59.270
Figure out what is that
game that you're making.

01:20:59.270 --> 01:21:01.850
Work on that vision statement.

01:21:01.850 --> 01:21:04.300
And feel free to
grab your things

01:21:04.300 --> 01:21:08.150
and put your names
on it if you like.