I’ve seen several people say that Unity\UDK are not suitable for creating massive worlds with great amount of content (for massive multiplayer online games, for example).
I suppose this is true :).
As far as I know several ‘big’ engines are suitable for that: Atlas (http://www.epicgameschina.com/tech/tech-atlas_overview.html), BigWorld, C4 (?).
Is there any place I could read about typical features of such powerful IDE’s?
In general, I think - they:
allow multiple users to edit the world simultaniously
support some kind of templates for instancing large areas of the world
have tools for operating\managing this super large world after game is launched
I have never thought about creating such large scale games, I have (of course) no experience with that, I don’t consider licensing something like atlas or bigworld (he-he :)) and I don’t plan to create “WoW-killer” - but the whole concept is very new to me and I’d like to think it over as a game developer.
So if anyone has some info of how this stuff works - please tell me
The two major engines, which also can’t really be competed with are Hero Engine (and its indie spinoff HeroCloud) and BW, also again in its indie versions, both range in the <$5k cost for a team of 25 and less users. I personally favor HeroCloud over BW Indie (Source) here cause it requires no hardware investment and hardware maintenance from your end and the tech is definitely more powerfull and development friendlier.
Anything else is either not MMO or not well known (C4 falls into the first)
Can’t comment on Atlas but sounds like Epic Chinas first commercial work going by the logo top left.
These technologies are not about IDEs also, the major aspect of a good MMO technology is an efficient client with world streaming and reasonable features and a server backend that scales well to support more users in the world, handling the load balanced etc and can be scripted to suite your games needs and offering you profiling, benchmarking and reporting to find performance bottleneck, problems and cheaters.
The editor comes in as second priority as it feeds these two with the data in the right format and setup for loading. And yes along those meaningfull features is concurrent world editing but thats something quite some $200k++ per title engines actually offer (I know at least 2 further that do which are used for AAA game dev in the non mmo area)
Generally there are many aspects of importance that play in here when it comes to what technology is favorable for example.
A more detailed answer would exceed the amount of text you can put into a posting, more than once as its very project specific of what your project requires, what you need as a must, what would be nice to have, how far your concept is really MMO (all facebook games with persistent worlds are mmo too, so all zynga games etc) and it is easy to understand that it is a massive difference between that and graphical muds which gamers normally understand as an “MMO”
Nice, there’s a free sandbox version of HeroCloud.
The pricing for HeroCloud is 5k + 15% royalty + something I didn’t clearly understand about hosting.
HeroCloud: They host it in amazons cloud and you pay those costs. So they are doing the technical support basically.
As for SFS / Photon + Unity: Yes unity isn’t really suited for it. Asset bundles are no replacement for real streaming and LoD unhappily and its lack for threading safeness makes the problem not better. Also you have to write a plentitude of addon editor to export data to handle them on the simulation server which verifies stuff in a 3d representation with basic collision etc - also required for path finding for npcs and work out a solution for concurrent world editing as thats not optional especially as unity can not merge scenes and prefebs at all.
another problem at least for the time being is that PVS data can’t be streamed in from asset bundles, they must be in the scene that “started it off” which puts the last nail into it normally as you would be restirected to EQ sized zones or EQ2 class loading orgies.
Well, that hosting is only fault of that “indie” licence. They are using amazon cloud, which has very expensive traffic. Amazon cloud with HeroEngine with 500-1000 players cost cca $800 monthly…
In my country unlimited 100Mbit server hosting is cca $100 a month. For example my small MMO is doing cca 2-4Mbit/second with 200 players online in the peak and it has quite obsolete network protocol, nowdays engines are much more efficient.
It would be far cheaper to run heroengine on you own HW, even when I am counting oracle licences for DB and buying of some servers…
Reason is obvious, they want protect engine from piracy, but this hosting is making licence far, far from indie, even if the licence itself is VERY cheap (5k dollars is nothing for such technology). Each game need some time for start until it starts to earn you some money and such costs can cause bankruptcy easily (half year of public beta with thousands of players and no income…)
Other problem is, that there is no chance to negotiate anything with HE team. Once they discovered, that we are interested “only” in Herocloud licence, they even don´t bother to reply on our emails. This is VERY unproffesional, for example Gamebryo Lightspeed team was very polite and willing to negotiate and made quite good offer even for team with limited budget like us. So Gamebryo = proffesionals, HE = bunch of arrogant amateurs.
These hidden costs and problem mentioned above is reason, why we chose Unity for our project.
Having the machines run is really the minority aspect of making an MMO backend cluster work reliably. Amazon really is only a small part of the cake when it comes to have your game up and online all the time.
Also one major advantage of using HeroCloud or even BW Indie Source is that they save you $300k to $1000k development and research cost and you have an engine you can start your game directly, not in 1-2 years when the engine is stable and “in place enough” to really start with an AA+ project (until then it will change a lot as the vision you have now on what you need is near granted not the same as then).
There is no cluster middleware available at the time aside of Scalify and scalify still seems in the move, is by far not tested and settled enough to pull off a real world large scale MMO for example. Photon and SFS are both nice but none of them is cluster oriented. They can be used there but they are far away of just do it even less if you need performant collision, line of sight and physics validation on the server (already that will take you months to do). combine this with a large streaming world and you potentially start to see why I recommend MMO devs to go with HeroCloud (BWI Source would be nice but the middleware you need to have it work really efficientely costs tens of thousands of USD while herocloud has them integrated at $0 … you lose sources with herocloud but the scripting covers most and there are plugins if you need more)
Unity + Middleware will never get you a real mmo game in the sense of WoW or any modern with no loading screen, the lack if proper streaming on its own already marks a death strike for real MMO usage if we talk of the precompiled one. You can naturally try to approach something like EQ2 but iwhtout the large userbase it had to draw from you will flop the same as EQ2 did without EQ1 users, cause nobody accepts eternal loading screens all the time.
Asset bundles don’t cut it here due to their limitations, cause PVS does not transport with Asset Bundles (or better you can not merge it in). Additionally U3 when building asset bundles converts the project to webplayer every single time, you can’t preventing. I’m working on a team with a 4GB assets growing project and sit on a 4 hdd raid5 with Core i7 920 cpu, 18GB RAM and even for me those eat 5-10min on every single asset bundle build to convert forth and back and that although the asset bundle takes 5s to build on its own. And even if it worked, due to how asset bundles work you can not fluently stream in whole environments at least out of my experience on Windows
To overcome that you would need the unity source license, but the costs it brings up to pay for the Unity source license (The mmos that were and are done in unity were all source driven!) and pay for programmers capable of working with it would pay you hero cloud for the whole development and the first 1-2 years of live gameplay. (the prices aren’t public but $50k - $100k for the sources + X*$100k+ for X programmers, per year to work with them is a reasonable assumption. also keep in mind you need a real office so you have to pay insurance etc etc of your worker)
As much as I love unity, for two genres I would never use and recommend it myself: 1. shooter → UDK / Torque, 2. MMO → HeroCloud
The work you have to invest in unity to reach the points where these technologies are before you even get there is in the 5 - 6 figure pay range depending on where you want to go in detail and its just not feasable nor intelligent out of my view to be an engine fanboy if the engine does not offer any specific support for your scenario.
General note: Engines are tools so treat them like that and choose the best for the task you have at hand. Don’t be silly treating engines like your baby that you “betray” if you use a far better suited technology for a specific project.
Also 15% is easy by any meaning. Its less than UDK takes for example and nothing compared to the $500k - $1M you pay flat for these technologies licenses otherwise. They are a major leap towards real indie MMO development.
HeroEngine sounds good but, have any of you actually ran a project on it? It’s very dated technology, The Heroblade environment is very slow and crashes very often. HSL is great but, not a entry level programming language and no one is going to come into HeroEngine knowing how to program in it because HSL is hero only…
Not to mention with Herocloud you cannot deploy your game “yet”… Simultronics no longer owns the company recently sold so your dependent on a company who may or may not deliver…
Honestly I think there is a viable option with Unity being a MMO capable client. And deploying your game through a webplayer has some very nice advantages… Its 2011 do we need to go standalone anymore? Ontop of that there are some viable options arising and Scalify/Badumna isn’t proven yet, but, I believe there is a hidden gem to be found there…