Adventures in AR: The Game Plan

Add some icons and we've got the start of something

Last time, we took a surprisingly quick look at the history of a small AR game I am working on. I like to call it ARventure. We talked a bit about the tech behind the game, but didn't get to discuss the actual game I want to use it for. That can not stand.

To summarize it in one line, the game is "Dungeons & Dragons meets geocaching." The premise is pretty simple, fill the world around the player with 'quests' involving finding real world locations. The game will feature a small cast of NPC quest givers that basically serve to give tasks a different coat of paint. Planned characters include the knight who will treat the player like a squire and give them fetch quests and the explorer who will send the player to find special locations. I plan to use Mapzen's Points of Interest layer to spawn the characters in sensible locations (i.e. not on the highway) and also find destinations for their quests. It shouldn't be particularly difficult to implement, though the generated quests may be a little bland. However, NPC quests are only the first stage of the plan.

With a solid quest system in place, the next step will be to introduce player-made content. Players will be able to create their own quests by stringing together location nodes and adding text that is displayed at each node. Ideally quest creators could make much more interesting quests than the NPC generated ones, using knowledge and information about their area. Wishful thinking, I know. In all likelihood, people will just write expletives and put markers in the bad parts of town.

Anyways, to support all this we'll need to migrate a good chunk of the current game server-side. All of the map loading functionality will be done on the server (which will probably be a good idea in order to keep my Mapzen API key out of nefarious hands) and when a client requests a map tile, the server will also send along quests for that area. This is where the game gets a bit more ambitious, but still within reason. I already have experience utilizing tools like Redis and Mongoose to create and maintain a persistent database, which should cover the bulk of the technological requirements.

Now, as for what players actually do on quests and how they are rewarded... that is still to be decided. The basic 'go to a place and get arbitrary score points' idea might not be especially compelling. I've thought a bit about stats, levels, and gear, which would allow for some cool options with skill checks during quests. This also opens up possibilities for random encounters while simply walking around, which is always exciting. It really comes down to how much time and effort I am willing to put into this project, knowing full well it may never see the light of day. But that's a topic for next time.