Title:
1Weve Got Game!Teaching and Researching
Computer Games at WPI
- Mark Claypool
- Assistant Professor
- Computer Science Department
- Worcester Polytechnic Institute
- Worcester, MA, USA
- http//www.cs.wpi.edu/claypool
2Outline
- Interactive Media and Game Development
- Aspects of Networking
- Latency and Warcraft III
3A Proposal for a New Major
Interactive Media and Game Development
- David Finkel, Computer Science
- Frederick Bianchi, Humanities and Arts
- Mark Claypool, Computer Science
- Michael Gennert, Computer Science
- Patrick Quinn, Humanities and Arts
4Opportunity
- Games are growing
- In 2000, U.S. economy grew by 7 while computer
game industry grew by 15 - (International Digital Software Association,
2001) - 60 of Americans age 6 play computer games
- (International Digital Software Association,
2001) - 221 million computer games sold in 2002
- 2 games for every household in America
- Exact labor statistics are difficult to obtain
- But indicators are that game companies are hiring
- Recent ad by Electronic Arts say triple digits
- Not many 4-year technical degree programs
5Related Programs
- Over 60 different academic programs
- (Game Developers Magazine, Game Career Guide
2003) - Many at art schools (no technical component)
- Many certificate or 2-year programs
- CMU offers MA in Entertainment Technology
- SMU offers 18-month certificate (Guildhall)
- USC announced minor in game development
- Few full undergraduate majors at 4-year
universities
6A Proposal for a New Major
- A Proposal
- Offered with many existing courses
- Some new, core courses
- Offered with many existing resources
- Some new dedicated faculty
- Some new gaming labs
- Benefits of
- Attracting new students
- Solidifying education of game developers
- Future extension to minor and graduate programs
7The Undergraduate Major
- Based on
- IGDA Curriculum Framework (Feb 2003)
- Examination of other programs
- Consultation with GDC, other academics,
administration, marketing - Core courses with fundamental ideas for game
development - Two tracks
- Technical
- Artistic
- Emphasize well-rounded B.S. with game development
strength
8Core Courses
- Critical Game Studies
- Non-technical study of use, history, and industry
of games. Develop vocabulary, analyze merits and
tools and why some games are successful. - Game Development Process
- Discuss roles of participants, artistic and
technical. Importance of testing and play
testing. Students will develop games or parts of
games. - Social Issues in Game Development
- Human need for play, philosophy of games, social
interactions in multiplayer games, role of
violence and ethical and legal issues for games
9Technical Track
- 3 core courses
- 5 math (Lin Alg, Prob and Stats)
- 3 science (Physics and Bio)
- 11 computer science (HCI, Soft Eng, Arch,
Networks, Graphics, Animation, AI) - 2 advanced technical
- 3 humanities (Writing, Studio Art)
- Sufficiency, IQP, MQP
10Artistic Track
- 3 core courses
- 2 science (Physics and Bio)
- 1 math
- 3 writing
- 3 studio art
- 2 computer art
- 2 drama or music
- Sufficiency, IQP, MQP
11Advanced Courses
- Two Technical
- Programming of games, 2d and 3d game engines,
sound and music implementations, networking,
latency compensation - Artistic
- Visual arts, music, sound and writing for game
play, aspects of interactivity
12Resources Required
- Directors for technical an artistic tracks
- Could be appointed from WPI faculty
- Three (new) dedicated faculty
- 2 in Humanities
- 1 in Computer Science
- Game development environment
- Software (develop some in-house)
- Equipment (general and special purpose)
- Space
13When Might This All Happen?
- Spring 2004
- Approval by administration and faculty
- If successful Summer 2004
- Prepare core courses
- Academic year 2004-2005
- Core course offerings (experimental)
- Marketing
- Development of game laboratory
- Summer 2005
- Advance course preparation
- Academic year 2005-2006
- All new courses in place
- New major in place
- New tenure-track faculty hired
- Academic year 2007
- Minor, grad program, additional faculty
14Outline
- Interactive Media and Game Development
- Aspects of Networking
- Network Resource Limitations
- Compensation Techniques
- Security and Cheating
- Latency and Warcraft III
15Network Resource Limitations
- Distributed simulations face three resource
limitations - Network bandwidth
- Network latency
- Host processing power (to handle network)
- Physical restrictions that the system cannot
overcome - Must be considered in the design of the
application - (More on each, next)
16Capacity
- Data sent/received per time
- LAN 10 Mbps to 10 Gbps
- Limited size and scope
- WANs tens of kbps from modems, to 1.5 Mbps (T1,
broadband), to 55 Mbps (T3) - Potentially enormous, Global in scope
- Number of users, size and frequency of messages
determines capacity - As does transmission technique
- Multicast, Unicast, Broadcast
17Latency
- Delay when message sent until received
- Variation (jitter) also matters
- Cannot be totally eliminated
- Speed of light propagation yields 25-30 ms across
Atlantic - With routing and queuing, usually 80 ms
- Application tolerances
- File download minutes
- Web page download up to 10 seconds
- Interactive audio 100s of ms
- MCG latencies tolerance depends upon game
- First-Person Shooters 100s of ms
- Real-Time Strategy up to 1 second
- Other games
18Computational Power
- Processing to send/receive packets
- Most devices powerful enough for raw sending
- Can saturate LAN
- Rather, application must process state in each
packet - Especially critical on resource-constrained
devices - i.e.- hand-held console, cell phone, PDA,
19Outline
- Interactive Media and Game Development
- Aspects of Networking
- Network Resource Limitations
- Compensation Techniques
- Security and Cheating
- Latency and Warcraft III
20Data and Control Architectures
- Want consistency
- Same state on each node
- Needs tightly coupled, low latency, small nodes
- Want responsiveness
- More computation locally to reduce network
- Loosely coupled
- In general, cannot do both. Tradeoffs.
21Networked Multiplayer Game Architectures
- Centralized
- Use only two-way relay (no short-circuit)
- One node holds data so view is consistent at all
times - Lacks responsiveness
- Distributed and Replicated
- Allow short-circuit relay
- Replicated has copies, used when predictable (ie-
non-player characters) - Distributed has local node only, used when
unpredictable (ie- players) - May be inconsistent
22Interest Management Auras
- Nodes express area of interest to them
- Do not get messages for outside areas
- - Only circle sent even if
- world is larger.
- Can implement with
- square to make simpler
23Interest Management- Focus and Nimbus
- nimbus must intersect with focus to receive
- Example Hider has smaller nimbus, so Seeker
- cannot see, while Hider can see Seeker since
- Seekers nimbus intersects Hiders focus
24Dead Reckoning
- Based on ocean navigation techniques
- Predict position based on last known position
plus direction - Can also only send updates when deviates past a
threshold
- When prediction differs, get warping or
rubber-banding effect
25Security and Cheating
- Unique to games
- Other multi-person applications typically dont
have same type of cheating problems - Cheaters want
- Vandalism create havoc (relatively few)
- Dominance gain advantage (more)
26Packet and Traffic Tampering
- Reflex augmentation - enhance cheaters reactions
- Example aiming proxy monitors opponents movement
packets, when cheater fires, improve aim - Packet interception prevent some packets from
reaching cheater - Example suppress damage packets, so cheater is
invulnerable - Packet replay repeat event over for added
advantage - Example multiple bullets or rockets if otherwise
limited
27Preventing Packet Tampering
- Cheaters figure out by changing bytes and
observing effects - Prevent by MD5 checksums (fast, public)
- Still cheaters can
- Reverse engineer checksums
- Attack with packet replay
- So
- Encrypt packets
- Add sequence numbers (or encoded sequence
numbers) to prevent replay
28Information Exposure
- Allows cheater to gain access to replicated,
hidden game data (i.e. status of other players) - Passive, since does not alter traffic
- Example defeat fog of war in RTS, see through
walls in FPS - Cannot be defeated by network alone
- Instead
- Sensitive data should be encoded
- Kept in hard-to-detect memory location
- Centralized server may detect cheating (example
attack enemy could not have seen) - Harder in replicated system, but can still share
29Outline
- Interactive Media and Game Development
- Aspects of Networking
- Latency and Warcraft III
30The Effects of Latencyon User Performance in
Warcraft III
- Nathan Sheldon, Eric Gerard, Seth Borg, Mark
Claypool, Emmanuel Agu - ACM NetGames Workshop
- Redwood City, CA, USA
- May 2003
- http//www.cs.wpi.edu/claypool/papers/war3/
31Why Study Warcraft III?
- Top selling computer game genres
- Strategy (27.4)
- Childrens (15.9)
- Shooter (11.5)
- Family Entertainment (9.6)
- Warcraft III set sales record
- Fastest to sell 1 million copies
Top Ten Industry Facts, Interactive Digital
Software Association, May 2003.
Warcraft III - Shatters Sales Records
Worldwide..., Blizzard Press Release, October
2002
32Network Games and Latency
- Latency degrades performance of interactive
applications - Web-browsing seconds
- Internet phone 100s of milliseconds
- First Person Shooters (FPS) 100s of
milliseconds - Real-Time Strategy (RTS)?
- Knowing effects of latency useful for
- Building better network games
- Building better networks to support games (QoS)
- ? Effects of Latency on Warcraft III (RTS)
33Outline
- Introduction ?
- Experiments ?
- Analysis
- Conclusions
34Warcraft III Overview
- RTS User Interaction
- Components
- Exploration
- Building
- Combat
35Exploration Map
- Performance?
- Time
- (to reach end)
36Building Map
- Performance?
- Time
- (to build tech-
- nology tree)
37Combat Map
- Performance?
- Games Won
- Unit Scores
38Controlling Latency
- Warcraft III uses client-server
- Set computer B as server (also a client)
- Set computer C or D as client
- NIST Net on computer A
- Induce latency 0 ms to 3500 ms
39Outline
- Introduction ?
- Experiments ?
- Analysis
- Application Level ?
- Network Level
- User Level
- Conclusions
40Building and Latency
41Exploration and Latency
42Combat and Latency (1)
43Combat and Latency (2)
44Outline
- Introduction ?
- Experiments ?
- Analysis
- Application Level ?
- Network Level ?
- User Level
- Conclusions
45Bandwidth
3.8 Kbps
4.0 Kbps
6.8 Kbps
46Inter-Packet Times
47Payload Distributions
48Payload Distributions and Latency
49Commands and Latency
- Pilot studies suggest 6 bytes of overhead per
command - Remove 6 bytes from each packet payload
- Add up remaining command payloads
50Outline
- Introduction ?
- Experiments ?
- Analysis
- Application Level ?
- Network Level ?
- User Level ?
- Conclusions
51User-Level Analysis
- 0-500 ms latency, users could easily adjust
- 800 ms, game appeared erratic
- Degradation in gaming experience
- 500-800 ms degradation depended upon
- User
- More skilled were more sensitive
- Strategy
- Micro managers were more sensitive
- Combat managers were more sensitive
52Conclusions
- Typical Internet latencies do not significantly
affect user performance in Warcraft III - Some effect on exploration
- No statistical effect on building or combat
- RTS game play emphasizes strategy (which takes
10s of seconds or minutes), not real-time - RTS games less sensitive to latency than are FPS
- RTS in QoS class similar to that of Web browsing
- At the network level
- Small packets with low bandwidth
- Command aggregation at higher latencies
53Ongoing Work
- Effects of latency on user strategies
- Other RTS games (done!)
- Age of Mythology
- Command and Conquer Generals
- Effects of latency on other genres
- First Person Shooter (UT 2003)
- Multiplayer Role Playing Game
- Effects of loss
54Weve Got Game!Teaching and Researching
Computer Games at WPI
- Mark Claypool
- Assistant Professor
- Computer Science Department
- Worcester Polytechnic Institute
- Worcester, MA, USA
- http//www.cs.wpi.edu/claypool