Separate names with a comma.
Discussion in 'Game Development (Technical)' started by Jack Norton, Mar 24, 2010.
1st Amendment - unless it's your own unknown obscure technology
How did I miss this topic and more importantly why hasn't my game been mentioned yet?
My game, SocioTown is mostly under the radar by the press and I guess even other devs. I won't go into specifics since my users know how to use Google, but we're doing fairly well for ourselves even though we have a relatively small community. We haven't done any meaningful promotion for the past two years while we steadily improve the game, but we've slowly built up a subscription base and steady flow of players that makes us profitable.
I just want to counter the idea that you need 5,000 - 10,000 co-current users to be successful. If you have a low over-head and high ARPU, then you can still do very well with much less.
Unless you have a few 100k, I definitely recommend going niche. You never know you could tap into a hot niche like Nexic did, but even if you don't, you can still do well by properly serving and satisfying a small loyal audience if you have the right revenue model in place.
If you don't think you can pull in a huge volume of users, go with subscriptions. Generally in business, acquiring the user is the most expensive part. But once you have them, you can generate revenue from them at the fraction of the cost. If you do purely micro-transactions, you either have to constantly keep getting new customers or constantly feeding them new content/items for them to purchase. But with a subscription model, it's much easier to harness your existing customers. For example, you don't always need to generate new content to keep a subscriber happy. You can do special or community events to keep them involved or run random contests/competitions. Give other little incentives to keep the player active so they don't lose their status. Also, some players just won't cancel their subscription unless you give them a negative reason to do so.
You can crunch the numbers yourself, just having subscribers in the low thousands can have you making more money than most of the games on the casual portal top ten lists (at least the developer's cut).
Developing an MMO is tough, but not impossible. It takes time and you probably won't be developing another full game for a long time. But you can control your own destiny. Most of the people on this forum don't even know my game exists, but I'm one of the few indies doing very well despite the whole casual industry imploding and the iPhone/Flash markets getting over-saturated.
So don't easily dismiss boutique, social MMOs or whatever you want to call them.
Nowadays, if you use Flash, there is a plethora of APIs that can take care of registrations, badges and microtransactions for you: mochi, heyzap, gamersafe, kongregate, etc...
I suppose it makes it easier to devellop a barebones MMO in these condition (the difficult part being the whole multiplayer crap).
PRO and CON being that players aren't tied to only your game.
Even if you want to do Facebook stuff there are many APIs available for free to tap into facebook.
It can be worth it if you want to start up fast.
Gonna have to jump in with Nexic and tolik on this one.
I made our first FB game, a hardcore PvP game. It took two weeks while learning PHP and MySQL. I did all the code+db stuff. It was terrible, but it worked, and it got the ball rolling.
-> it does NOT take a full team and $100k to make an online game.
It reached only 3k DAU but it gave us a launching point for our next game, which ended up reaching 10k DAU within 2 months of starting to learn web programming. Already at that point, it was a profitable, sustainable business with 2 people and one art contractor. We've since grown a bunch with the following advice:
-Do not go with subscriptions-only. Some people are willing to spend a ton more than you can imagine, so don't limit it from them with a best-guess subscription price. I have seen much, much better results from virtual goods.
-PHP/MySQL to start with. Easy, free, and definitely powerful even without animations. Move to Flash when you have a foundation of users and experience. Don't use any fancy BS that requires downloading plugins, because you'll lose 95+% of your userbase that way.
-This is a bit contrarian - Do not worry about scaling for your first game. There's a ton to think about, and if you get any of the core stuff wrong, you won't ever get enough users to scale.
-Research popular game mechanics and try to incorporate at least one or two of them. Innovation is fine, but users are much more comfortable when it starts off somewhat familiar.
-Fast dev cycles. Don't make the perfect, ambitious game, and then test it to death. Get something out in 2 weeks, and update it with user feedback. User behavior is the best indicator of how fun and addicting your game is. Online games are a service, not a finished product.
-Analytics. You have omniscience of your users actions. Use it to figure out what parts of your game suck, and make it better.
-Mainstream is great, but niche can be very profitable too. If you want $10-50 million, make a cutesy, accessible game. If you want $1-5million, make a niche game.
Can't agree more with synapse. You must focus on basic metrics to understand what is actually happening - measure your retention, user experience funnel (where do they leave?), your virality (use kontagent), etc.
Thanks for every contribution. Lol this might even become a stick post, considering how many casual devs are shifting towards MMO/social games recently!
I think is definitely possible to make an online game alone (using contractor for art). synapse suggestions are really good IMHO, many people start building up a team and investing lot of money thinking to make the next yoville/farmville and end up with having wasted 2 years with much less income than a superniche zombie MMO done alone
I want to warn other "normal offline devs" like me, doing online coding is TOTALLY different, not just harder but a different thing and you really must love it. Indeed I've decided that while I could probably code a online game I prefer to spend time doing the game design and less boring tasks, so I'll just hire someone to code instead
First of all, great thread, lots of great information even for people (like me) that are just curious about this sort of business models.
Quick question about the client (hope not too offtopic), downloads are a negative thing but...
What about java? What is your opinion (or the anyone else's opinion) on using Java for an applet or JNLP download ?
ThreeRings uses this as their clients, is it worse than flash for avoiding the 95+% userbase loss?
In my opinion, it's going to depend on the client base you're targeting.
If your players are more used to downloading and configuring their computers to play games, then I don't believe you would necessarily see a 95%+ user loss.
In fact, what I suspect is that you would initially see less "tire kickers" (that is people who will play for free but wouldn't ever pay), and more actual paying customers.
On the other hand, for a very casual game (e.g. *Ville) you would expect to see people wanting a very accessible game therefore something that will just work in their browser, i.e. flash.
You should also remember that PuzzlePirates (ThreeRings) predates Facebook by 5 years (PP was released 2003, FB: 2008).
At the time, most mmo's were downloadable, and so people were more used to that.
I'm not saying you couldn't do it these days, but ThreeRings have kept a lot of momentum going since then so they can afford to keep with Java
It's definitely takes more steps to start a Java game than to play a flash game. It's a dealbreaker for a lot of people, especially people who just want a 5-10 minute experience. There's nothing wrong with 'tire kickers', because even people who play your game for free can become addicted. Addicts become evangelists, and evangelists bring more users.
Just as an example of how fickle a lot of users are, our browser game initially had 4 pages before you actually started the game, involving a combination of story and character customization. Each page saw about a 30-50% drop off, meaning we ended up losing about 80-85% of the users that started to play the game, just because they weren't hooked enough to click a button on a webpage! Imagine if they had to download a JNLP app, possibly wrestle with having to configure and update Java. Flash, on the other hand, has a huge reach and games only take ~5 seconds to load (with no user interaction).
The real question is - what are the benefits to using Java? If the only answers you have are things like 'faster execution', 'easier code' or 'better libraries' - you're not thinking about the user first.
The real trick with network code is to make one that you can basically forget about. Starpeace has RDO (remote delphi objects), no point googling it, it was made for starpeace. What makes this effective is that it allows the use of functions from client to server seemlessly to the coder. This way you don't have to work on network code each time you want to send or retrieve data, just 2 functions, one on the client, one on the server.
Ok at first it might be slightly harder and longer to actually code this, but in the long run you'll save a lot of time and effort and as it's not specfic functions can be reused in other projects. The downside is that your going to have some extra data to send but it's not a huge amount.
Of course the most infuriating thing about network coding is you need to be coding the server and client at the same time and testing that new code at the same time. If you have 2 computers to spare it's probably best to use them at the same time, side by side or else you'll go nut's trying to keep things in check.
Java (client-side) seems to be a total clusterfuck. People often post Java projects here and not even half of them run on my various machines, and when they fail it's usually some odd-looking dialog box with some mystifying exception. If they're going to jump through the hoops to get Java to work, then they'll probably be willing to just install your downloadable.
As long as you're not doing hardcore 3D, Flash is a perfectly fine bitmap blitter, and even Flash 10 has a 95% penetration rate in the developed world.
The one thing is that you may have to consider CDN delivery with a Flash client, because if you're delivering a 3-5MB SWF to say 100,000 people, and each player plays say 5-10 times per month... you do the math. Browser cache will help, but every time you update versions they will have to re-download.
I'm talking about that. I was using python and php, and was really easy enough to do technical wise. What pissed me was the SLOWNESS at going on even for simple things since I had to think every action/option in game with client / server architecture...
Heh yeah you do, it gets easier though.
Plus you also have to consider how to minimise the amount of data your sending with each call (or conversely the amount of calls made) because although it may seem small you have to consider the effect on individual clients and the server as it scales up.
The joys of client/server networking
How about providing MMORPG and Facebook game templates?
I agree, it's good to provide both options.
Though I still think my advice is relevant for small devs who may not necessarily be doing Facebook MMOs.
I think it depends on the game design really, not every mmo can really use micro-transactions without some horrible kludge as it can cause game balancing issues, while at the same time not every one works well with a subscription system either
Sorry, missed this comment earlier.
Yes I agree given an infinite amount of players for your game then, say, 2% of tire kickers may become regular users and 2% of them may become addicts and evangelise your game better than any banner ad or marketing ploy.
However, my point was more that with a genre that's suited to a downloadable client such as java, such as a 3d RPG (for want of a better example) then you're more likely to lose most of the tire kickers along the way due to the increased difficulty in getting to play and so are left with actual paying customers, who are by definition already well on their way to becoming addicts and evangelists.
It was a throwaway comment though, don't read too much into it
What about Player.IO?
Anyone have any comments or experience with http://playerio.com/ which is a flash multi-player API (has MMO capabilities in it's features apparently).
I wouldn't touch anything where your game is tied to someone else's hosting services. This puts you 100% at their mercy.
Agreed. Write your own Client-Server-DB API. It really doesn't take a long time to learn (especially if you find it fun!) and you need to have control of it.