SlideShare a Scribd company logo
1 of 24
Using Location in Games

     Ralph Barbagallo
     ralph@flarb.com
Who am I?
• Game programmer, designer, jack of all
  trades.
• Founded FLARB in 2001, one of the earliest
  publishers and developers of mobile games
  in the US.
• Been working on a location-based game ad
  startup since 2010
Getting Location
• Most smartphones have GPS receivers

• GPS-less devices (netbooks, iTouch) use
  “Fake GPS”

• Location from IP lookup

• Color: “GPS Doesn’t Work”
GPS Accuracy
• Limited government restrictions

• 5-10m GPS, 50m WiFi, 500m triangulation

• Hyperlocation won’t be a reality until NFC
  or other tech comes about
GPS APIs
• iOS
  – Core Location


• Android
  – Location Manager


• GPS uses lots of juice!
Location in a Browser
• W3C Geolocation API

• Javascript in modern browsers

• Works the same way as native APIs
Storing Location
• Geospatial databases

• Basic functions:
  – Storing geographic locations
  – Sorting (distance checks)
  – Testing (intersections with shapes)
Storing Location: MySQL
• Spatial Extensions in 4.1 (subset of
  OpenGIS)

• Geometry stored as WellKnownText
  (WKT) or binary (WKB): “POINT (30 10)”

• All computations are in Euclidean (flat)
  space
Storing Location: PostGIS
• PostgresSQL with GIS extension

• Most mature relational solution (2001)

• WKT or WKB

• “Geographic Coordinates” for accurate
  queries mapped on globe
Storing Location: MongoDB
• Popular NoSQL database with game devs

• Geospatial indexing using spherical
  coordinates

• Uses geohash to store points

• Only points, no lines, polygons, etc.
Storing Location: SimpleGEO
• SimpleGEO Storage is a cloud service

• Cassandra with custom spatial extensions

• Store location as lat/long, geohash, or IP

• Cloud service—use HTTP calls. Heavy
  overhead.
Using Location
• Places Databases
  – Find out EXACTLY where you are


• Different places database provide different
  info about venues and locations
  – Trending
  – Coupons
Places APIs
•   Foursquare
•   Factual
•   Facebook Places
•   Google Places
•   SimpleGeo
•   CityGrid
•   Etc. etc. etc.
Street Addresses
• Get latitude and longitude of street address

• Geocoding

• Google Maps API:

http://maps.googleapis.com/maps/api/geocode/json?addre
ss=xxx&sensor=false
Foursquare API
• Unauthenticated
  – Raw places API.
  – Free to use, with paid tier.
  – Crowdsourced
• Authenticated
  – OAuth2
  – Access to check-in
    history, friends, mayorships, trends
Facebook Places API
• Database is based on Factual

• Authenticated only

• Tagging friends

• Deals platform
Foursquare vs Facebook
• Foursquare’s unauthenticated mode make
  it useful as a general places database

• Facebook has WAY more users

• Neither one can detect cheats

• Tagging friends is a powerful feature
Designing for Location
• A sample
  –   Parallel Kingdom
  –   Paranormal Activity
  –   Turf Wars
  –   The Merchant Kingdom
  –   Dokobots


• Too literal.
Location Design Problems
• Convenience

• Density

• Privacy
Popular uses in apps
• As a social networking tool
  – WhosHere
  – Color
  – Instagram


• As a coupon/deals platform
  – Stickybits
  – Goldrun
Business Models for Location
• Real-world rewards for virtual world play
  – Pain in the ass for the advertiser
  – A hassle to redeem


• Local deals are hard to source
  – Most LBS companies are sales organizations
Data Collection?
• Heaven’s Diner!
Summary
• Location is an interesting and low-tech
  buzzworthy feature

• Location gaming is in its infancy

• The “check-in” may be going away, but
  location isn’t.
Thanks!
• Ralph Barbagallo

• ralph@flarb.com

• twitter.com/flarb

• ralphbarbagallo.com

More Related Content

Similar to Using Location in Games

Mapping on iOS and Android, Wally McClure
Mapping on iOS and Android, Wally McClureMapping on iOS and Android, Wally McClure
Mapping on iOS and Android, Wally McClureXamarin
 
Building Mobile Cross-Platform Geospatial Apps, Nick Landry
Building Mobile Cross-Platform Geospatial Apps, Nick LandryBuilding Mobile Cross-Platform Geospatial Apps, Nick Landry
Building Mobile Cross-Platform Geospatial Apps, Nick LandryXamarin
 
Phil Keslin (Niantic Labs): ar is more than just pixels
Phil Keslin (Niantic Labs): ar is more than just pixelsPhil Keslin (Niantic Labs): ar is more than just pixels
Phil Keslin (Niantic Labs): ar is more than just pixelsAugmentedWorldExpo
 
GeoLocation DemoCamp10 Vancouver
GeoLocation DemoCamp10 VancouverGeoLocation DemoCamp10 Vancouver
GeoLocation DemoCamp10 Vancouverpkaler
 
Augmented Reality March Webinar
Augmented Reality March WebinarAugmented Reality March Webinar
Augmented Reality March WebinarPromet Source
 
HTML5 Geolocation API
HTML5 Geolocation APIHTML5 Geolocation API
HTML5 Geolocation APIFilip Mares
 
Location applications on andriod
Location applications on andriodLocation applications on andriod
Location applications on andriodzoezyy
 
Enhance Location-Based Insights with Additional Geocoding Capabilities
Enhance Location-Based Insights with Additional Geocoding CapabilitiesEnhance Location-Based Insights with Additional Geocoding Capabilities
Enhance Location-Based Insights with Additional Geocoding CapabilitiesPrecisely
 
Navigation & Location Europe 2009 Condensed
Navigation & Location Europe 2009 CondensedNavigation & Location Europe 2009 Condensed
Navigation & Location Europe 2009 CondensedAlex Housley
 
PostGIS and Spatial SQL
PostGIS and Spatial SQLPostGIS and Spatial SQL
PostGIS and Spatial SQLTodd Barr
 
Sm4 geolocation presentation
Sm4 geolocation presentationSm4 geolocation presentation
Sm4 geolocation presentationshiraberg
 
Building Mobile Apps with HTML, CSS, and JavaScript
Building Mobile Apps with HTML, CSS, and JavaScriptBuilding Mobile Apps with HTML, CSS, and JavaScript
Building Mobile Apps with HTML, CSS, and JavaScriptJonathan Stark
 
Location, a layer not just features
Location, a layer not just featuresLocation, a layer not just features
Location, a layer not just featuresLOCQL LOCQL
 
Mobile Apps on Businesses
Mobile Apps on BusinessesMobile Apps on Businesses
Mobile Apps on BusinessesPeter Choi
 
Farah's presentation
Farah's presentationFarah's presentation
Farah's presentationSheSays US
 
GVRDC Beyond VR: Mixed Reality with Tango and HoloLens
GVRDC Beyond VR: Mixed Reality with Tango and HoloLensGVRDC Beyond VR: Mixed Reality with Tango and HoloLens
GVRDC Beyond VR: Mixed Reality with Tango and HoloLensAaron Pulkka
 
Ben Dowling - Geomium - Building a Geo App - Geomob Feb 2011
Ben Dowling - Geomium - Building a Geo App - Geomob Feb 2011Ben Dowling - Geomium - Building a Geo App - Geomob Feb 2011
Ben Dowling - Geomium - Building a Geo App - Geomob Feb 2011GeomobLDN
 
Services, Data and Architectures for Building a Geo App
Services, Data and Architectures for Building a Geo AppServices, Data and Architectures for Building a Geo App
Services, Data and Architectures for Building a Geo AppBen Dowling
 
HighEdWeb 2014: More than just karaoke outings
HighEdWeb 2014: More than just karaoke outingsHighEdWeb 2014: More than just karaoke outings
HighEdWeb 2014: More than just karaoke outingsTom Tostanoski
 

Similar to Using Location in Games (20)

Mapping on iOS and Android, Wally McClure
Mapping on iOS and Android, Wally McClureMapping on iOS and Android, Wally McClure
Mapping on iOS and Android, Wally McClure
 
Building Mobile Cross-Platform Geospatial Apps, Nick Landry
Building Mobile Cross-Platform Geospatial Apps, Nick LandryBuilding Mobile Cross-Platform Geospatial Apps, Nick Landry
Building Mobile Cross-Platform Geospatial Apps, Nick Landry
 
Phil Keslin (Niantic Labs): ar is more than just pixels
Phil Keslin (Niantic Labs): ar is more than just pixelsPhil Keslin (Niantic Labs): ar is more than just pixels
Phil Keslin (Niantic Labs): ar is more than just pixels
 
GeoLocation DemoCamp10 Vancouver
GeoLocation DemoCamp10 VancouverGeoLocation DemoCamp10 Vancouver
GeoLocation DemoCamp10 Vancouver
 
Augmented Reality March Webinar
Augmented Reality March WebinarAugmented Reality March Webinar
Augmented Reality March Webinar
 
HTML5 Geolocation API
HTML5 Geolocation APIHTML5 Geolocation API
HTML5 Geolocation API
 
Location applications on andriod
Location applications on andriodLocation applications on andriod
Location applications on andriod
 
Enhance Location-Based Insights with Additional Geocoding Capabilities
Enhance Location-Based Insights with Additional Geocoding CapabilitiesEnhance Location-Based Insights with Additional Geocoding Capabilities
Enhance Location-Based Insights with Additional Geocoding Capabilities
 
Navigation & Location Europe 2009 Condensed
Navigation & Location Europe 2009 CondensedNavigation & Location Europe 2009 Condensed
Navigation & Location Europe 2009 Condensed
 
PostGIS and Spatial SQL
PostGIS and Spatial SQLPostGIS and Spatial SQL
PostGIS and Spatial SQL
 
Sm4 geolocation presentation
Sm4 geolocation presentationSm4 geolocation presentation
Sm4 geolocation presentation
 
Building Mobile Apps with HTML, CSS, and JavaScript
Building Mobile Apps with HTML, CSS, and JavaScriptBuilding Mobile Apps with HTML, CSS, and JavaScript
Building Mobile Apps with HTML, CSS, and JavaScript
 
Location, a layer not just features
Location, a layer not just featuresLocation, a layer not just features
Location, a layer not just features
 
Mobile Apps on Businesses
Mobile Apps on BusinessesMobile Apps on Businesses
Mobile Apps on Businesses
 
Farah's presentation
Farah's presentationFarah's presentation
Farah's presentation
 
GVRDC Beyond VR: Mixed Reality with Tango and HoloLens
GVRDC Beyond VR: Mixed Reality with Tango and HoloLensGVRDC Beyond VR: Mixed Reality with Tango and HoloLens
GVRDC Beyond VR: Mixed Reality with Tango and HoloLens
 
Connect with the real world
Connect with the real worldConnect with the real world
Connect with the real world
 
Ben Dowling - Geomium - Building a Geo App - Geomob Feb 2011
Ben Dowling - Geomium - Building a Geo App - Geomob Feb 2011Ben Dowling - Geomium - Building a Geo App - Geomob Feb 2011
Ben Dowling - Geomium - Building a Geo App - Geomob Feb 2011
 
Services, Data and Architectures for Building a Geo App
Services, Data and Architectures for Building a Geo AppServices, Data and Architectures for Building a Geo App
Services, Data and Architectures for Building a Geo App
 
HighEdWeb 2014: More than just karaoke outings
HighEdWeb 2014: More than just karaoke outingsHighEdWeb 2014: More than just karaoke outings
HighEdWeb 2014: More than just karaoke outings
 

More from Ralph Barbagallo

Day at the Museum #holohacks 2016
Day at the Museum #holohacks 2016Day at the Museum #holohacks 2016
Day at the Museum #holohacks 2016Ralph Barbagallo
 
Native Code is Dead AKA Cross Platform Development with Unity3D
Native Code is Dead AKA Cross Platform Development with Unity3DNative Code is Dead AKA Cross Platform Development with Unity3D
Native Code is Dead AKA Cross Platform Development with Unity3DRalph Barbagallo
 
Native Code is Dead AKA Cross Platform Development with Unity 3D
Native Code is Dead AKA Cross Platform Development with Unity 3DNative Code is Dead AKA Cross Platform Development with Unity 3D
Native Code is Dead AKA Cross Platform Development with Unity 3DRalph Barbagallo
 
iOS and Android Development with Unity3D
iOS and Android Development with Unity3DiOS and Android Development with Unity3D
iOS and Android Development with Unity3DRalph Barbagallo
 

More from Ralph Barbagallo (7)

Day at the Museum #holohacks 2016
Day at the Museum #holohacks 2016Day at the Museum #holohacks 2016
Day at the Museum #holohacks 2016
 
Meatspace Pitch Deck
Meatspace Pitch DeckMeatspace Pitch Deck
Meatspace Pitch Deck
 
Native Code is Dead AKA Cross Platform Development with Unity3D
Native Code is Dead AKA Cross Platform Development with Unity3DNative Code is Dead AKA Cross Platform Development with Unity3D
Native Code is Dead AKA Cross Platform Development with Unity3D
 
Native Code is Dead AKA Cross Platform Development with Unity 3D
Native Code is Dead AKA Cross Platform Development with Unity 3DNative Code is Dead AKA Cross Platform Development with Unity 3D
Native Code is Dead AKA Cross Platform Development with Unity 3D
 
Native Code Is Dead
Native Code Is DeadNative Code Is Dead
Native Code Is Dead
 
iOS and Android Development with Unity3D
iOS and Android Development with Unity3DiOS and Android Development with Unity3D
iOS and Android Development with Unity3D
 
The New Dope
The New DopeThe New Dope
The New Dope
 

Recently uploaded

Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DaySri Ambati
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 

Recently uploaded (20)

E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 

Using Location in Games

  • 1. Using Location in Games Ralph Barbagallo ralph@flarb.com
  • 2. Who am I? • Game programmer, designer, jack of all trades. • Founded FLARB in 2001, one of the earliest publishers and developers of mobile games in the US. • Been working on a location-based game ad startup since 2010
  • 3. Getting Location • Most smartphones have GPS receivers • GPS-less devices (netbooks, iTouch) use “Fake GPS” • Location from IP lookup • Color: “GPS Doesn’t Work”
  • 4. GPS Accuracy • Limited government restrictions • 5-10m GPS, 50m WiFi, 500m triangulation • Hyperlocation won’t be a reality until NFC or other tech comes about
  • 5. GPS APIs • iOS – Core Location • Android – Location Manager • GPS uses lots of juice!
  • 6. Location in a Browser • W3C Geolocation API • Javascript in modern browsers • Works the same way as native APIs
  • 7. Storing Location • Geospatial databases • Basic functions: – Storing geographic locations – Sorting (distance checks) – Testing (intersections with shapes)
  • 8. Storing Location: MySQL • Spatial Extensions in 4.1 (subset of OpenGIS) • Geometry stored as WellKnownText (WKT) or binary (WKB): “POINT (30 10)” • All computations are in Euclidean (flat) space
  • 9. Storing Location: PostGIS • PostgresSQL with GIS extension • Most mature relational solution (2001) • WKT or WKB • “Geographic Coordinates” for accurate queries mapped on globe
  • 10. Storing Location: MongoDB • Popular NoSQL database with game devs • Geospatial indexing using spherical coordinates • Uses geohash to store points • Only points, no lines, polygons, etc.
  • 11. Storing Location: SimpleGEO • SimpleGEO Storage is a cloud service • Cassandra with custom spatial extensions • Store location as lat/long, geohash, or IP • Cloud service—use HTTP calls. Heavy overhead.
  • 12. Using Location • Places Databases – Find out EXACTLY where you are • Different places database provide different info about venues and locations – Trending – Coupons
  • 13. Places APIs • Foursquare • Factual • Facebook Places • Google Places • SimpleGeo • CityGrid • Etc. etc. etc.
  • 14. Street Addresses • Get latitude and longitude of street address • Geocoding • Google Maps API: http://maps.googleapis.com/maps/api/geocode/json?addre ss=xxx&sensor=false
  • 15. Foursquare API • Unauthenticated – Raw places API. – Free to use, with paid tier. – Crowdsourced • Authenticated – OAuth2 – Access to check-in history, friends, mayorships, trends
  • 16. Facebook Places API • Database is based on Factual • Authenticated only • Tagging friends • Deals platform
  • 17. Foursquare vs Facebook • Foursquare’s unauthenticated mode make it useful as a general places database • Facebook has WAY more users • Neither one can detect cheats • Tagging friends is a powerful feature
  • 18. Designing for Location • A sample – Parallel Kingdom – Paranormal Activity – Turf Wars – The Merchant Kingdom – Dokobots • Too literal.
  • 19. Location Design Problems • Convenience • Density • Privacy
  • 20. Popular uses in apps • As a social networking tool – WhosHere – Color – Instagram • As a coupon/deals platform – Stickybits – Goldrun
  • 21. Business Models for Location • Real-world rewards for virtual world play – Pain in the ass for the advertiser – A hassle to redeem • Local deals are hard to source – Most LBS companies are sales organizations
  • 23. Summary • Location is an interesting and low-tech buzzworthy feature • Location gaming is in its infancy • The “check-in” may be going away, but location isn’t.
  • 24. Thanks! • Ralph Barbagallo • ralph@flarb.com • twitter.com/flarb • ralphbarbagallo.com