This seems like a fun and interesting idea the way you've handled it. I can't actually try it out but I enjoyed the look of the screen shots and the concepts you are messing around with.
Thanks! Hopefully it will be on a platform you can try it out on one day.
You say there are a lot of other apps out there like this? Are they all exploring the same aspects? You mention that most seem focused on detecting other 'user' level entities on the same system versus general Bluetooth MAC hits in this wild.
Right. There are a lot of iPhone apps out there where you register for an account and it's more of a social networking thing. Kind of like Google Dodgeball used to be. One specific one that I know of tracks your GPS signal. Another will connect to wireless networks and will display the profiles of the people around you.
The problem with this is that even in fairly large college towns like where I live, you can't find other users. So when I was writing JMingle, I wrote it to be user account-agnostic. I wanted to focus on just how many people are around you in general, that'd way you wouldn't feel like it was such a lost cause to go out and start scanning!
If I ever do design a social networking backend for JMingle, it will work in a similar way. Like, you could tag someone that doesn't have an account yet, they might register for an account, and it will tell them who has seen them before. Even the social networking backend will be fairly account-agnostic.
To keep things less stalker-ish and to prevent JMingle for causing you to incur much data charges, it probably never will look up people's accounts.
It might register JMingle as a Bluetooth service sometime in the future so JMingle clients can communicate. This wasn't a huge goal for me though since I couldn't see any "fun" benefits to this.
I know I have read about a few projects which detect various ambient data that is available and they all do seem kinda cool. Of course they would be more fun to use if one was in an area that had a lot more devices of whatever type one is detecting. Not so much fun if you live in the country..
I think I'm very stuck on this idea. I really want to write an RPG app that generates a small RPG campaign (and Hero characters) when fed in different device addresses. And since stuff that relies upon Bluetooth signals is not fun for people who aren't around other Bluetooth devices. That's why it may be a fine idea to provide a number and it generates a campaign from that number.
EDIT: Do the characters proximity to each other represent relative signal strength / ping times / or none of the above?
Nope. Although, trust me, I considered very much how to do stuff like this. Unfortunately Java's API doesn't give me that kind of low-level access to the Bluetooth antenna. The minglets are governed by a simple randomized state-machine AI. However, the minglets are consistent across devices. E.G., your minglet looks the same on your phone as it does your friend Fred's phone.
On a related note, I thought it would be fun to keep a database of MAC addresses and give a breakdown to the user of the kinds of devices in the area. Although, I think that breaks the fluidity of the game a little.