Page 1 of 1

Building MMO Virtual Worlds

Posted: 29 Jun 2007, 07:01
by Lapo
We have published a new article in two parts that analyzes the many aspects of creating MMO Virtual Worlds using SmartFoxServer.

It contains an overview of the application architecture, client and server design, integration with other server technologies, scalability, security and a lot more.

Read the article here

Posted: 29 Jun 2007, 08:40
by Luc
This is a great high-level article. I have gotten some good ideas from it.

I wonder how hard it would be to integrate an ORM library with Actionscript on the server, though. As far as I can tell there aren't any ready-made interface libraries. It seems that using Java or Python would be a better choice if you are using an ORM.

(P.S. The link to Babbello doesn't work)

Posted: 29 Jun 2007, 09:36
by Lapo
mmm... I am not sure about what you mean.
Essentially it's just a matter of integrating the ORM (let's say Hibernate) with the extension.
In practice this means:
- add the jar files and relative references in the classpath
- configure the ORM (general config and mapping files)
- add a couple of Java utility classes (not mandatory) for starting / creating sessions etc...

Then the rest of the code is your actual extension logic and it can be Actionscript / Python / Java ... it won't make much difference.

Also, out of curiosity, the current Rhino engine used by SFS supports the latest Javascript 1.7 specifications which add a large number of improvements to the language like... iterators, generators, lambdas, array comprehensions and a lot more.

It seems they have borrowed a lot from Python :)

More details here -> ... Script_1.7

Posted: 29 Jun 2007, 10:32
by Luc
That's really cool. I didn't realize just how easy it is to call Java code from Actionscript on the server (as in chapter 6.6 of the documentation). Very nice. Labs

Posted: 08 Sep 2007, 00:40
by Dis
Great article, Lapo

I like the fact that it covers all the aspects of creating MMO Virtual Worlds. I think many of those who just start thinking about creating their own online world don't realize how much is involved in it. At least I didn't when I started to work on TheoAvatar SDK ( BTW, thank you for mentioning us in your article.

A lot of developers used our source code to learn about creating MMOVW in Flash and jump start their own projects. And not all of them succeeded. But I bet all of them had fun.

Right now we are working on the second generation of our Flash isometric engine for online virtual worlds. We call it TheoWorlds Builder, and it's rewritten from scratch in AS2. The main difference from the previous version is the amount of features and even better extendability.

We started to post updates about our new engine on our blog - Most of the time it will be Flash movie from our labs, so other developers can see how a virtual world evolves. I hope this will inspire them with their own projects.

Feel free to check our blog. Feedback is welcomed. In case you want us to share more information about any of the features - let us know. We will be glad to contribute to the community through website.

P.S. Our new TheoWorlds Builder will work with SmartFoxServer, surely.

Posted: 09 May 2009, 22:48
by jah2488
I didn't realize this MMO guide was soo old. I was hoping for an update soon, lol, just wishful thinking I guess, its great as is. :lol:


Posted: 23 Jun 2009, 12:05
by tcr2102
I was wondering how many server developer usually work on a AAA mmo built with the smart fox server? Does anyone have numbers like this?

Posted: 23 Jun 2009, 14:14
by Lapo
Difficult to say... depends a lot on the complexity of the server side code and the language choice too (Actionscript vs Java)
I think usually it can be 3-10 people for web-based MMOs. Traditional, non web-based, MMOs usually are coded in C/C++ so the number of developers scales up.

Posted: 11 Aug 2009, 07:23
by duke
If one were to store active users in an array (which would extend the SFS User with other info specific to your game), what would be the best way to store and refer to them by ID? For example, if I wanted to send a network message to another user via the main extension, I could do something like "User##ID##command". But how do I find the ID? Is it possible to write the ID to the array index or should i just refer to their name as their ID?

The ID, by the way, would be retrieved from a DB.[/code]

Posted: 08 Sep 2009, 12:38
by rewb0rn
Is it actually possible to program a c++ client that integrates with the smartfox server? Unfortunately the search engines seems not to be able to handle the word "c++" properly.. So a link to a related topic or documentation would be sufficent. I am indeed interested in programming an MMO using c++ on the frontend and a smartfox server cluster as backend.

Posted: 25 Jul 2010, 07:52
by mrnothersan
First reply in 2010 :P Great guide!