views:

100

answers:

2

Related question: How do I attract developers to an Open Source project?

Coding an open source Browser-Based-Game

I code the game/site ninjawars.net. Recently we (me and my friend who mainly admins the server these days) open sourced the code (and creative commons share-alike'ed it). I really love working collaboratively on code, and it has driven me to increased level of competitive activity when I have had the chance, but only one of the players of the game has tried coding for the source, and he wasn't really knowledgeable enough to contribute more than a few code suggestions that I actually implemented myself. My friend who admins the server kinda lost interest in the project as well, for his own reasons.

I know that I need to:

  • Make the game hit critical mass of fun + players to the point where it attracts enough people that some of them know code as well.
  • Separate out the concerns within the code, like html from php from javascript.
  • Make the code cleaner for anyone who might come in to mess with it.

But despite that, I personally get a lot of enjoyment out of -coding- the game already, it involves relatively simple code that is easy to improve, and since it's a web-based game, you can quickly see the effects of your improvements. It is also what let me learn enough to turn from a tech support guy into a programmer. So I think there is fun potential there, but how do I make it attractive to others and get other coders/designers involved?

Things I've considered pursuing:

Should I try to make the code more replicate-able on other servers, and thus more applicable to other developers? Abstract it somewhat into some kind of BBG framework? Discuss the game code with game developers beyond the playerbase somewhere? It straddles the line between web-game and website, so sometimes I wonder whether an open source "website" is generally a less attractive technical project for developers for some reason. What would make it more attractive to others?

General advice?

+7  A: 

Step 1: Convert it into a facebook app.

edit: I was serious, these types of games get HUGE followings on facebook. Half the people I know log into facebook every day to tend their virtual "farms" along with millions of other people.

Rather than trying to get the people to come to the game, take the game to the people.

Rob
This is quite a good answer really, why the downvote? Now as for the question, I'm not sure that it shouldn't be community-wikied, but thats another matter
George Jempty
That what i don't understand on people.. Virtual farms... But Rob does have a point, there will be always someone playing your game, no matter what about your game is.
Fábio Antunes
The problem with facebook is that it causes major scaling problems for the app. I guess if it were done in an -invitation-only- kinda way, like gmail, then it might be more managable, though.
Tchalvak
+4  A: 

Should I try to make the code more replicate-able on other servers, and thus more applicable to other developers?

Unless you have a powerful, well-designed game engine that can be re-used for other games, this won't generate much interest.

Abstract it somewhat into some kind of BBG framework?

If you can do it well, that is one option.

I think the first step is to consider your target audience. Keep in mind that there's little hope of getting programmers interested in the code if they're not also interested by the game.

For instance, you might want to make it an "open source sandbox" for kids and beginner programmers. They can learn about programming by inspecting the source code and then make improvements which other people can then enjoy. Of course this would need a well planned quality control system to ensure the game doesn't go down too often.

Artelius
You're right, turning the game in a direction that appeals to programmers is definitely a good goal to increase collaboration.
Tchalvak
I like the change in direction that this answer implies. Being a programmer myself, I want to play a game that appeals to programmers as well, so perhaps I'll do what I can to think about moving the game in that direction, however incrementally.
Tchalvak