Long Project 8: Zoo Escape

Flash and JavaScript are required for this feature.

Download the video from Internet Archive.

Description: A student team presents their final game, Zoo Escape. The player can choose to be one of four animals, and use its special abilities to escape the enclosure, find a key, and exit the zoo. Each animal has its own unique and representative control scheme using the Kinect.

Speakers: MIT students

KAYLIN: Woo!

DARIUS: OK, I'm Darius [INAUDIBLE]--

KAYLIN: And I'm Kaylin.

DARIUS: --and our project was kind of a a mini-RPG, I guess, Escape From the Zoo. Right here's like an opening cutscene. So there's these cute little animals, and they're going to try and escape the zoo.

KAYLIN: Yeah. The premise of our idea was that we wanted to have different animals that you could control that each had different ways of moving with the Kinect, and we wanted the ways of moving to kind of, I guess, "connect" with the ways that the animals themselves move.

So we have the gecko and the frog, who move very differently. The penguin and the rhino. So we have four different types of controls that correspond with each animal.

DARIUS: So the goal of the game-- it's about to pop up on this view, it's going to be great. I never expected that. Oh, look, there's keys the zookeeper just hapened to put down. So each space is in a small little zoo. The keys are just colored cubes and they unlock the respective color doors, and so you have to use each animal's gimmick or special power to get each of the four keys, and then you can escape the zoo.

So there's like a frog and everything.

AUDIENCE: [LAUGHTER]

DARIUS: And this is like the backstory.

KAYLIN: Yeah.

PROFESSOR: So this is like in Grand Theft Auto.

DARIUS: Yeah, so cutscenes were really interesting to make. I couldn't really quite figure it out. We had all these image files, and so it ended up being a raw image with like 25 images attached to it and then a script that was like, every set amount of time, switch to the next image, and it's like a giant long piece of code because it's like, if time is greater than 50, do Image 5.

OK, we're in the game. I'm already moving around some penguins. So, the controls that are universal is if I stick my left hand up, I'm going to turn left.

AUDIENCE (IN DISBELIEF): No!

If I use my right hand, I'm gonna turn right. So now, a penguin's move of walking is knocking things over! But, it's actually gonna be a little slow and gimmicky.

AUDIENCE: [LAUGHTER].

DARIUS: So, originally the idea for the penguin was to kind of go like this--

KAYLIN: It still works!

DARIUS: It actually still kind of works, which is great because that way you can kind of like a penguin, right? However, it kind of got hard because the shoulders are really close to each other, so in the code it would be like, if one shoulder is in front of the other, and because they were close, we switched it to the hands.

So if you can see, I'm very loose with my hands just because it helps with the [INAUDIBLE].

So, you saw that there's four animals. So a part of this is going to be able to switch the animals. If I could please switch to a frog--

KAYLIN: You're now a frog.

DARIUS: I'm now a frog. Same general controls with the left and right. The frog's special ability is jumping, which we wanted it to be jump, but the code for that was a little bit harder than I able to do because it would have to take the average of your head position. And then whenever you had an outlier, you jump. So that was a little bit too much. So the frog is kind of like a crawling motion where one hand's put in front of the other.

[INTERPOSING VOICES]

[CHUCKLING]

AUDIENCE: What is that [INAUDIBLE]?

KAYLIN: So--

DARIUS: Yeah, doing--

KAYLIN: Yeah, we--

DARIUS: --assets.

KAYLIN: So I built this entire world. And we also used sort of terraforming. One thing I really wanted, I wanted the zoo to be really crappy, like you need to feel like the animals like you want to get out of here. So I found the worst clip art I could possibly find of each animal.

[LAUGHTER]

And if you notice, the "Welcome to the Zoo" sign is in Comic Sans.

[LAUGHTER]

All of these models, as well, are-- we found them for between $5 to $10 each on the Unity Asset Store. And they came fully animated. There's actually a lot of animations we didn't use, like the frog and the penguin can eat things. Yeah, just make sure he doesn't jump out of the-- he can't escape yet.

DARIUS: Yeah, the game relies on a lot of the things the player shouldn't do, just on basic morals. So these fences currently don't do anything. They're not collisions.

AUDIENCE: [INAUDIBLE] them?

DARIUS: Yeah, I didn't get into the [INAUDIBLE] on them. There's a little bit of find about here that just happens with models and not-flat surfaces.

KAYLIN: You can also see one thing we didn't fix is that the horse still runs, like the horse has like a controller attached to him that makes him run, but he runs in place. So whenever you move, the horse moves. I like to think it's because he secretly wants to leave with you, but he's not brave enough to do it.

[LAUGHTER]

AUDIENCE: What's the shadow? Yeah.

KAYLIN: Sorry?

AUDIENCE: The grass growing.

KAYLIN: Yeah, this is grass. There's a lot of grass, so it loads slowly.

AUDIENCE: I see. So extremely [INAUDIBLE].

AUDIENCE: Yeah, so--

KAYLIN: It's a pretty big world, actually. Do you want to switch?

DARIUS: You mean-- oh, I can keep going for a bit.

[LAUGHTER]

I'm going through it. It's so--

KAYLIN: The penguin is probably the slowest.

DARIUS: Let's talk about-- how about this motion right here? It's pretty fun. So we knew we wanted a switching motion, but logically, we didn't want the player to be able to just do this and then like continue going on--

KAYLIN: Forever.

DARIUS: --forever. So there has to be a check where if you move using left hand instead of right once, switch the check to left, and then you can't get back into that piece of code. But if it's in a update function, and that means that it ran every frame. So it was running every frame, but you could only go left or right one frame. So then you're moving one frame at a time, which was hilariously slow. So the solution to that was to--

KAYLIN: Is it the invisible wall here?

DARIUS: Yes. I'm going to show that off. So the penguin's special ability is going to be able to slide down things. So to keep other animals from using that ability, there's a nice little invisible wall. So, I'm going to switch it back to penguin. And durdle my way away.

[CLUNK]

Useless. Oops. The penguin does have a sliding animation, but I didn't get to it. Can I go back in frog? I want to try and jump. See if I can shortcut my way through this.

KAYLIN: Oh.

DARIUS: Oh, no, OK. That's unfortunate. So, yeah--

[LAUGHTER]

There was a counter that counted how many frames you're allowed to stick one hand in front of the other. And 30 worked pretty well. It was like-- it felt kind of natural with like a pattern that you would use or a time that you would use to swim.

Let's see. Other things-- switching between the animals was interesting. I originally tried attaching them all to a single player and then having them move the player object, so that way it moved all four of the models whether or not they were invisible at the same time. But that kind of caused a perpetual motion thing where one animal would move the player object, but then because it was attached to the player object, the player object would move the animal.

So like, you would hit the game, and suddenly, the penguin starts waltzing off the playing field. I think I'm on flat ground. Can I switch to rhino, please? So rhino's cool. Didn't come with a collider, so it's just kind of a box. But rhino's way to move is to charge forward.

[LAUGHTER]

It's kind of fun because you kind of go like airplane mode. So now I'm in the gecko zone. Can I please be gecko? Gecko's ability is to climb up walls. However, due to time constraints, instead of climbing up walls, we're going to use some magic and just teleport.

[LAUGHTER]

Good enough. He's going to get his key.

AUDIENCE: Wait, what is that?

DARIUS: So, would you like to talk about NPCs?

KAYLIN: Yes. So we're going to go visit some of the NPCs now. There are interacts that you engage with by hitting a little invisible collider box. There's a gorilla and a horse, neither of whom want to escape with you. The gorilla's in that sad-looking cage. And the horse is standing behind him. And each interact is specific to the animals. So we're going to interact with gorilla as rhino.

DARIUS: [? Hup ?] [? feed. ?]

[CHUCKLING]

I need a little break, so this is fine.

KAYLIN: Yeah. [LAUGHS] It's good exercise. Oh no, he became the horse.

DARIUS: Oh, why did the horse get there?

[LAUGHTER]

That's actually a good question. I don't know why the horse is behind the gorilla.

KAYLIN: It could actually be the image. Weird. We had to make a Harambe reference. I mean, it's a gorilla in a zoo.

DARIUS: Yeah.

KAYLIN: What are we going to do?

DARIUS: Another interesting-- talk about cutscenes. Cutscenes were fun.

KAYLIN: Oh, it automatically goes to the horse.

DARIUS: That's unfortunate.

KAYLIN: Well, it's OK.

DARIUS: So this is like the interaction with the horse.

KAYLIN: But it only did part of the horse cutscene. Maybe the images were just put there by accident. Whatever. Anyways, so this is the horse. Yeah, so as we'll find out in a minute, we're going to leave-- oh.

DARIUS: Oh.

KAYLIN: Wow.

DARIUS: [INAUDIBLE] A little shortcut.

KAYLIN: Oh, it must have still been picking you up.

DARIUS: Yeah, it was still moving. I guess I forgot to turn off input. That's great.

KAYLIN: Oh, well. So we're going to go interact with--

DARIUS: Oh, that's why it's turning the horse.

KAYLIN: Sure, we'll switch with penguin. Oh, that's why. Yeah. So now we'll go interact.

[LAUGHTER]

Shh.

DARIUS: Frog is pretty good. Can I have frog?

KAYLIN: OK, we'll have frog. There we go.

DARIUS: So interesting things, it's like, ooh, I think I triggered this. When I was testing, to get around, I had to choose different animals to get around. So frog was convenient because of the jumping was pretty fast. The rhino's the fastest, but because the rhino hitbox is literally a box, some weird things happened where they would hit a log and then start flying off into space, or like flip over and tumble and crazy things.

So it wasn't really the safe route to get to places, but if I was feeling angry and ambitious-- ooh, weird. Tilted. I would like to go to rhino and like I have fun pretending to be like an airplane.

KAYLIN: It's called a Dutch angle. It's purposeful.

[CHUCKLING]

DARIUS: This is the last key. We're almost there.

KAYLIN: Hold up. Should I switch?

DARIUS: Not yet. I need to line up.

KAYLIN: Is frog faster than gecko?

DARIUS: It's because of the jump.

AUDIENCE: Showing you over here.

DARIUS: OK. Oop, oop, oop. Rhino?

KAYLIN: OK.

DARIUS: So the rhino's special ability is being able to break down boxes. [ROAR] And then hit the key. [INAUDIBLE]. However, it's a very tight corridor, so the rhino itself can't really turn to get out.

KAYLIN: Oh, no.

[LAUGHTER]

AUDIENCE: Teamwork.

KAYLIN: Yeah. This sort of-- another part of the premise--

DARIUS: Oh, well, no.

KAYLIN: --was that we wanted to make-- we wanted to make the characters be animals that nobody would miss if they left the zoo, except for rhino, who everybody would miss. So rhino needs a lot of help.

[CHUCKLING]

DARIUS: There's always a reason.

KAYLIN: That's the plot reason.

DARIUS: So if you noticed at the beginning, there were doors near the entrance here. They're all gone. You know, the colored keys got rid of their respective colored doors. And there's a short ending cutscene. So I'm going to make it to the end. Welcome to the zoo. Goodbye. Freedom!

KAYLIN: Yay.

DARIUS: Ahh!

AUDIENCE: Yay.

[CHUCKLING]

[APPLAUSE]

PROFESSOR: Are there any questions? It was a pretty thorough talk through the whole thing.

DARIUS: We had a lot of time.

KAYLIN: Yeah.

PROFESSOR: Any questions? All right, awesome. Very cool.