Inspiration
I was inspired to make this app as I really enjoy wandering around and exploring the city. However we often walk the same routes to the same locations, offering the incentive of earning rewards for a gift card that we can use for ourselves or gift to someone we care about might be a nice nudge to lead us on a new route.
What it does
This app is designed to encourage activity and also exploration, encouraging people to take alternative routes and visit spaces they would not otherwise travel through.
The app uses Google Plus Codes, an open-source digital addressing system, to divide the world into a grid. Users can collect each Plus Code in the grid by walking through it and for each Plus Code collected they will receive a small bonus added to their Square gift card.
The Plus Codes are visualised using Google Maps and in Augmented Reality (AR) so that the user can see which codes they have collected in both practical and engaging ways.
How we built it
The app is built in Unity and the user location is established using the Google Geospatial API. The Plus Code data is retrieved from the Plus Codes Grid Service which returns a KML file. This file is used to visualise the Plus Code grid on the Google Map view by drawing a polyline and uses an overlay to show collected Plus Codes.
The collected Plus Codes are logged on the device so that they are persistent between sessions. At the moment the user information is stored in a simple text file on the device but could be hosted on a server.
Each time a Plus Code is collected the app uses the Google Text to Speech AI API to create a voice for an avatar that notifies the user. In addition at each 100 metre interval the app uses the Google Text to Speech AI API to create a voice for an avatar that tells the user their total distance travelled and the amount of money they have earned in this session.
This demo app automatically creates a user ID and gift card for each device (tap the card icon to see the details) but in a production app we could allow users to set up their own unique IDs and settings.
For each new Plus Code a user visits, their Square gift card is loaded with ¥2, which seems like a small amount but over a long walk it can quickly add up to a substantial gift.
Challenges we ran into
The main challenge in this project was quickly and efficiently displaying all the Plus Codes in both AR and on google maps. As we need to constantly update the visited status and the number of Plus Codes viewable depending on the Google Map view zoom level and the user’s location.
Accomplishments that we're proud of
In the AR view the Geospatial API is used to place a location anchor at the latitude and longitude of the centre of each Plus Code in the user’s location. This anchor will appear as white if the Plus Code is not collected and green if is collected. It is quite satisfying when a cube turns green in front of you as you collect it and the little avatar congratulates you. It's a very simple concept but walking around and testing the app I became quite engaged and enjoyed seeing my progress on the map.
What we learned
Combining 2D map data and 3D AR visualisation is very compelling.
What's next for PlusCode Collector
This is a simple demo that lets user’s collect Plus Codes for rewards. I think the next stage in development would be to create special locations that give the users increased rewards or a one off large bonus. This could be used by shops, parks, malls, events, etc to encourage users to visit them.
Log in or sign up for Devpost to join the conversation.