|
-
Creating a massive multiplayer flash game
Hey everybody,
I am just starting out on something I have wanted to do for a long time, creating a multi-user online flash game.
I am a designer, can animate in Flash, can design databases, and am a novice at actionscript.
Doing some research on these forums I found smartfoxserver to base it on.
http://www.smartfoxserver.com/docs/i...ild_mmo_p1.htm
I was wondering if there is anyone who would be interested in doing the backend server stuff for the game and helping out in other areas too.
Aaron (Vint)
THANKS!
Last edited by VintAaron; 07-11-2007 at 12:01 AM.
-
Senior Member
Another server you can use is ElectroServer. We have worked with several companies that are doing MMO games with it.
-
Senior Member
Doing an MMO is probably one of the most difficult tasks you can do as a newbie coder, my advice would be to start with a simple arcade game then an adventure game, then a single player mini RPG (theres a difference you can change characters and stats in an RPG which changes your design choices) repeat the same steps in multiplayer (with a 2-5 players basis) and then (if you still are up to it) a MMO you will need all that amassed knowledge to build one. (believe it or not!)
Also you need some dough if you actually want to go MMO, servers and bandwidth are not free (unless you dont care about lag and you just use your home PC) and users will NOT pay for playing a beta version of your MMO unless you are using a very popular license or something, also dont expect to recover that money anytime soon. MMO's are a highly competitive and cuthroat market.
-
I totally agree Azrael and thank you for your input.
I plan to fully research the technology I need before writing a single line of code towards an MMO. I also realize my knowledge is in graphics and flash not in server-side programming so I will need someone who can better take on that task.
Also, I have seen the pricing schemes for "flash servers" and they are ridiculous considering the average super low cost of bandwidth these days. Why is that?
Also, do you have any suggestions for running the server myself? Links to explanations on how to do it properly? Suggestions at costs/ system requirements?
Thanks!
-
Senior Member
Also, I have seen the pricing schemes for "flash servers" and they are ridiculous considering the average super low cost of bandwidth these days. Why is that?
They are actually quite cheap when compared to other commercial products (databases, middleware, etc). They are simply a great deal more sophisticated then most people realize. Another problem is that everyone assumes they need huge capacity at launch when that simply isnt the case.
As an example, we just launched a multiplayer game for VH1. They required the system support 100,000 concurrent people. The game is heavily advertised on a popular TV show and even involves giving away several thousand dollars to the winners every night. Total number of concurrent players in the game at peak time? 3500 or so. Seems that 100,000 user number is a bit optomistic. It's possible the game will grow in popularity, but that's a long way to go.
Simply put, if you need that much capacity, paying for the server license will be the least of your expenses and no concern at all.
Also, do you have any suggestions for running the server myself? Links to explanations on how to do it properly? Suggestions at costs/ system requirements?
It's quite simple to host the server. The issue will be bandwidth. You will need a reliable and high capacity connection to the Internet if you are going to do it yourself. Personally, I'd suggest using a leased-server company and be done with it. We use www.theplanet.com for everything and love them. Currently have about 15 servers with them. They are both reasonably priced and exceptionally reliable. You can go cheaper, but in our direct experience (6 years of coloc and leased servers) you get what you pay for. Saving that 20-40 bucks a month will generally cost you a fortune in headaches.
-
Senior Member
Also, do you have any suggestions for running the server myself? Links to explanations on how to do it properly? Suggestions at costs/ system requirements?
Well like webgeek said, ultimately you are going to need a hosting server (and you Will need money), however while you are on development all you need to set up the server is to download it (buy it) and install it. Practically any machine with Java can run a XML socket server (like electrotank or others).
If you ACTUALLY want to host the server yourself (for a medium MMO) you are going to require a good broadband service with good bandwidth a good computer preferibly with lots of RAM (servers eat up RAM mostly) and a nice dedicated CPU running on LINUX (using as less processes as possible) you also need a good firewall to protect yourself BUT that leaves your game port(s) alone.
You do have to talk to your broadband operator and ASK if this is allowed, be prepared to limit the number of users or to change plans altogether broadband operators ussually dont like the sentence: "using my computer as a server" and if you add "as a game server" they like it even less.
Once again like webgeek said, is probably better (and safer) to get a leased server instead.
Btw webgeek what are the plans on electrotank for Actionscript 3.0 sockets? is it possible to send binary data (without XML) now?
-
Senior Member
If you ACTUALLY want to host the server yourself (for a medium MMO) you are going to require a good broadband service with good bandwidth a good computer preferibly with lots of RAM (servers eat up RAM mostly) and a nice dedicated CPU running on LINUX (using as less processes as possible) you also need a good firewall to protect yourself BUT that leaves your game port(s) alone.
Ultimately CPU will be the limiting factor. Memory is cheap but beyond a few gigs the CPU on a smaller server will become the bottleneck.
You do have to talk to your broadband operator and ASK if this is allowed, be prepared to limit the number of users or to change plans altogether broadband operators ussually dont like the sentence: "using my computer as a server" and if you add "as a game server" they like it even less.
Bandwidth is the real problem. Your home cable/DSL modem is going to be unable to push many users at all. Your upstream bandwidth is almost certainly limited a great deal. Also, cable modems do NOT handle high concurrency loads well. During load testing, I can crash my cable model with regularity. Even worse, you are probably using a little Linksys or Netgear router/firewall box. They are terrible when it comes to performance and they can't handle either high traffic OR lots of connections.
Basically, unless you build a local network to properly handle a popular game, you are going to be very limited in how many users you can support and it won't be a problem with the server but with your network. You will be able to get into the hundreds of users, but not the thousands. In my home network (to get around this problem for testing), I run a Dell PowerConnect 5224 managed gigabit switch and a rack mount dual processor server running SmoothWall as my firewall. All of the network is wired for gigabit traffic with Cat6 cabling.
Btw webgeek what are the plans on electrotank for Actionscript 3.0 sockets? is it possible to send binary data (without XML) now?
Full native AS3 API and yes
-
Don't host a server yourself, the bandwidth costs will literally pwn you. Its so much cheaper to rent a server from a good DC. I use gate2vn.net and have looked at wiredtree for dedicated server purposes.
I'd also just program some single player games rather than an MMO. MMO's are just too competitive. WOW is only $19.95(of course you gotta buy the game first) per month. How much are you planning to charge people for your MMO? Can you possibly even come close to the quality of WOW?
Not to mentioned Guild wars is free monthly.
-
Hey,
Firstly - just joined as I'm just getting quite involved with ActionScript, so thought it a good thing to do! :-)
I've developed an MMORPG before that was purely browser-based (HTML/CSS/JavaScript output, PHP backend) and subsequently coded an MMORPG server in C++ for Linux ... So, there's a few things I can suggest...
If you are considering developing your own server or using someone elses, it's a lot of work to develop your own and there's a million unknown extras (like hack protection, bad disconnects, etc) that need to be considered. But, on the plus side - you get a proprietry server that other people cannot easily replicate, plus you can control exactly how bandwidth is utilised by your system - the 'alternatives' may use packets in a more generic way which isn't quite as efficient (not always the case). If you're not using your own software, then you may as well not host it - like Archbob said, you'll probably find it cheaper.
I use The Planet (formally EV1) for dedicated hosting - it's pretty cheap, you get TONS of bandwidth, and the support is superb. Again, assume your game will start off small but make sure the software is capable of expanding in the future, and hopefully it'll need to.
MMORPG's are an extreme amount of work but I think they can be coded in a way that breaks them down into smaller manageable chunks. I do agree that working on a smaller game first is best - I'm about to embark on my very first ActionScript project (or Flash project, for that matter!) - a small Multiplayer game, but then I've written other stuff in C++ so it translates well. Point being, experience in the language is good, don't be impatient like me, it doesn't always pay ;-) And certainly don't be put off by the big MMORPG's, there's a HUGE scope still out there for decent MMORPG's to be written using Flash & ActionScript. So good luck
-
My suggestion to anybody doing a MMO in flash is not to be discouraged. Sure it’s a HIGE task, and tons of people don’t ever finish the ones they start. But follow the basic advice given in this forum and you should do fine. A few years ago I wanted to make one and I decided to learn actionscript first by doing small games. I’m now about to finish my first MMO in a few months. You can check it out at www.zening.com/game . (hit quick play).
As far as the server goes, I decided to buy and host my own server at home. Utah has fiber optic so I’m getting 15mbs up and down for cheap. I hope it’s enough to at least get started.
Anyways, long journeys stat with one step. Don’t be discouraged.
“the first step to eternal life is you have to die”
-
Senior Member
Using FlashMedia - daring. That is the most expensive of all the socket servers and the least friendly to boot
-
15mbs up and down should do you VERY nicely - at least to get started! Especially if that's unmetered!
I agree - don't be put off! Worse that can happen? Lots of work, no results, lots of learning and a good experience! Best case - you produce something new and original, so all worth it!
Good luck with your new game when it starts! Not sure what it was - as it wouldn't do anything (Starting in 3 turns it said, nothing more!) but looks very smart, with a good amount of touching up will look very professional, like the entrace of the isometric blocks, smart!
-
Senior Member
15mbs up and down should do you VERY nicely - at least to get started! Especially if that's unmetered!
If you have the bandwidth, next you need to prep the network. A little home router isn't going to cut it and will fail under load very quickly. I talk about this a bit a few posts above. I'm more then willing to help out if you need some network setup suggestions.
Also, that 15mbps will last you for a while but it takes less users then you might think to exceed that in a real-time game. Our latest round of ES4 load testing exceeded 100mbps easily. Just watch your utilization once you launch and know that if it takes off, you are going to need to get real hosting still.
-
Agree there - I run a 100 Megabits connection (not unmetered) and that certainly wouldn't take 'unlimited' connections, but 15 Megs is a good start to get a fair few users on without having to run a dedicated server or two.
Always helps to make the bandwidth usage efficient, too. Plus, pile off as much as you can on to the client, like predicting future events, interpolation of time-separated events, etc. Obviously depends on the game, and the server software you're using, but it's all relevant.
If it's real-time, your bandwidth is going to be eaten quickly!! If it's turn-based then you'll probably survive with a large number of users, but I couldn't see which your game was, looks like it's turn-based?
-
Thanks for the info guys.
Webgeek- yeah, I’m using FMS because I really want to incorporate webcam. I think that if flash can do it, then it’s a shame not take advantage of it. I have used electroserver before and think its top notch, it just lacks the media streaming. I tried red5 and in the end wanted to paint the walls with my brain. They have a great idea of making it open source, but the learning curve is a frekken drop cliff. I could not even get it to compile out of the box.
No graphics are done for the game. Like I said, it still has a few months left to polish up. It is turn based and I have tried to limit the server load as much as possible. You guys have been the first people to see it and I’m excited that as crappy as it is now, you gave positive feedback. In a month or two I’ll start a thread on it and get a beta going.
Thanks guys. You rock.
“the first step to eternal life is you have to die”
-
As crappy (!!) as it is now, it looks very sweet. Look forward to it when it's actually done then, plus what's the gameplay about? All I saw was a few players that looked like a chess arrangement, still intriguing though. And two players only, or multiple? Is the playarea just what you see, or scrolling?
I've been coding AS3 for only a few days and it's taken me as a bit of a shock! I've already developed some pretty nice working socket code and now working on the seemingly impossible task of getting graphics looking nice!!
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules
|
Click Here to Expand Forum to Full Width
|