After feeling the heartbreak of seeing MMOAsteroids last week turn out to be an April Fools' joke, I decided to take things into my own hands. This afternoon hack project I threw together yesterday using Firebase.
It's set up to spread out users across a bunch of games to avoid having 500 HN'ers on the same page. Login with Twitter so other people see your picture...
The problem with calling this Asteroids is that there are no asteroids. :)
This reminds me more of an old DOS shareware game called Spacewar (http://www.youtube.com/watch?v=yY5qHe2VadA), which was also multi-player although that game also allowed turning on gravity and warping (I see a comment mentioning warping in this game but I don't see it in the command list.)
This was one of my (and my friends') favorite small games back around 1990.
Edit: It was a DOS game when I played it. It is good to feel like a young person when talking about a game that I played 22 years ago.
Uh... Spacewar was an old PDP-1 game. It predates DOS by a little bit. And the microprocessor. And DRAM. And raster displays (the output was two analog channels fed to a raw CRT). It was essentially everyone's favorite computer game (everyone who knew what a computer game was) back around 1962.
Only partially related, but there was a fantastic game called Star Control 2 once upon a time. The main single player game was a big long quest, but it also had a 'Melee' mode where you and a friend could go up against each other in Asteroids-style space combat- putting different types of ships with different weapons against each other. So much fun was had.
Check out http://www.mmospacewar.com/. I made a few changes to mmoasteroids.com to make it behave more like the DOS version of Spacewar. Unfortunately, Firebase isn't available for another 1 day 18 hours 18 minutes and 10 seconds yet (http://www.firebase.com), so anyone who plays this will share the world and scoreboard with MMO Asteroids for now. (Hopefully this doesn't present a problem to the guy who created MMOAsteroids; there are already plenty of cheaters on there anyway.)
New features: warp (press 'z') and instead of instant death you have an energy which gets depleted by using thrust, colliding with other ships/bullets, and warping.
Very cool. Quick feedback: there are too many players on one screen. Getting immediately run into and killed repeatedly by random players careening around isn't a great user experience. My guess is dropping ~5 players max onto a canvas would be more compelling, and lead to longer initial engagement times.
Good feedback; just bumped up the split between users and games. Should ease up a bit. As traffic ebbs and flows we'll try to keep it balanced. It doesn't assign users in any intelligent way right now..
It also seems that spawning happens only in the top left section of the canvas, which makes that area especially crowded.
It's a bit too easy to get killed right after spawning; maybe there should be a very short grace period in which you can start moving, but can't yet kill or be killed.
Hah! Yeah, we left the debug console open so you can play with it. It's a graphical debugger that shows the data updates for the game in realtime. Have fun: http://mmoa0.firebase.com/mmoaleaderboard0
You don't need the debug console, though: the database seems to simply be a shared scratch space, so anyone can just manipulate anyone else's state using the JavaScript API.
I'll agree it's multiplayer, but considering gameplay goes from "fun and challenging" to "frustrating" at around 10-15 players, I doubt its massive-ness.
However, if the map scrolled instead of wrapped, it could easily become massive.
Awesome! I've been using Firebase for a while now and this further proves that it has so much potential! Every day I see more and more apps being built on it.
The current mode is impressive, although may I suggest a co-op mode where you don't shoot other players but rather actual asteroids? Might be less crazy/frustrating that way.
Please can you make it scale to for a 1024*768 resolution? Thanks. I found it great fun dog fighting with another when it's a bit quieter. Annoyances were someone hacking the controls and setting a ship to move across the screen shooting a great number of shots directly left and right that moved in a wave straight up and down the screen, wiping out all players in its path. Trying to move ahead of this often didn't help due apparently due to lag. I managed to shoot the bugger, but then they respawned with movement reset and the whole screen was speckled with shots, yet another killing field. Later it was doing similar movements to before but shooting out in a spiral at a rate unmatchable with the space bar. Thanks for building this!
Edit: A hide-able chat msg system would be cool. I just wanted to hit t and say "good fight!" after an opponent and I managed to take out each other at the same moment.
Question: How do you bootstrap an MMO to reach a critical mass of players so that the environment sustains itself?
A friend and I built this MMO game called Pixza (http://pixza.com/lite) and we're finding it incredibly tough to bootstrap the ecosystem. The problem is that since it is an MMO game, it's not enjoyable with a few players. So after every wave of publicity, traffic comes in sporadically which does us no good. If all of the traffic came within a frame of 20 minutes of starting a game, I'm sure the game will explode. I've seen it happen during play testing with friends and family.
I had similar issues, I had absolutely no idea what I was doing. You need some sort of primer visible to people know what they're supposed to be doing. Other than that it looks pretty intriguing, I like the nice clean graphics and from what I can tell it's a pretty novel idea (although, as mentioned, I don't know what the point of it is yet).
> "The problem is that since it is an MMO game, it's not enjoyable with a few players."
I think this is your problem. All of the compelling virtual worlds I've been part of have some hook that works on the individual. If you doubt, log into one of the old classic MUDs like LegendMUD (http://www.legendmud.org/) or Blood Dusk (http://mud.dusk.org/). They're still compelling when you're alone in the world (and these days, that's pretty likely).
I think it's perfectly legitimate to say your product is better in groups. I would hope so for something calling itself an "MMO." I think it has to be compelling by yourself to some extent though. I'd argue that every major virtual world from WoW to Second Life to even Minecraft has provided this.
What's even better is that when you have that action that is compelling alone, the second person into your virtual world sees that person being awesome and then desires to join in. You open yourself up to getting a "First Follower" effect, in other words.
"Then again, some kinds of games cannot really be played alone. Multiplayer shooters for instance."
> This specifically applies to Pixza because offering a single-player mode in any form would change the dynamics of the game - because it is essentially a two-team game.
66 comments
[ 3.6 ms ] story [ 121 ms ] threadI adapted a simple single-player asteroids game off github (https://github.com/dmcinnes/HTML5-Asteroids) and made it fully multi-player with Firebase.
It's set up to spread out users across a bunch of games to avoid having 500 HN'ers on the same page. Login with Twitter so other people see your picture...
I wish there some an MMO that's like http://en.wikipedia.org/wiki/SubSpace_(video_game)
Good times…
Awesome job on the game :)
This reminds me more of an old DOS shareware game called Spacewar (http://www.youtube.com/watch?v=yY5qHe2VadA), which was also multi-player although that game also allowed turning on gravity and warping (I see a comment mentioning warping in this game but I don't see it in the command list.)
This was one of my (and my friends') favorite small games back around 1990.
Edit: It was a DOS game when I played it. It is good to feel like a young person when talking about a game that I played 22 years ago.
http://www.math.harvard.edu/~knill/various/continuum/index.h...
http://www.ski-epic.com/continuum_downloads/index.html
Good news is that it's been ported to modern systems: http://sc2.sourceforge.net/
i've recreated both games a few times over the years, as hobby prototypes. fun games, simple mechanics. flying & shooting + imagination FTW.
New features: warp (press 'z') and instead of instant death you have an energy which gets depleted by using thrust, colliding with other ships/bullets, and warping.
It's a bit too easy to get killed right after spawning; maybe there should be a very short grace period in which you can start moving, but can't yet kill or be killed.
Regardless, it's a very fun game. Thank you!
Also, I'm not sure if I was regrouped with players who weren't signed in but after logging in with Twitter I no longer saw any other user pictures.
However, if the map scrolled instead of wrapped, it could easily become massive.
[1] http://seb.ly/2012/04/gotcha-fake-mmo-asteroids-april-fool/
All that is running locally in your browser.
This little sample game turned out to be tons of fun and is a great example of how to build something like this in a scalable and rock solid way.
Also "Game.lives = 1000;" and "Game.score = 1000; updateScore();" etc.
I can't wait to play an AJAX MMO Asteroids game! Probably limited to 500 or so combatants on my internet connection...
Edit: A hide-able chat msg system would be cool. I just wanted to hit t and say "good fight!" after an opponent and I managed to take out each other at the same moment.
A friend and I built this MMO game called Pixza (http://pixza.com/lite) and we're finding it incredibly tough to bootstrap the ecosystem. The problem is that since it is an MMO game, it's not enjoyable with a few players. So after every wave of publicity, traffic comes in sporadically which does us no good. If all of the traffic came within a frame of 20 minutes of starting a game, I'm sure the game will explode. I've seen it happen during play testing with friends and family.
1) What am I doing? 2) Oh, okay, right. I move the blue blocks to make a "B". 3) Okay... Why am I doing this?
I'm not sure what the game /is/, or why it's a challenge, or why it's any fun at all. Could you explain it a little further, please?
I think this is your problem. All of the compelling virtual worlds I've been part of have some hook that works on the individual. If you doubt, log into one of the old classic MUDs like LegendMUD (http://www.legendmud.org/) or Blood Dusk (http://mud.dusk.org/). They're still compelling when you're alone in the world (and these days, that's pretty likely).
I think it's perfectly legitimate to say your product is better in groups. I would hope so for something calling itself an "MMO." I think it has to be compelling by yourself to some extent though. I'd argue that every major virtual world from WoW to Second Life to even Minecraft has provided this.
What's even better is that when you have that action that is compelling alone, the second person into your virtual world sees that person being awesome and then desires to join in. You open yourself up to getting a "First Follower" effect, in other words.
My backend is running on Go - Would be really interested in what firebase is exactly. Looks like it would make this much easier.