734m

Team Members

  • huned
  • visnup
  • gerad

What

LAZEROIDS! Massively multiplayer, peer-to-peer, never-ending game of asteroids. Shoot your friends! Avoid the asteroids!! Name your ship!!! But not in IE!!!!

Where

How

rails, mysql, js {prototype, scriptaculous, uuid}, gems {orbited, stomp, haml, faker, newrelic_rpm, json}, soundmanager2, one track from garageband, garageband, the MONACO font, and the letter A.

@janekimmer created delightful meals and snacks for us. what a gal!

Comments

LAZEROIDS! is the innovation category winner!

Thanks to all for voting, playing, and the great feedback and constructive criticisms!

pew pew pew!!

Great idea, coolest sounds ever!

i love the voiceover. it’s so funny! ’DDEEEOO"

plus, i didn’t know that i was getting points..maybe the points field font should be larger for peeps like me. ;D

Color would be nice…maybe glow in the dark asteroids…sizes worth different point values and a secret one that explodes with something funny like celebrity faces (i.e. britney or paris hilton)..haha…

Nice app. Would be cool to be able to shoot other ships.

I think your application is the best out there next to Hi I’m. I’d love to see the code of it. Already read your blog and it’s very interesting the way you describe lazeroids is composed. I’m amazed.

@CPFB we already have a leaderboard and limited ability to find other players built into our development branch. It will be deployed tomorrow evening, post-Rumble judging.

@Subimage you can, but if there’s some network lag, it’ll be kinda buggy. we’re working on smarter/better networking for after rails rumble.

@windock we’ll likely open up the github repo in a couple days. http://lazeroids.wordpress.com/2009/08/28/hello-world/ has a write-up on architecture and some code snippets for now.

@la tuta it’ll stay up AND get improvements at lazeroids.com post-rumble. follow @lazeroids on twitter for updates!

Where can I see code?

Outstanding, this is just amazing. Pew Pew!

nice! plays real smooth in safari. i feel like it needs a chat feature. nice improvement of the original asteroids by adding the reverse thrust!

LOL this game is really cool.. are you planning to keep it after the rails rumble???

it was a matter of time till someone started working on a javascript rails controlled game.

Hats off this is the first one I’ve seen!

I couldn’t get out of the help screen. Another thing that is missing is the ability to find other users logged into LAZEROIDS, so that you can have a battle royale. Great idea and implemented very well. I like the sounds too! :)

lots of fun!

Fun idea. Performance was too slow for me to be fun to play. Wish you could kill other ships. I couldn’t figure out how to do that.

Tournaments: 5 minute free for all.

pew pew pew!

@huned you know, to be fair, I’m going to take down dev.lazeroids.com during public judging ‘cuz it’s too close to cheating.

Cool, but works my CPU in a way that doesn’t make a lot of sense.

does not work very well but good idea though

doens work on Ubuntu with firefox :-S

pew pew pew!! lol

To append to @huned.

http://lazeroids.com does not work with Chrome, Firefox 3.0 or IE. However, this is the site you should use to evaluate our rails rumble entry.

http://dev.lazeroids.com will work with Firefox 3.0 and IE. However it has bug fixes that we made after the end of rails rumble. So play it for fun there, but don’t judge us based on it.:-)

Absolutely amazing. Phenomenal work.

http://dev.lazeroids.com

not working too well on chrome

LAZEROIDS! doesn’t run in Internet Explorer :(
Sorry, LAZEROIDS! doesn’t work in IE. But if you’d be kind enough to install one of the browsers below and then visit http://lazeroids.com from your shiny new browser, things will be pretty awesome.

Apple Safari
Google Chrome
Mozilla Firefox

LAME

awful sounds which wouldn’t turn off when I press the button, ship wouldn’t control, help button didn’t work at first. Clever idea but a hell of a long way to go on it.

dev version works better.

It’s cool!

Hi guys I just can’t get this to load at all I don’t know whether it’s a particular version with my browser but it won’t boot at all (FF v 3.0.13)

@foca thanks for the kudos.. to be honest, it hasn’t been super good for our productivity at work either!:-)

I’m having an awesome time with this game. Love shooting at my friends and random strangers on the Internet. Muhahahaha! Can’t believe how well it runs in a browser. You guys rock!!

@surfdude, try ff3.5! or, just navigate to http://dev.lazeroids.com for the development branch that works in FF3. have fun!

guys I can’t start to play this the “ship” doesn’t move at all … I’m using firefox 3 and ubuntu btw

It’s really awesome. I’ve said it over irc and I’ll say it again. It’s awesome. But useful? Really? It’s going to be the biggest time sink at work ;) I can’t say it’s useful, it’s gonna get me fired!

@jsmith hahaha.. sorry, it was late when we picked it. we thought in the least it provided an ironic backdrop to the more silly shooting, warping, and exploding sound effects. you can mute with the ‘m’ key.

That music is awful.

@Sutto I’m glad you liked it. You can mute the sounds with the ‘m’ button if they get too annoying. We also could have done a better job normalizing the volume.

@ErneX so, yeah… that’s why you shouldn’t try to build a game on top of HTTP on a limited memory VPS especially. apache and orbited were into swap and dying. went in and got it back up. I’ll monitor the machine, and do restarts manually for a bit… should be up and working again.

By far, one of the coolest applications in the rumble. It’s a hell of a lot of fun to play and is well built.

My only grips so far seem to be that it ‘jumps’ (I’m guessing due to latency correction of some sort?) plus the sounds are AWESOME but need to be played slightly less often (I guess I just like shooting things). AWESOME job guys!

web was down :(

i’m looking forward to getting @burnto involved too if he has the time.

you guys had me turn off newrelic before deploy… ;) no data.

Amazing work guys!!!

Awesome. I’m glad people like the sounds. Huned wrote the code and Visnu recorded all the effects in my noisy apartment. Homemade sounds FTW.

Ben, thanks for the solid and thoughtful feedback. After a couple days playing the game, it definitely felt like a leaderboard was missing to us too. So we’ve got one built and waiting to go once the judging is over. I’m not sure where we’d show the help, maybe we could show a tip in the status bar every once in a while. Part of me likes the idea that people who take the time to stick around on the get to learn advanced features.

CLR, we’ve got New Relic installed, so we should have some good performance numbers by the end of the week. Rails is definitely responding to a ton of requests per second. We send a request on every ship action and every time a new object is created in the universe, and we send b-frames every few seconds. We’ll post stats to @lazeroids on Twitter when we get an interesting amount of data interesting. We’re actually slightly crossing our fingers that our app doesn’t get hugely popular like our submission did last year). Because it’s already so hard on the server, I’m positive it won’t survive a lifehacker / venturebeat deluge. Scaling an app this crazy for that kind of traffic is more than a weekend project – but we’re already starting to think about it (mostly because it sounds crazy fun). Fortunately, we think the app should (untested) degrade fairly gracefully into single-player mode (which is insanely scalable) if it needs to.

shrapnel, GGB, sorry about the performance problems. One of the costs of pushing the envelope of what the browser can do. Visnu and I use the WebKit nightlies because they’re blazingly fast. (Huned had to switch from Firefox for this project, because testing was that much faster on Safari). That being said, there are some obvious optimizations we didn’t get to (especially for collision detection), and we know we need to do a better job in handling degrading performance conditions (basically, make it so that the network stuff slows down rather than the framerates).

dancroak, yeah, I think here are a handful of small bugs in some of the networking (like with b-frame sync across clients with substantially different frame rates).. and some bigger ones (like it doesn’t work right in FF3.0, or Chrome, and it doesn’t work at all in IE – well maybe that’s a feature)… we didn’t write a single test all weekend, which we thought was smart… but debugging asynchronous networking without tests was quite complicated (a lot of time in console). Personally, I’m super excited to Mock out some of the comet stuff and make sure things come in correctly. Visnu has a sweet fork of rails/scriptaculous javascript_test that we’ll probably end up using… though I kinda like qunit personally.

gilesgoatboy, firefox 3.5 and safari/webkit are probably the best performing browsers for us. firebug with script debugging might be slowing things down for you too.

I loved the ‘pew pew pew’ :D

to be clear, dev.lazeroids.com is a forked repo of the #railsrumble deploy on a different server. it’ll get fixes and new features we’re itching to deploy while lazeroids.com stays still during judging.

Because we can’t get enough: http://dev.lazeroids.com

Thanks GGB- please let us know if you have more feedback. We’re into LAZEROIDS! because it’s fun and interesting. WE think it’d be cool to just make it hum proper-like.

Definitely stretches the boundaries of what a browser can do. I tried it at a client site on a crappy MacBook. Trying it on my powerful home box tonight. Very nifty. Lots of buzz on this already on Twitter and Hacker News.

Agreed on the “pew pew” being worth the price of admission.

Great concept, guys. I ran into a couple of small bugs but nothing crazy. Would love to see this stick around post-rumble.

I love the concept, but it’s been unplayably slow on the two Linux machines I’ve tried so far (Eee 1000 netbook at < 2fps and an Athlon 1640B peaking at 20fps but very hitchy). I’ll have to give it a try on a beefy Core 2 Duo.

Nice job on the soundtrack, too!

Guys, this is freakin’ awesome. I would love to see the code for this, and see some numbers on performance and scaling. Awesome!

Love it. Great stuff!

to clarify on rails vs. rails metal, we did have it running relatively fine for at least 3-4 players under plain rails request processing. we switched to metal early sunday because it was so easy and couldn’t argue with the performance gains. we never got around to testing the difference in scaling though, sadly.

thanks ben :) we had a great time building (and playing) it. we’ll polish it up a bit when judging is over.

This is the most fun I’ve had judging a Rails Rumble entry in three years. I’m shocked that you were able to use Rails as a backend for this (though from your video, it sounds like you were relying on Metal, which makes a bit more sense).

The design’s minimal, which works well in a couple of different ways. The sound design alone, though, is worth at least a few rating points – “pew pew!” The only thing I’d like to see is better, or more integrated, help – I had no clue that you could zoom in or out of the map or warp from place to place until I watched the screencast. Maybe something like a narrow instructional bar along the bottom of the screen with the key commands?

I can think of a ton of features that could be added to the app – a leaderboard ala first person shooters, for instance – but none of that’s necessary. You’ve created a complete entity, and for that I applaud you.

As far as originality… well, I think we all know that the concept isn’t original. In this context, though, it’s outstanding. I never would’ve thought of porting Asteroids to Rails in the first place, much less making it persistent and multiplayer.

I really enjoyed playing LAZEROIDS! – excellent work!