gSkinner - Home

Androideroids

Posted on June 22, 2010 by Grant Skinner

There’s a lot of buzz around multi-screen experiences lately, where an application or game is available to you on multiple devices (ex. web, PC, mobile, TV, etc). Recently I’ve been fascinated by the idea of using these “multiple screens” together to create a single experience.

The first result was my Nexus One Gas Pedal which I posted last week. Following that, I wanted to do something that was more accessible, and allowed for more players, which led to the concept for Androideroids.

Androideroids is a prototype multiplayer asteroids game in which each player uses an Android phone as their game controller. Player’s can see a top down view of the game on the main screen (which could be a PC, TV, or projected in a public space), and a first person view with their health and score on their phone. The top down view is great for navigating, and first person view comes in handy for aiming during dogfights. Player specific sounds are played on the phone, whereas general sounds are played on the host.

This has lead to the development of what I feel is a strong framework for creating public installations and experiences that will allow smart phone users (on multiple platforms) to connect in an adhoc fashion.

When players launch the generic LANPad application on their phone, it finds and connects to the game host. The host sends the client a “surface” SWF which defines how the game will look and act on the phone.

The surface SWF sends messages to the host indicating UI input, the host interprets these, runs game logic, and sends back a message updating the game state on the phone.

Here’s a rough video on the project:


Androideroids (rough cut) from Grant Skinner on Vimeo.

I posted the video to Vimeo last night so it would encode before I wrote this post, and was thrilled to see that it got picked up by Engadget this morning while I was eating breakfast. Please excuse any typos in the post – it was written in a hurry!

Follow @gskinner on Twitter for more news and views on interactive media.
29 Comments

Wow, awesome work Grant. Your framework sounds really interesting, and really useful based on this and the slot cars demo. Can't wait to see it develop.

Although, I must admit,at first I completely misread this post as Asterboids - and imagined a classic asteroids style shooter with asteroids and enemies with boid flocking behavior. Hmm, that sounds promising too!

Posted by: Lawrie on Jun 22, 2010 10:09am URL: http://www.LawrieCape.co.uk

Erm... to state the obvious... wow! The things you guys come up with never cease to amaze me!

Posted by: Philip on Jun 22, 2010 10:11am URL: http://www.milkisevil.com

Really nice work! What kind of multiuser server do you use for this project? SmartFoxServer?

Cheers,

Marcus

Posted by: Marcus on Jun 22, 2010 10:29am

This is brilliant and looks like a lot of fun

nice work!

Posted by: daniel on Jun 22, 2010 10:29am

Looks like Engadget picked up your story, nice.

http://www.engadget.com/2010/06/22/android-asteroids-multiplayer-androideroids-video/

Posted by: Nathan Youngman on Jun 22, 2010 12:47pm URL: http://nathany.com

Awesome -- I love the Flatland style view on the phone.

Posted by: bigfish on Jun 22, 2010 1:05pm URL: http://dafishinsea.com

Hey!

great work..!!!!

i am working on stuff like that(no a game) - but who do you get access to the screen ? Serversocket?

and if that is a yes how do you do discovery for the server on the local network?

Posted by: Dennis Green-lieber on Jun 22, 2010 1:41pm URL: http://www.cph81.com

I'm covering this for tom's Hardware / Tom's Guide. This is awesome stuff!

Posted by: Kevin Parrish on Jun 22, 2010 2:07pm URL: http://www.tomsguide.com

Came across this at Engadget- nice work Grant!

Posted by: Greg Gavutis on Jun 22, 2010 2:33pm URL: http://www.thinkspring.net/portfolio/

One of the best innovations I've seen to date for mobiles, and a really good example of the benefits of a cross platform system like AIR. Please, please, please tell me you're going to make it availlable! A few of my friends have Android phones, and this would be so much fun!

Posted by: Rich on Jun 22, 2010 3:31pm URL: http://xcmeathead.com

good work !

Posted by: Ruhou on Jun 22, 2010 5:12pm URL: http://hi.baidu.com/52017

Nice! take that Appholes!

Posted by: albie on Jun 22, 2010 6:38pm

Great stuff Grant!

I can see some really great game ideas coming out of the mobile-with-big-screen display combination.

Posted by: Cameron Adams on Jun 22, 2010 8:30pm URL: http://www.themaninblue.com/

Waouhh great job !

Happy to see that it always exists some Asteroid fans! In my case we port the Asteroid J2ME game into the iphone - only using Ispectrum which allow you to develop in JAVA 1.5(Equal Android) with Eclipse IDE some native iphone app !!

Have a look on www.flexycore.com and see how we port an android 3D game into the iPhone in 2 days!

Great news for Android developpers ??!!

Posted by: Yann on Jun 23, 2010 4:28am URL: http://www.flexycore.com

fucking great!

Posted by: nico on Jun 23, 2010 7:31am

Amazing, Grant! Is your LANPad framework using Stratus? How are you achieving communication between the host app and the controller apps? If you aren't going to be open sourcing it anytime soon, I would love to know how you did it so I could take a stab at building something similar.

This has kept me from sleeping!

Posted by: Kevin J on Jun 24, 2010 12:06am

Brilliant! The potential for this is fantastic, here's hoping you guys get some good commissions for public space projects using this platform - you deserve it.

Posted by: Tom Gooding on Jun 24, 2010 4:42am URL: http://www.quickthinkmedia.co.uk

holy fuck... this is the best thing in the world today!

Posted by: randygland on Jun 24, 2010 6:00am URL: http://www.andy-hayes.com

WANT!!!

Posted by: Chris on Jun 24, 2010 9:40am

here is a flash developer, what apple needs..

Posted by: viaria on Jun 26, 2010 7:03am

Is this available? I would be happy to pay.. put it on the Android Market!

Posted by: Isaac Waller on Jun 28, 2010 8:02pm URL: http://www.siriusapplications.com/

Great job! Just posted this on slashdot, let's see if you get /.ed =)

Posted by: sixtus on Jul 1, 2010 3:19am URL: http://sixtuslab.com

Very nice indeed, still to bad iphone / ipad doesn't support flash.

I'm also interested in what service you use for communicating between the clients and the 'lanpad'.

Like Kevin J asked; is it Stratus? O

Posted by: KolNedra on Jul 5, 2010 7:31am URL: http://www.kolnedra.com

Brilliant work, presumably using the AIR 2 ServerSocket class. Flash on Android has got to be the most exciting development in the last 5 years, just need a handset now to get going!

Posted by: Graham on Jul 5, 2010 7:56am URL: http://ccgi.codegadget.plus.com/blog/

Seriously, put this on the Android Market or let us download it!

Posted by: Lauren on Jul 5, 2010 7:11pm

Awesome work, have you tried running it using Frash on iPad yet?

Posted by: Jinjaninja on Jul 7, 2010 7:21am URL: http://www.thechilligarden.co.uk

I have been building out my own "version" of this using the ServerSocket class, but I just can't seem to get the same performance from the socket connections that Grant is getting. I can't tell if it's dropped packets being resent out of order, lack of FroYo performance on the device (running a Droid Incredible), or most likely if my code isn't efficient enough. hmmm. Grant, please enlighten us!

Posted by: Kevin J. on Jul 15, 2010 1:57pm

I haven't been able to get this level of network performance either, can you share what sort of service you are using to communicate between the surface and the android clients? Are you actually doing some multiplayer trickery like dead-reckoning or is it really as responsive as it looks like?

Maybe you're using p2p UDP somehow? Is it possible to handoff a p2p UDP connection via AIR2 ServerSocket?

Posted by: Aaron Beall on Jul 26, 2010 4:30pm URL: http://abeall.com

Grant, any updates on this? Are you going to release the framework?

Posted by: Cal M on Jan 11, 2011 7:53am

Leave a Reply

Your email is never published nor shared.




You may use these HTML tags and attributes:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="" highlight="">