Multi player iPhone Games

7,172 views
7,128 views

Published on

Peter Bakhyryve - Multi player iPhone Games. 360|iDev San Jose '09

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
7,172
On SlideShare
0
From Embeds
0
Number of Embeds
26
Actions
Shares
0
Downloads
77
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Multi player iPhone Games

  1. 1. Making Multiplayer iPhone Games Theory and Practice Presented by ByteClub Tuesday, March 3, 2009
  2. 2. When it comes to iPhone games... Stop playing with yourself Start playing with others It’s more fun Tuesday, March 3, 2009
  3. 3. Parts What is “multiplayer”? Why should you care? Design considerations Implementation notes ByteClub Tuesday, March 3, 2009
  4. 4. Once upon a time, BobSpades463 was addicted to online poker Tuesday, March 3, 2009
  5. 5. What is “multiplayer”? Definition More than one participant Players interacting... with each other with game-related objects 1/3 Tuesday, March 3, 2009
  6. 6. What is “multiplayer”? How “multi” can it get? Same device “Grab on” or “Pass-to-play” Local Wi-Fi network Internet 2/3 Tuesday, March 3, 2009
  7. 7. 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/3 Tuesday, March 3, 2009
  8. 8. Why should you care? Now is a good time More connected world + More powerful devices + More entertainment consumed = Convergence! 1/4 Tuesday, March 3, 2009
  9. 9. Why should you care? It’s natural Being human = Being social Competition and collaboration instincts Facebook, Twitter leading the way 2/4 Tuesday, March 3, 2009
  10. 10. 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/4 Tuesday, March 3, 2009
  11. 11. 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/4 Tuesday, March 3, 2009
  12. 12. Design considerations Time commitment iPhone: ADD by design Portability is key Bite-sized gameplay on the go Wi-Fi = More time to play 1/6 Tuesday, March 3, 2009
  13. 13. Design considerations Opponent availability problem Increase user base Use network effect More platforms Keep ‘em busy 2/6 Tuesday, March 3, 2009
  14. 14. Design considerations Accessibility More features = More friction KISS Game interruptions Phone ringing? Don’t feel like losing? 3/6 Tuesday, March 3, 2009
  15. 15. Design considerations Face-to-face vs online Let them communicate Help them communicate Local Wi-Fi vs online Network speed Finding opponents 4/6 Tuesday, March 3, 2009
  16. 16. Design considerations Server vs. No server Connectivity Game state Crash handling Security vs. obscurity 5/6 Tuesday, March 3, 2009
  17. 17. Design considerations Levels of (asynch) interaction High scores Challenges “Ghost racing” Conspicuously absent... 6/6 Tuesday, March 3, 2009
  18. 18. Implementation notes Connectivity Persistent connections Non-persistent connections Latency = Lag = Bad EDGE and 3G = Latency 1/7 Tuesday, March 3, 2009
  19. 19. Implementation notes Marshaling data Text (XML, JSON etc) Easy to debug/Cross-platform Bulky Binary Reverse of the above 2/7 Tuesday, March 3, 2009
  20. 20. Implementation notes Security More honey = More bears Servers Communication Databases 3/7 Tuesday, March 3, 2009
  21. 21. 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/7 Tuesday, March 3, 2009
  22. 22. Implementation notes Operations Server + Clients = Family “No app left behind” Monitor this! Down for maintenance Notify users, pick non-peak time 5/7 Tuesday, March 3, 2009
  23. 23. Implementation notes Hosting In your basement Rack space Shared/dedicated servers Cloud 6/7 Tuesday, March 3, 2009
  24. 24. Implementation notes iPhone SDK networking C vs Objective-C Sockets and streams HTTP and FTP DNS (CFHost) Bonjour (CFNetServices) 7/7 Tuesday, March 3, 2009
  25. 25. ByteClub Scramboni 50,000 players It’s fun, but... Multiplayer Gaming Platform Same back-end Available to other developers Tuesday, March 3, 2009
  26. 26. Thank you! http://byteclub.com Tuesday, March 3, 2009

×