SlideShare a Scribd company logo
New High Score!
Leaderboards in the Cloud
Sarah Sexton | Technical Evangelist
Overview
• Unity Plugins
– Bitrave
– Photon
• Networking Basics
• Why the Cloud?
• Azure Mobile Services
• REST API Basics
• Azure for Game
Development
Unity Plugins
• Bitrave
─Requires:
─$25.00
Unity Plugins
• Photon
─ Multiplayer
─ Leaderboard
Azure for Game Development
• Game State Management
• Leaderboards
• Monetization
• Economics
• Multiplayer
• Scalability
• Cheating Prevention
1. Talking, playing chess, etc.
2. Translate foreign languages
3. “Goodbye”
4. “This message is for…” ID #
5. The phone book
6. “Calling street address…” #
7. Tin cans and wires
Separation of Concerns
Network Layers
1. Application – access to networking services (IPC, mail,
directory services)
2. Presentation – data formatting, encryption, compression
3. Session – maintaining connection between computers
4. Transport – TCP/UDP
5. Network – addressing and routing
6. Data Link – network topology
7. Physical – actual hardware (wire, fiber, radio)
Network Diagram
Peer-to-Peer Client-Server
Multiplayer Gaming Setups
Azure Mobile Services
Cloud services take care of everything behind the scenes.
It's essentially running in a small application-isolated box.
You just update your code.
REST API Basics
Representational State Transfer (ReST, or RESTful programming)
HTTP rules: REST rules:
• POST (envelope)
• GET (postcard)
• PUT (envelope)
• DELETE (postcard)
• CREATE
• READ
• EDIT
• DELETE
Name your Mobile Service
Select your database
Select database
Enter database admin credentials
Select the Data tab
Select Create New Table
Select the Table,
Select “Columns”
Add Columns
Select “Manage Keys”
New High Score! Leaderboards in the Cloud
New High Score! Leaderboards in the Cloud
New High Score! Leaderboards in the Cloud
Why the cloud?
• Rapidly set up environments
• Scale to meet peak demands
• Increase daily activities, efficiency and reduced cost.
Azure Resources
• Mobile Apps
– Provide data proxy services to game including offline data
• Event / Notification Hubs
– Data collection and push notification
• Media Services
– Streaming cut scenes or demo videos
• Machine Learning
– Evaluate massive amounts of data to determine hidden patterns and
predict outcomes
Additional Resources: Videos
Unity3D Leaderboard in the cloud using Bitrave Azure plugin
www.youtube.com
Microsoft Azure Back End for Gaming
mva.microsoft.com
Play Together! Leaderboards with Azure and Multiplayer with Wi-Fi Direct
channel9.msdn.com/events/Build/2013/3-051
How To Create A Global Leaderboard For Unity 3D Using Azure Mobile Services
channel9.msdn.com/events/MVP-Virtual-Conference
Additional Resources: Written articles
Using Azure Mobile Services to Create a Game Leaderboard in Minutes
http://thebitchwhocodes.com
“Can anyone please explain TCP/IP and its layers to me like I'm five?”
“ELI5: Representational State Transfer (REST, or RESTful programming)”
www.reddit.com/r/explainlikeimfive/
Peer-to-Peer Support for Massively Multiplayer Games
www.ieee-infocom.org/2004/Papers/03_2.PDF
Recommended Resources & Next Steps
Download free Visual Studio Community edition
www.visualstudio.com
Benefits for young developers: BizSpark
http://aka.ms/SarahBizSpark
Host ten websites for free
www.azure.com
Š2014 Microsoft Corporation. All rights reserved. Microsoft, Windows, Office, Azure, System Center, Dynamics and other product names are or may be registered trademarks and/or trademarks in the
U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft
must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after
the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

More Related Content

PPTX
Building Your First Node.js App and Publishing to Azure
Sarah Sexton
 
PPTX
Spring ing apps on amazon web services
Vinay Shivaswamy
 
PPTX
Getting Started With Microsoft Azure
Christos Matskas
 
PDF
Buzzwords: Microservices, containers and serverless - real life applications ...
drnugent
 
PPTX
Microservices and the future on Infrastructure
Pini Reznik
 
PPTX
Get set.. Introduction to Windows Azure Development
Thomas Robbins
 
PPTX
Running Azure PaaS Anywhere using Kubernetes
Jorge Arteiro
 
PDF
Azure Sphere
Mirco Vanini
 
Building Your First Node.js App and Publishing to Azure
Sarah Sexton
 
Spring ing apps on amazon web services
Vinay Shivaswamy
 
Getting Started With Microsoft Azure
Christos Matskas
 
Buzzwords: Microservices, containers and serverless - real life applications ...
drnugent
 
Microservices and the future on Infrastructure
Pini Reznik
 
Get set.. Introduction to Windows Azure Development
Thomas Robbins
 
Running Azure PaaS Anywhere using Kubernetes
Jorge Arteiro
 
Azure Sphere
Mirco Vanini
 

What's hot (20)

PDF
Terrascan - Cloud Native Security Tool
sangam biradar
 
PPTX
Azure Functions 101
Martin Abbott
 
PPTX
About Microservices, Containers and their Underestimated Impact on Network Pe...
Nane Kratzke
 
PDF
Communication Operations: Lift off with Docker! - Jesse White
Docker, Inc.
 
PDF
Sustaining Your Career
Scott Lowe
 
PDF
Monoliths, Myths, and Microservices - CfgMgmtCamp
Michael Ducy
 
PPTX
Reactive Architecture
Assaf Gannon
 
PPTX
Microsoft Build 2018 news for .NET developers
Andriy Deren'
 
PDF
Top ways to deliver your Spring code to the cloud
VMware Tanzu
 
PDF
Closing the Cloud Skills Gap
Scott Lowe
 
PDF
Sergii Bielskiy "Dev spaces development in AKS"
Fwdays
 
PPTX
Service Fabric Overview (Yves Goeleven)
Visug
 
PPTX
Azure Service Fabric: The road ahead for microservices
Microsoft Tech Community
 
PPTX
Introducing to Azure Functions
Jorge Jeffrey Vargas Ipince
 
PPTX
How many iot technologies do you need to turn on a lightbulb (Kurt Claeys)
Visug
 
PPTX
Tokyo Azure Meetup #29 AKS
Kenichiro Nakamura
 
PDF
Everything you always wanted to know about API Management (but were afraid to...
Massimo Bonanni
 
PPTX
Azure Functions - Introduction
Venkatesh Narayanan
 
PPTX
.NET Conf 2019 高雄場 - .NET Core 3.0
Jeff Chu
 
PDF
Сергей Лёвкин «Технологии Microsoft для актуальных трендов»
SpbDotNet Community
 
Terrascan - Cloud Native Security Tool
sangam biradar
 
Azure Functions 101
Martin Abbott
 
About Microservices, Containers and their Underestimated Impact on Network Pe...
Nane Kratzke
 
Communication Operations: Lift off with Docker! - Jesse White
Docker, Inc.
 
Sustaining Your Career
Scott Lowe
 
Monoliths, Myths, and Microservices - CfgMgmtCamp
Michael Ducy
 
Reactive Architecture
Assaf Gannon
 
Microsoft Build 2018 news for .NET developers
Andriy Deren'
 
Top ways to deliver your Spring code to the cloud
VMware Tanzu
 
Closing the Cloud Skills Gap
Scott Lowe
 
Sergii Bielskiy "Dev spaces development in AKS"
Fwdays
 
Service Fabric Overview (Yves Goeleven)
Visug
 
Azure Service Fabric: The road ahead for microservices
Microsoft Tech Community
 
Introducing to Azure Functions
Jorge Jeffrey Vargas Ipince
 
How many iot technologies do you need to turn on a lightbulb (Kurt Claeys)
Visug
 
Tokyo Azure Meetup #29 AKS
Kenichiro Nakamura
 
Everything you always wanted to know about API Management (but were afraid to...
Massimo Bonanni
 
Azure Functions - Introduction
Venkatesh Narayanan
 
.NET Conf 2019 高雄場 - .NET Core 3.0
Jeff Chu
 
Сергей Лёвкин «Технологии Microsoft для актуальных трендов»
SpbDotNet Community
 
Ad

Viewers also liked (15)

PDF
BBC Good Food Mediapack 2015
Elaine McCarrick
 
DOC
amit
amit kumar
 
PPTX
Album covers
millerjess
 
PDF
unidades de corel
martinezcobosm
 
PDF
Ireland
Emma McAlister
 
PDF
Social Media 101 - Notes from Our Workshop
Sam Popp
 
PPTX
Professional
Out of Hour Cleaning Services
 
PPTX
Biografi Elvira Devinamira
anggiagustiani
 
PPTX
Seconday day
dorcasfaida
 
PPTX
My last vacation
AlvaroSierra25
 
ODP
Muusikud Järvamaalt
laurateder
 
PPTX
Evaluation Q2 dorcas
dorcasfaida
 
PDF
Figuranten
Trudy Winkels
 
PDF
Gold10
Scientist Ejigu
 
PPT
English AQWF soundtrack
Mehar Nsr
 
BBC Good Food Mediapack 2015
Elaine McCarrick
 
amit
amit kumar
 
Album covers
millerjess
 
unidades de corel
martinezcobosm
 
Ireland
Emma McAlister
 
Social Media 101 - Notes from Our Workshop
Sam Popp
 
Biografi Elvira Devinamira
anggiagustiani
 
Seconday day
dorcasfaida
 
My last vacation
AlvaroSierra25
 
Muusikud Järvamaalt
laurateder
 
Evaluation Q2 dorcas
dorcasfaida
 
Figuranten
Trudy Winkels
 
Gold10
Scientist Ejigu
 
English AQWF soundtrack
Mehar Nsr
 
Ad

Similar to New High Score! Leaderboards in the Cloud (20)

PPTX
Breaking through silos - From multi to true crossplatform using the cloud
Christof Wegmann
 
PDF
Martin Simecek, Microsoft
White Nights Conference
 
PPTX
Photon Session / Unite12 Conference
Christof Wegmann
 
PDF
Learning from the Latest Generation of Online Games?
Andy Fawkes
 
PDF
Cloud Gaming in the era of Distributed Computing & Big Data
Gauranga Kumar Baishya
 
PPTX
Cloud for Game Developers – Myth or Real Scenarios?
DevGAMM Conference
 
PPTX
Developing Multiplayer Games in Unity3D
Adrian Popovici
 
PPTX
Using prime[31] to connect your unity game to azure mobile services
David Voyles
 
PPTX
Looking for blue ocean look to the cloud rhys dekle
Mary Chan
 
PPTX
The Future of Connected Games: Unity and Google Cloud
Unity Technologies
 
PPTX
CLOUD GAMING
maurya parkara
 
PPTX
CLOUD GAMING.pptx
maurya parkara
 
PDF
게임을 위한 아마존웹서비스(AWS) (김일호 솔루션즈 아키텍트, AWS) :: Gaming on AWS 2018
Amazon Web Services Korea
 
PPTX
Cross-Platform Apps/Games with Azure
Shahed Chowdhuri
 
PPTX
Emerging technology presentation
Simanthakur43
 
PPTX
Write retrogames in the web and add something more with Azure
Marco Parenzan
 
PDF
Building Scalable Cloud Tech for Mobile / Social Games
Paul Winterhalder
 
PDF
Romuald Zdebskiy (Microsoft) & Andrey Ivashentsev (Game Insight)
White Nights Conference
 
PDF
Game Programming - Cloud Development
Nick Pruehs
 
PPTX
Unity and Azure Mobile Services using Prime31 plugin
David Douglas
 
Breaking through silos - From multi to true crossplatform using the cloud
Christof Wegmann
 
Martin Simecek, Microsoft
White Nights Conference
 
Photon Session / Unite12 Conference
Christof Wegmann
 
Learning from the Latest Generation of Online Games?
Andy Fawkes
 
Cloud Gaming in the era of Distributed Computing & Big Data
Gauranga Kumar Baishya
 
Cloud for Game Developers – Myth or Real Scenarios?
DevGAMM Conference
 
Developing Multiplayer Games in Unity3D
Adrian Popovici
 
Using prime[31] to connect your unity game to azure mobile services
David Voyles
 
Looking for blue ocean look to the cloud rhys dekle
Mary Chan
 
The Future of Connected Games: Unity and Google Cloud
Unity Technologies
 
CLOUD GAMING
maurya parkara
 
CLOUD GAMING.pptx
maurya parkara
 
게임을 위한 아마존웹서비스(AWS) (김일호 솔루션즈 아키텍트, AWS) :: Gaming on AWS 2018
Amazon Web Services Korea
 
Cross-Platform Apps/Games with Azure
Shahed Chowdhuri
 
Emerging technology presentation
Simanthakur43
 
Write retrogames in the web and add something more with Azure
Marco Parenzan
 
Building Scalable Cloud Tech for Mobile / Social Games
Paul Winterhalder
 
Romuald Zdebskiy (Microsoft) & Andrey Ivashentsev (Game Insight)
White Nights Conference
 
Game Programming - Cloud Development
Nick Pruehs
 
Unity and Azure Mobile Services using Prime31 plugin
David Douglas
 

More from Sarah Sexton (14)

PPTX
HoloLens Unity Build Pipelines on Azure DevOps
Sarah Sexton
 
PPTX
A Whirlwind Tour of Recurrent Neural Networks
Sarah Sexton
 
PPTX
Recurrent Neural Networks (RNN)
Sarah Sexton
 
PPTX
Developing for Consoles as an Indie in 2018
Sarah Sexton
 
PPTX
Implementing LUIS in Node.js
Sarah Sexton
 
PDF
Mixed Reality
Sarah Sexton
 
PPTX
Code camp HoloLens Build and Deploy
Sarah Sexton
 
PPTX
How to Build and Deploy to HoloLens
Sarah Sexton
 
PPTX
Breaking into Bots
Sarah Sexton
 
PPTX
Getting Started with Microsoft Bot Framework
Sarah Sexton
 
PPTX
Word Play in the Digital Age: Building Text Bots with Tracery
Sarah Sexton
 
PPTX
Video game development for everybody
Sarah Sexton
 
PPTX
Introduction to Unity3D and Building your First Game
Sarah Sexton
 
PPTX
Developing for Consoles as an Indie in 2015
Sarah Sexton
 
HoloLens Unity Build Pipelines on Azure DevOps
Sarah Sexton
 
A Whirlwind Tour of Recurrent Neural Networks
Sarah Sexton
 
Recurrent Neural Networks (RNN)
Sarah Sexton
 
Developing for Consoles as an Indie in 2018
Sarah Sexton
 
Implementing LUIS in Node.js
Sarah Sexton
 
Mixed Reality
Sarah Sexton
 
Code camp HoloLens Build and Deploy
Sarah Sexton
 
How to Build and Deploy to HoloLens
Sarah Sexton
 
Breaking into Bots
Sarah Sexton
 
Getting Started with Microsoft Bot Framework
Sarah Sexton
 
Word Play in the Digital Age: Building Text Bots with Tracery
Sarah Sexton
 
Video game development for everybody
Sarah Sexton
 
Introduction to Unity3D and Building your First Game
Sarah Sexton
 
Developing for Consoles as an Indie in 2015
Sarah Sexton
 

Recently uploaded (20)

PDF
BLW VOCATIONAL TRAINING SUMMER INTERNSHIP REPORT
codernjn73
 
PPTX
OA presentation.pptx OA presentation.pptx
pateldhruv002338
 
PDF
Presentation about Hardware and Software in Computer
snehamodhawadiya
 
PDF
Trying to figure out MCP by actually building an app from scratch with open s...
Julien SIMON
 
PPTX
AI and Robotics for Human Well-being.pptx
JAYMIN SUTHAR
 
PDF
REPORT: Heating appliances market in Poland 2024
SPIUG
 
PPTX
AI in Daily Life: How Artificial Intelligence Helps Us Every Day
vanshrpatil7
 
PDF
Brief History of Internet - Early Days of Internet
sutharharshit158
 
PDF
A Strategic Analysis of the MVNO Wave in Emerging Markets.pdf
IPLOOK Networks
 
PDF
OFFOFFBOX™ – A New Era for African Film | Startup Presentation
ambaicciwalkerbrian
 
PDF
Security features in Dell, HP, and Lenovo PC systems: A research-based compar...
Principled Technologies
 
PDF
SparkLabs Primer on Artificial Intelligence 2025
SparkLabs Group
 
PPTX
New ThousandEyes Product Innovations: Cisco Live June 2025
ThousandEyes
 
PDF
Advances in Ultra High Voltage (UHV) Transmission and Distribution Systems.pdf
Nabajyoti Banik
 
PPTX
IT Runs Better with ThousandEyes AI-driven Assurance
ThousandEyes
 
PDF
Cloud-Migration-Best-Practices-A-Practical-Guide-to-AWS-Azure-and-Google-Clou...
Artjoker Software Development Company
 
PDF
How-Cloud-Computing-Impacts-Businesses-in-2025-and-Beyond.pdf
Artjoker Software Development Company
 
PDF
Doc9.....................................
SofiaCollazos
 
PDF
Software Development Methodologies in 2025
KodekX
 
PDF
Get More from Fiori Automation - What’s New, What Works, and What’s Next.pdf
Precisely
 
BLW VOCATIONAL TRAINING SUMMER INTERNSHIP REPORT
codernjn73
 
OA presentation.pptx OA presentation.pptx
pateldhruv002338
 
Presentation about Hardware and Software in Computer
snehamodhawadiya
 
Trying to figure out MCP by actually building an app from scratch with open s...
Julien SIMON
 
AI and Robotics for Human Well-being.pptx
JAYMIN SUTHAR
 
REPORT: Heating appliances market in Poland 2024
SPIUG
 
AI in Daily Life: How Artificial Intelligence Helps Us Every Day
vanshrpatil7
 
Brief History of Internet - Early Days of Internet
sutharharshit158
 
A Strategic Analysis of the MVNO Wave in Emerging Markets.pdf
IPLOOK Networks
 
OFFOFFBOX™ – A New Era for African Film | Startup Presentation
ambaicciwalkerbrian
 
Security features in Dell, HP, and Lenovo PC systems: A research-based compar...
Principled Technologies
 
SparkLabs Primer on Artificial Intelligence 2025
SparkLabs Group
 
New ThousandEyes Product Innovations: Cisco Live June 2025
ThousandEyes
 
Advances in Ultra High Voltage (UHV) Transmission and Distribution Systems.pdf
Nabajyoti Banik
 
IT Runs Better with ThousandEyes AI-driven Assurance
ThousandEyes
 
Cloud-Migration-Best-Practices-A-Practical-Guide-to-AWS-Azure-and-Google-Clou...
Artjoker Software Development Company
 
How-Cloud-Computing-Impacts-Businesses-in-2025-and-Beyond.pdf
Artjoker Software Development Company
 
Doc9.....................................
SofiaCollazos
 
Software Development Methodologies in 2025
KodekX
 
Get More from Fiori Automation - What’s New, What Works, and What’s Next.pdf
Precisely
 

New High Score! Leaderboards in the Cloud

  • 1. New High Score! Leaderboards in the Cloud Sarah Sexton | Technical Evangelist
  • 2. Overview • Unity Plugins – Bitrave – Photon • Networking Basics • Why the Cloud? • Azure Mobile Services • REST API Basics • Azure for Game Development
  • 4. Unity Plugins • Photon ─ Multiplayer ─ Leaderboard
  • 5. Azure for Game Development • Game State Management • Leaderboards • Monetization • Economics • Multiplayer • Scalability • Cheating Prevention
  • 6. 1. Talking, playing chess, etc. 2. Translate foreign languages 3. “Goodbye” 4. “This message is for…” ID # 5. The phone book 6. “Calling street address…” # 7. Tin cans and wires Separation of Concerns
  • 7. Network Layers 1. Application – access to networking services (IPC, mail, directory services) 2. Presentation – data formatting, encryption, compression 3. Session – maintaining connection between computers 4. Transport – TCP/UDP 5. Network – addressing and routing 6. Data Link – network topology 7. Physical – actual hardware (wire, fiber, radio)
  • 9. Azure Mobile Services Cloud services take care of everything behind the scenes. It's essentially running in a small application-isolated box. You just update your code.
  • 10. REST API Basics Representational State Transfer (ReST, or RESTful programming) HTTP rules: REST rules: • POST (envelope) • GET (postcard) • PUT (envelope) • DELETE (postcard) • CREATE • READ • EDIT • DELETE
  • 11. Name your Mobile Service Select your database
  • 12. Select database Enter database admin credentials
  • 15. Select the Table, Select “Columns”
  • 21. Why the cloud? • Rapidly set up environments • Scale to meet peak demands • Increase daily activities, efficiency and reduced cost.
  • 22. Azure Resources • Mobile Apps – Provide data proxy services to game including offline data • Event / Notification Hubs – Data collection and push notification • Media Services – Streaming cut scenes or demo videos • Machine Learning – Evaluate massive amounts of data to determine hidden patterns and predict outcomes
  • 23. Additional Resources: Videos Unity3D Leaderboard in the cloud using Bitrave Azure plugin www.youtube.com Microsoft Azure Back End for Gaming mva.microsoft.com Play Together! Leaderboards with Azure and Multiplayer with Wi-Fi Direct channel9.msdn.com/events/Build/2013/3-051 How To Create A Global Leaderboard For Unity 3D Using Azure Mobile Services channel9.msdn.com/events/MVP-Virtual-Conference
  • 24. Additional Resources: Written articles Using Azure Mobile Services to Create a Game Leaderboard in Minutes http://thebitchwhocodes.com “Can anyone please explain TCP/IP and its layers to me like I'm five?” “ELI5: Representational State Transfer (REST, or RESTful programming)” www.reddit.com/r/explainlikeimfive/ Peer-to-Peer Support for Massively Multiplayer Games www.ieee-infocom.org/2004/Papers/03_2.PDF
  • 25. Recommended Resources & Next Steps Download free Visual Studio Community edition www.visualstudio.com Benefits for young developers: BizSpark http://aka.ms/SarahBizSpark Host ten websites for free www.azure.com
  • 26. Š2014 Microsoft Corporation. All rights reserved. Microsoft, Windows, Office, Azure, System Center, Dynamics and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Editor's Notes

  • #2: 1
  • #7: Transmission Control Protocol / Internet Protocol (TCP/IP) | Open Systems Interconnection (OSI) The thing with TCP/IP is that it is distinct from the OSI model ("the layers"). OSI is just a model of the separation of concerns. There are sometimes not clear boundaries between the layers. They simply serve as a guideline to how your networking functionality should be divided. Now, onto the layers. Suppose you are trying to communicate with Alice and Bob, who are next door neighbors living on each side of your house, using a three cans and three wires. (One can is connected to both other cans.) The cans and the wires are the physical layer. They allow you to transmit raw sound (raw bits). The problem with this is that you don't know who you are sending to. You want to somehow address either Alice or Bob. So, before you say your actual message, you say the street address (MAC address) of the guy you want to talk to, and they both listen to this address and determines whether the message is for them. Now, you have to have good faith that Bob will not eavesdrop on your message to Alice. This is the job of the data-link layer. Let's say Alice's parents are rich, and they own the entire block. They move around houses every day, and you don't know where she is at any given moment. How will your message reach her? Remember, she listens only for the street address where she is currently at. So, you guys get together and assign each of you a number (IP address) that identifies you no matter where you go. And, you decide to post in the local newspaper (DHCP service) the physical location of each of you, every day. That way, you can look up Alice and Bob’s physical addresses when you need to, and will be able to send them messages. This is the network layer. What if you want to talk to multiple people in Alice’s household? What if she has a hot older sister, Charlotte, whom you have a crush on? How will you let Alice know that a message is for Charlotte, instead of Alice? Simple, before your actual message, but after you say the street address, you say “This message is for Charlotte.” But names are complicated, so we assign a number (port number) to each person (process) in the household that wants to communicate. This is the transport layer. (TCP and UDP sits on this layer.) Furthermore, sometimes the wire is bad and there’s a lot of background noise outside so you can’t be sure that the other person got your message. What do you do? Simple: have the other person acknowledge every message you send, say, “I got it.” (This is what TCP does but not UDP.) Remember, all of these messages are still prefaced by “This message is for ___” and the street address of the recipient. How will Alice know when the conversation is over? What if she wants to go eat and doesn’t want to pay close attention to the wire? Just say “Goodbye” at the end of your string of messages. This is the session layer. (This layer isn’t very well-defined, and is often combined with the transport layer.) Perhaps now you want to talk to David, Bob’s uncle. He doesn’t speak a word of English and only speaks Russian. What can you do? Get a translator! The translator listens to your message, translates it into Russian, and says the message in Russian to David. When David wants to talk to you, he talks to the translator, and the translator translates his Russian message into English, and then relays the message back to you. This is the presentation layer. Suppose, on top of all of that, you want to play a game of chess. Chess has well-defined, standardized notation of the moves. So you can simply say “knight to F3” and the other person will understand that you want to move your Knight to the square labeled F3. Imagine, that you have a chess board that speaks the move in the standardized notation every time you make a move, and every time it hears a move, it moves the mentioned piece to the correct location. Now, you can play chess, over two cans and a wire, with everyone that has a similar chess board, even with David, who has a board that only operates in Russian. This is the application layer.
  • #10: Separation of concerns = network traffic does not slow down GUI display. We can deploy it, make it redundant, fault-tolerant, and all the good stuff. You don't have to worry about the fluff of managing a VM. We do all that for you in the Azure side, and you just worry about the application and that service providing the functionality. You can just isolate it, get it ready, and deploy it into a cloud service, and it's running! No need to upgrade and patch your operating systems for security holes. Cloud services take care of all that behind the scenes. It's essentially running in a small application-isolated box. You just update your code.
  • #11: A "Get" is a postcard. You're supposed to use it to request a document. There's no space on the postcard to send me a document, although you can squeeze a couple of lines into the end of the room and name field. A "Post" is an envelope. It's supposed to be used to send me a new document for me to store, but you can really put anything in the envelope. A "Put" is another envelope. You give me a document, and I'm supposed to replace a document I have with the one you gave me. A "Delete" is a postcard telling me to throw out a document. REST takes as its premise the idea that there are really only four sorts of things you might want to do: Create, Read, Edit, or Delete things. I have a mail room somewhere with a separate slot for each "thing". You send a letter with a name and room specified, and it really goes to a slot in this room, where someone takes and processes the request. If you want to Create something, you send a Post with the thing you want to create enclosed; if you want to Read something, you send a Get; if you want to Edit something, you send a Put with the thing enclosed; if you want to Delete something, send a Delete postcard. That's it – there's nothing extra to work out. All you need to know is what "things" I have, which is fairly easy for me to communicate.
  • #12: Let’s give this Mobile Service a name. For example, I could to use “testleaderboard,” which means that the start of the REST API endpoint for this service would be https://testleaderboard.azure-mobile.net.
  • #13: After choosing a name and selecting a database, we will have to enter in the database credentials. Under the database dropdown, you will have a few different options: use and existing one, create a new one or create a new database server.
  • #14: Once you have your database selected, your Mobile Service will be created. You should be able to see it in list with its creation progress being reported back to you. Once it is created, select it from the list. We now need to think about the data that we want to store and access. We can create a table to store the data and add whatever columns we think we may need. For this example, I am going to create a table called ”highscore” and add in a few columns
  • #15: We need to name this table and set its permissions for the various CRUD operations. For this example, I am just going to allow insert, update, delete and read to happen with an application key. We will need to find the application key as we will need to use that with every api call that we make. Don’t worry about the application key quite yet, we’ll get to that in just a bit.  Let’s add a few columns to the table first.
  • #16: To add a new column, select the “Add Column” button from the bottom navigation. I am adding two columns : one called “user_name” with data type of String, and another called “score” with data type of Number.
  • #17: Select “Add Column” from the bottom navigation and add a column called “user_name” with data type string, and a second column called “score” with a data type of Number. We now have a table called “highscore” for our Mobile Service and we added two columns called “user_name” and “score” to the already existing columns in the table. Now we need to only do a few more things before we can start using this service. First, let’s go get our application key.
  • #18: Select “Manage Keys” from the bottom navigation. We will need to record the application key. Copy the top application key and record it for later use.
  • #24: Unity3D Leaderboard in the cloud using Bitrave Azure plugin https://www.youtube.com/watch?v=KGEabheqcRA Microsoft Azure Back End for Gaming https://mva.microsoft.com/en-US/training-courses/microsoft-azure-back-end-for-gaming-10548?l=RU7KQp97_1504984382 Play Together! Leaderboards with Windows Azure and Multiplayer with Wi-Fi Direct https://channel9.msdn.com/events/Build/2013/3-051 How To Create A Global Leaderboard For Unity 3D Using Azure Mobile Services https://channel9.msdn.com/events/MVP-Virtual-Conference/MVP-Virtual-Conference-Americas-2015/Dev2-How-To-Create-GL-Unity-3D-Azure-Mobile-Services
  • #25: http://thebitchwhocodes.com/2014/02/24/using-azure-mobile-services-to-create-a-game-leaderboard-in-minutes/ REST API: https://www.reddit.com/r/explainlikeimfive/comments/1fevr4/eli5_representational_state_transfer_rest_or/ TCP/IP: https://www.reddit.com/r/explainlikeimfive/comments/mk75a/can_anyone_please_explain_tcpip_and_its_layers_to/
  • #26: https://www.visualstudio.com/en-us/products/visual-studio-community-vs.aspx