Human-level AI`s Killer Application: Interactive Computer Games

Download Report

Transcript Human-level AI`s Killer Application: Interactive Computer Games

CS 3540
at
UVU
Dr. Brian Durney
Computing and Networking Sciences
Why Game Programming?
It’s fun!
(Most of the time)
It’s also a whole lot of work:
• game design
• software design and implementation
• art, music, sound, writing
• testing
Nine Billion Dollars
Computer games are a big industry.
"More money is spent on games than on
movies."
...but...
Research
Yes, real research:
Human-level AI’s Killer Application:
Interactive Computer Games
John E. Laird and Michael van Lent
University of Michigan
No, they’re not talking about chess.
My favorite things:
•
•
•
•
•
•
Graphics Programming
Artificial Intelligence
Network Programming
Interesting Math Problems
Game Design
Writing and Art
What we will do this term:
• Graphics
• Game Design
• Game AI
Graphics
Unity
unity3d.com
Why Unity?
• Cross-platform Windows and Mac OS X
• Easy to use (for a game engine) but
powerful
• It’s free…or at least there is a free version
• Web browser plug-in
Assignment 1: Unity Box World Game
•
•
•
•
•
•
•
User input
Image texture
3D model
Moving objects
Collision detection
Timer
A way to win
Game
Design
What makes a good game?
Game Review and Presentation
Look at a commercial game in terms of the
game design principles we discuss in
class.
Interactive Fiction
• Text games
• Venerable ancestors of ...
• Game balance, story line, nonlinear plots,
characters, combat, etc.
• Story generation
Game AI
Write a program to control a bot.
We will also look at this game in terms of
graphics and game design.
http://universe.tc.uvu.edu/uvbots/index.html
UV Bots
Display
Client
Server
Bot
Client
Bot
Client
Bot
Client
http://universe.tc.uvu.edu/uvbots/index.html
Programming Problem
How can the server efficiently tell
when one bot hits another?
Programming Problem
How can the display keep the beam
from going through obstacles?
3D Display using Unity
AIIDE
Artificial Intelligence in Interactive Digital
Entertainment
Story generator and director
• Automated dungeon master
– Creates map
– Creates plot/storyline
– Runs adventure
Easy, right?
Educational Games
What makes a
game educational?
What makes a
game fun?
THIS IS NOT A GAME
• AKA viral marketing?
• USC Film School:
http://www.argn.com/2011/12/reality_tr
ansforming_usc_film_students_freshman_
year_into_an_addictive_game/
• And even, sort of, the UVU library:
Library Craft
Fast Foot Challenge
• And light bikes, and …
Quest-o-Matic
Richard Bartle
http://www.aigamesnetwork.org/main:events:ainpc
www.spacecamputah.org
CMSEC Simulators
CMSEC Simulators
• Human flight director
• Single ship
• Cocoa (Mac OS X)
iWorlds simulator project
• Multiple ships
• Cross-platform with HTTP communication
– Clients can be written using JavaScript, Flex,
Unity, Java, etc.
– Web-based games are possible
• Educational games
Disclosure: I own a piece (OK, a small (very small, really) of iWorlds.
I think that programming the iWorlds simulator and games makes a great
project, but there is no requirement to do so.
Unity 3D display
OMEGA
Organization for Making and Exploring Game Applications
Help build a computer game experience
like no other: a game that puts you and
your friends on a starship bridge with a
50-inch main view screen, 6 computer
stations, and props, fighting an enemy
crew that's just waiting to blow you away
in real-time space combat.
http://universe.tc.uvu.edu/csclub/
OMEGA simulator project
•
•
•
•
Optional AI flight director
Real-time
3D graphics
Online—MMO (or at least MO) RPG or
RTS some day
• Working with iWorlds
Project
• I encourage groups of 2 to 3 students for
the project.
• Specialize in graphics, game AI, game
design.
• Complete
– Not necessarily a complete game, but should be a
complete game, tool, or library.
• Programming required
– Not just a level design
– I must be able to read your source code and play your
game.