multi player iphone games
DESCRIPTION
Peter Bakhyryve - Multi player iPhone Games. 360|iDev San Jose '09TRANSCRIPT
![Page 1: Multi player iPhone Games](https://reader034.vdocument.in/reader034/viewer/2022052505/555a0a52d8b42a76498b45b8/html5/thumbnails/1.jpg)
Making MultiplayeriPhone Games
Theory and Practice
Presented by ByteClub
Tuesday, March 3, 2009
![Page 2: Multi player iPhone Games](https://reader034.vdocument.in/reader034/viewer/2022052505/555a0a52d8b42a76498b45b8/html5/thumbnails/2.jpg)
Stop playing with yourself
Start playing with others
It’s more fun
When it comes to iPhone games...
Tuesday, March 3, 2009
![Page 3: Multi player iPhone Games](https://reader034.vdocument.in/reader034/viewer/2022052505/555a0a52d8b42a76498b45b8/html5/thumbnails/3.jpg)
Parts
What is “multiplayer”?
Why should you care?
Design considerations
Implementation notes
ByteClub
Tuesday, March 3, 2009
![Page 4: Multi player iPhone Games](https://reader034.vdocument.in/reader034/viewer/2022052505/555a0a52d8b42a76498b45b8/html5/thumbnails/4.jpg)
Once upon a time,BobSpades463 was
addicted to online poker
Tuesday, March 3, 2009
![Page 5: Multi player iPhone Games](https://reader034.vdocument.in/reader034/viewer/2022052505/555a0a52d8b42a76498b45b8/html5/thumbnails/5.jpg)
What is “multiplayer”?
Definition
More than one participant
Players interacting...
with each other
with game-related objects
1 / 3Tuesday, March 3, 2009
![Page 6: Multi player iPhone Games](https://reader034.vdocument.in/reader034/viewer/2022052505/555a0a52d8b42a76498b45b8/html5/thumbnails/6.jpg)
What is “multiplayer”?
How “multi” can it get?
Same device
“Grab on” or “Pass-to-play”
Local Wi-Fi network
Internet
2 / 3Tuesday, March 3, 2009
![Page 7: Multi player iPhone Games](https://reader034.vdocument.in/reader034/viewer/2022052505/555a0a52d8b42a76498b45b8/html5/thumbnails/7.jpg)
What is “multiplayer”?
Synchronous
Players in game at the same time
More direct interactions
Asynchronous (e.g. “ghost racing”)
Time-shifted
Indirect interactions
Hybrid (e.g. MMOs)
3 / 3Tuesday, March 3, 2009
![Page 8: Multi player iPhone Games](https://reader034.vdocument.in/reader034/viewer/2022052505/555a0a52d8b42a76498b45b8/html5/thumbnails/8.jpg)
Why should you care?
Now is a good time
More connected world +
More powerful devices +
More entertainment consumed =
Convergence!
1 / 4Tuesday, March 3, 2009
![Page 9: Multi player iPhone Games](https://reader034.vdocument.in/reader034/viewer/2022052505/555a0a52d8b42a76498b45b8/html5/thumbnails/9.jpg)
Why should you care?
It’s natural
Being human = Being social
Competition and collaboration instincts
Facebook, Twitter leading the way
2 / 4Tuesday, March 3, 2009
![Page 10: Multi player iPhone Games](https://reader034.vdocument.in/reader034/viewer/2022052505/555a0a52d8b42a76498b45b8/html5/thumbnails/10.jpg)
Why should you care?
Must-have feature, sometimes
Tic-Tac-Toe against a computer?!
But, chess...
It’s about “fun”
Single-player with a touch of “multi”
3 / 4Tuesday, March 3, 2009
![Page 11: Multi player iPhone Games](https://reader034.vdocument.in/reader034/viewer/2022052505/555a0a52d8b42a76498b45b8/html5/thumbnails/11.jpg)
Why should you care?
More value to players
Replay-ability
More engaging
More value to developer
Stand out from the crowd
Viral qualities/publicity
4 / 4Tuesday, March 3, 2009
![Page 12: Multi player iPhone Games](https://reader034.vdocument.in/reader034/viewer/2022052505/555a0a52d8b42a76498b45b8/html5/thumbnails/12.jpg)
Design considerations
Time commitment
iPhone: ADD by design
Portability is key
Bite-sized gameplay on the go
Wi-Fi = More time to play
1 / 6Tuesday, March 3, 2009
![Page 13: Multi player iPhone Games](https://reader034.vdocument.in/reader034/viewer/2022052505/555a0a52d8b42a76498b45b8/html5/thumbnails/13.jpg)
Design considerations
Opponent availability problem
Increase user base
Use network effect
More platforms
Keep ‘em busy
2 / 6Tuesday, March 3, 2009
![Page 14: Multi player iPhone Games](https://reader034.vdocument.in/reader034/viewer/2022052505/555a0a52d8b42a76498b45b8/html5/thumbnails/14.jpg)
Design considerations
Accessibility
More features = More friction
KISS
Game interruptions
Phone ringing?
Don’t feel like losing?
3 / 6Tuesday, March 3, 2009
![Page 15: Multi player iPhone Games](https://reader034.vdocument.in/reader034/viewer/2022052505/555a0a52d8b42a76498b45b8/html5/thumbnails/15.jpg)
Design considerations
Face-to-face vs online
Let them communicate
Help them communicate
Local Wi-Fi vs online
Network speed
Finding opponents
4 / 6Tuesday, March 3, 2009
![Page 16: Multi player iPhone Games](https://reader034.vdocument.in/reader034/viewer/2022052505/555a0a52d8b42a76498b45b8/html5/thumbnails/16.jpg)
Design considerations
Server vs. No server
Connectivity
Game state
Crash handling
Security vs. obscurity
5 / 6Tuesday, March 3, 2009
![Page 17: Multi player iPhone Games](https://reader034.vdocument.in/reader034/viewer/2022052505/555a0a52d8b42a76498b45b8/html5/thumbnails/17.jpg)
Design considerations
Levels of (asynch) interaction
High scores
Challenges
“Ghost racing”
Conspicuously absent...
6 / 6Tuesday, March 3, 2009
![Page 18: Multi player iPhone Games](https://reader034.vdocument.in/reader034/viewer/2022052505/555a0a52d8b42a76498b45b8/html5/thumbnails/18.jpg)
Implementation notes
Connectivity
Persistent connections
Non-persistent connections
Latency = Lag = Bad
EDGE and 3G = Latency
1 / 7Tuesday, March 3, 2009
![Page 19: Multi player iPhone Games](https://reader034.vdocument.in/reader034/viewer/2022052505/555a0a52d8b42a76498b45b8/html5/thumbnails/19.jpg)
Implementation notes
Marshaling data
Text (XML, JSON etc)
Easy to debug/Cross-platform
Bulky
Binary
Reverse of the above
2 / 7Tuesday, March 3, 2009
![Page 20: Multi player iPhone Games](https://reader034.vdocument.in/reader034/viewer/2022052505/555a0a52d8b42a76498b45b8/html5/thumbnails/20.jpg)
Implementation notes
Security
More honey = More bears
Servers
Communication
Databases
3 / 7Tuesday, March 3, 2009
![Page 21: Multi player iPhone Games](https://reader034.vdocument.in/reader034/viewer/2022052505/555a0a52d8b42a76498b45b8/html5/thumbnails/21.jpg)
Implementation notes
Scalability and Stability
Congrats, you app is popular!
Oops, here comes the crowd!
Redundancy = Good = Good
Extensible data storage
Parallel message processing
4 / 7Tuesday, March 3, 2009
![Page 22: Multi player iPhone Games](https://reader034.vdocument.in/reader034/viewer/2022052505/555a0a52d8b42a76498b45b8/html5/thumbnails/22.jpg)
Implementation notes
Operations
Server + Clients = Family
“No app left behind”
Monitor this!
Down for maintenance
Notify users, pick non-peak time
5 / 7Tuesday, March 3, 2009
![Page 23: Multi player iPhone Games](https://reader034.vdocument.in/reader034/viewer/2022052505/555a0a52d8b42a76498b45b8/html5/thumbnails/23.jpg)
Implementation notes
Hosting
In your basement
Rack space
Shared/dedicated servers
Cloud
6 / 7Tuesday, March 3, 2009
![Page 24: Multi player iPhone Games](https://reader034.vdocument.in/reader034/viewer/2022052505/555a0a52d8b42a76498b45b8/html5/thumbnails/24.jpg)
Implementation notes
iPhone SDK networking
C vs Objective-C
Sockets and streams
HTTP and FTP
DNS (CFHost)
Bonjour (CFNetServices)
7 / 7Tuesday, March 3, 2009
![Page 25: Multi player iPhone Games](https://reader034.vdocument.in/reader034/viewer/2022052505/555a0a52d8b42a76498b45b8/html5/thumbnails/25.jpg)
ByteClub
Scramboni
50,000 players
It’s fun, but...
Multiplayer Gaming Platform
Same back-end
Available to other developers
Tuesday, March 3, 2009