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
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!
- 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
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