Loading…
Transcript

Andrew Forney

Brian Handy

David Hara

Don Rowe

and Carlos Agudo

Welcome

What is it?

K'tah! is a browser based, cooperative, class-oriented zombie survival game designed for true team play. Players not only work in synergy with, but also depend upon, one another in order to reach the highest levels of achievement. Unlike most titles in the genre, K'tah!'s gameplay requires players to route, outrun, and outsmart the zombie horde, rather than follow the usual hack, slash, and obliterate paradigm.

Inspiration

Why this

project?

Project

Goals

Design

Components

  • Main script (app.js)
  • Wiring (URI specifications, routing) for the webapp
  • Controllers
  • Views (Jade templates)
  • Game state and Networking (Ajax)
  • Database
  • Chat
  • Players (herder, pioneer, architect, scientist, tinkerer) and their capabilities
  • Monsters, especially monster behavior (AI)
  • Resources (stone, wood, zombie flesh, atomic waste, ...)
  • Artwork (models, skins, accents, textures, ground, resources, fonts, icons, ...)
  • 3-D Graphics and animation (Copperlicht, WebGL)
  • Web styling (jquery-ui, modern css)

Deployment

Diagram

The Game

The Class

Course Objectives

Industry Preparation

To build a complex,

open-source,

application

...as part of a small,

agile team

To plan, test, document,

and present

Wrap Up

We're Open Source

https://github.com/rtoal/ktah/

The project notebook is

in the github wiki

https://github.com/rtoal/ktah/wiki

Let's Play

Just go to

http://my.cs.lmu.edu:3000

Register for free!

K'tah welcomes all!

Summary

We had already had lots of experience with

  • SVN, building large Java projects with Maven, Ajax, and HTML/CSS/JS

But still

  • tons of new things to learn

JavaScript jQuery HTML5

CSS3 node.js express.js

backbone.js jade MySQL

Illustrator QUnit Expresso

(Something for sound)

Future

Work...

We had a small team so there's lots more to be done

  • We can add more features
  • Wecan add more unit tests
  • We should have done internationalization

K'tah is in no way, shape or form associated with the Armenian bread of a similar sounding name.

ZOMBIES!

In Popular Culture...

  • Cranberries Z-AH-AHM-BIE
  • Zombie Movies
  • xkcd: Zombie (Feynman|Marie Curie)
  • Matthew 27:52-53

Because we want to create AND destroy our own zombies. And have something on github when we interview at really cool game companies.

  • To write a fun multiplayer game
  • To learn and use a full JavaScript stack
  • Well, also with HTML5 and CSS3 and SQL
  • But NO FLASH
  • To learn node, express, backbone, jade
  • To do some WebGL

Questions?

Discussions

  • Philosophy, Theology, AI, Computer Science
  • Version Control, Quadrotors, and Sproingles
  • IDEs
  • Planning
  • GitHub
  • Web APIs
  • Script Loading
  • xkcd
  • (See the meeting notes on the wiki)

Class

Time

  • Begin with a standup

What we did,

What we are blocked on,

What we will have done for next time

  • Brief lecture
  • Discussion
  • Collaboration
  • Videos
  • Guest speakers

Lectures

  • Networks, Internets, and history of Webapps
  • Protocols, sessions, authentication, REST
  • WebGL
  • git
  • jQuery
  • SQL Injection (Bobby Tables)
  • Requirements Engineering
  • UML
  • Events vs Threads (and node.js)
  • Agile methodologies, the Agile Manifesto

Use Case

Diagram

State Diagram

Concept Art

How to Play

https://github.com/rtoal/ktah/wiki/Sketches

Directory

Structure

Game Objective

Abilities

Cast of Characters

Survive (and score points)

Rounds