Jump to content

  • Log In with Google      Sign In   
  • Create Account

Interested in a FREE copy of HTML5 game maker Construct 2?

We'll be giving away three Personal Edition licences in next Tuesday's GDNet Direct email newsletter!

Sign up from the right-hand sidebar on our homepage and read Tuesday's newsletter for details!


We're also offering banner ads on our site from just $5! 1. Details HERE. 2. GDNet+ Subscriptions HERE. 3. Ad upload HERE.


xLethal

Member Since 23 Apr 2012
Offline Last Active Mar 10 2013 09:24 PM

#4992230 Best game engine for MMORPG?

Posted by xLethal on 20 October 2012 - 12:58 PM

I'm not going to get sucked into an internet argument but I'll respond to a few points generally and it will be my final response.


All right, then I'll make this my final response as well.


Certain engine core components being rewritten due to horrendous performance issues in various subsystems were done.

I'll give you this, although I have doubts on how you would have obtained this info. I've only used a demo of Gamebryo, so it's hard for me to be certain that it would require any major rewrites. However, poor performance on certain components is far from breaking the engine. The source code license is relatively cheap compared to MMORPG development costs, so I wouldn't say having to rewrite certain components would be a big reason to rule out the engine. It's far from ideal, but I'd definitely rather be able to rewrite certain components than being forced to make work-arounds without source code.

No it isn't an opinion in the least. The core renderer is nearly replaced in every game using it, the scene graph is cache miss heaven and the old way of doing things which doesn't scale with hardware, there is virtually no multithreading due to not having a job proper system. Also note that as I mentioned BigWorld and Hero Engine are proven solutions.. just because you don't like the gameplay or design decisions it rarely has to do with the engine.

Have you ever played SWTOR? I can't say that the engine is at fault, but there are many reasons why SWTOR flopped after the first couple months of release, and why RIFT is still going relatively strong(especially if you compare the initial player base).

You can also write extensions in C++ without a source license if you run into scripting performance issues. Also controls and gameplay in SWTOR are design decisions you could easily clone WoW or RIFT with it if you chose to do so.

I'd definitely prefer native control over the game executable in such a big project. Extensions are far from ideal for core components in most cases. I would argue you could not clone WoW or RIFT with either BigWorld engine or HeroEngine without source modifications or major hooks to the engine. It might be possible, but certainly wouldn't be easy to get that same level of performance.

You could just as easily cross-compile a native desktop application if you wanted to. Not to mention there is no 64 player limit unless you are going to use the default Unity networking subsystem... which they will even recommend you not to use and to go with Photon, Smartfox, etc.

Of course you can cross compile it to desktop, but the question is why are they marketing it as a web game. I haven't played any of these Unity MMOs, but I may give one a try soon to see what they have achieved in terms of performance.

Then you've never looked at the source... the amount of work needed to modify the networking subsystem is extremely substantial. Ask anyone who has worked with UE3 how fun it would be decoupling the networking and building a new system. Sure it definitely has been done before but the amount of work is staggering. At the same time the OP isn't asking for a 6-7 figure engine... which you would need since you couldn't do it with UDK alone.

Yes, it's a huge job to redo the networking. However, if you're looking to go big(which any MMORPG should be in my opinion), it's certainly worth considering the proven power of the UE core.

Not at all, Big World and Hero Engine are the enterprise level solutions that come boxed and ready to go without extremely heavy modifications.

I would be curious as to how many modifications Bioware had to make with HeroEngine for SWTOR's development, but I'd wager a lot. A ready-to-go solution is nice, but can be very misleading.

Also for the record I've actually worked with GameBryo, UE3, Unity, Reality, and have worked on more than a few custom engines.

I'm envious of your experience. You may be right that using Unity would be a great solution for an MMORPG, but I'd just prefer a more controllable environment for such a large and expensive project.




I'd like to see some proof that RIFT doesn't use Gamebryo heavily.

Heroes of Telara runs on a heavily modified version of the Gamebryo engine - source
A heavily modified version of Gamebryo 3, indeed, with extra bells and whistles added on by us. - source

I never said anything about Heroes of Telara, but that could be relevant. Remember that heavily modifying an engine is still usually easier and cheaper than building your own.


No development company with a large enough budget to make a decent MMORPG is going to use Unity for an MMO as anything other than a browser port.

Not relevant -- we're advising a beginning developer who has little to no budget.

True, but the topic clearly asks what the best engine for an MMORPG is. I don't like going around to topics saying, "Well don't even bother asking this because you aren't anywhere near experienced enough to make <X>." Although that may also be an appropriate response, I prefer to answer the question without judging the person's motives for asking the question. He never asked if a beginner can make an MMORPG(like Mass Effect as he stated). If you tell him to use a free/cheap solution like Unity, he may put a lot of work into it in hopes that it will end up like Mass Effect, which would likely lead to disappointment.

My advice to OP: Use a free/cheap engine to learn only. Start with small projects, a MMORPG is a huge project in almost all cases. Once you're more familiar with the world of development, then decide what you want to do.


#4992091 Best game engine for MMORPG?

Posted by xLethal on 20 October 2012 - 04:00 AM

Regarding GameBryo there is a reason that Trion and Bethesda use a heavily modified version of GameBryo. I know that Trion only uses some of the tools (which were to get them up and going while building their own engine) and Zenimax Online is not using it for their MMO. The architecture of this engine is old and stale and the main reason Bethesda stayed on it for single player games is because they built on it over many years and games. GameBryo is very similar to the Wild Magic engine in architecture although it has evolved slightly over the years.


Actually, from what I've heard Bethesda did not significantly modify Gamebryo until they created "their own" engine for Skyrim, which highly resembles Gamebryo. Trion has stated multiple times that RIFT was built using Gamebryo engine. I wouldn't imagine them lying about not having their own engine for the game. I don't know where you get your information from, but I'm suspicious considering the only way you could actually KNOW they were using a heavily modified version of Gamebryo is if you worked with them or had seen the source code yourself. Your definition of "highly modified" also probably is different from mine. Of course they're going to modify it or add wrappers over some classes to better suit their needs. The ability to do so fairly directly is a big advantage Gamebryo has over other game engines such as Unity.

As for the architecture being "old and stale", this is an opinion. If I were investing millions into a game, I'd definitely prefer a traditional and proven approach rather than a radical and risky one especially for a game engine. If the company wants to take more risks, they should develop their own engine in favor of unproven solutions.

Regarding UE2.5/3 it has been used by numerous companies in the past but you *need* a source license and a lot of work in order to get anything up and running for a massive online game. Also I really don't see any benefit to using UE3 over something tailored directly to the genre.


I'll agree that it would definitely take a lot of work to get it running with an MMO, and you're right that UE3 isn't the best solution if you want to have support for population condensed into a small area. However, I've seen some MMORPGs that are more instanced and could be developed without support for more than 64 players in one area. This isn't an ideal solution, but certainly a possibility.


Star Wars TOR (heavily instanced / story based), The Repopulation (complete open world sandbox), Faxion Online (traditional type MMO) have all been built on HeroEngine and as I mentioned in brackets they are extremely different types of games. I'm not sure what you mean by "too managed"? The tools are extremely in-depth and give you everything to build, run, and manage an online game. Also note that Zenimax Online licensed HeroEngine for The Elder Scrolls Online just for the use of the toolset so they could get started on world building, design iterations, etc while they build their own custom engine.


I apologize for being unclear. By "too managed", I mean the scripting language seems like very high level code in contrast to a much lower level language like C++. The reason I said "seems", was because I haven't played around with it much, but I have played SWTOR for awhile and in my opinion the controls and overall gameplay is quite clunky compared to games like WoW or RIFT. I indeed have not played The Repopulation or Faxion Online. I'm simply stating my opinion based on having played SWTOR and having worked a bit with the engine in the past.


Another great choice is to use a combination of Unity and a socket server like Photon (definitely the best to pair with Unity). You can download the free version of Unity and Photon and get started right away... plus they even give you a small sample to get you started quickly before you have to dig into the docs. Unity has been used for MMO games such as Battlestar Gallactica, FusionFall, etc... so I don't see why there is an issue there either.


Unity is a good engine for browser clients. That's about as far as it goes from what I've seen. Both examples you cited only use Unity for their browser client. In my opinion, if you're going to have 64+ players visible in one area, you're heavily limiting your performance by forcing players to use a web browser. That being said, it may be a good idea to use Unity for a web client, then use another or your own for other platforms. The web client shouldn't be the main platform for a MMORPG in my opinion though.

Actually HeroEngine and Big World have a massive number of AAA MMO games built using their technology and the above you listed really only have a couple (being a few that use a modified UE3... the only MMO I count for using GameBryo is Dark Age of Camelot as the others use a version that isn't even recognizable. Meanwhile UE3 hasn't powered that many either and the ones that did used it had to heavily modify and add to it as well.


Your definition of AAA is very different from mine. The only MMORPGs I've seen Big World's engine produce are Asian(mostly Chinese it appears). I've tried a couple of these said games, and they seem clunky with poor production values typical of Chinese MMORPGs. I'd like to see some proof that RIFT doesn't use Gamebryo heavily. There have also been successful Korean MMORPGs (definitely) using Gamebryo, but I wouldn't count these as AAA. You're right about UE3, but I would still prefer it over Big World or Unity for developing non-browser clients due to the quality of the engine coupled with the successes of RPG games using it.

You seem bias against enterprise-level solutions in this discussion. No development company with a large enough budget to make a decent MMORPG is going to use Unity for an MMO as anything other than a browser port. Unity is great for many genres of games, but MMORPGs doesn't seem to be one of them. I'm not implying that it's impossible to make a multi-platform MMORPG in Unity, but it's definitely unreasonable.


#4992025 Best game engine for MMORPG?

Posted by xLethal on 19 October 2012 - 08:36 PM

Well, remember an MMORPG is, by definition, a massive game. You're going to want to aim for AAA quality in terms of not only the graphics, but also the production values. World of Warcraft was and is an amazing game because of the top-notch gameplay created by an extremely innovative and hardworking development team. However, if the said gameplay was buggy or "didn't feel right", it wouldn't have captivated so many players.

I'm not sure about FPS MMORPGs honestly, but here are the "only" engines currently for sale(without private connections) that I would consider using for an MMORPG.

GameBryo
This engine is hugely underrated in my opinion. This is a modular set of multi-platform C++ libraries, along with graphical tools, designed to help developers build a powerful game. It's also been proven to work on countless AAA games, including RIFT(near-perfect example of a high quality MMORPG), Oblivion, and Fallout 3. This would definitely be my #1 choice for a traditional MMORPG.

Unreal Engine
If you want to make a quality game, this is definitely the way to go if possible. I don't think I need to tell you much about this engine, it's pretty well known what it's capable of. Unreal Engine 4 will be dropping unrealscript in favor of native C++, which is a great move in my opinion. This engine makes it very easy to support a large number of platforms, with some of the best design tools out there. Note that UnrealEngine 3 isn't proven to work with 100+ players in one world, although it may be possible in Unreal Engine 4.

CryEngine
Again, very well known for quality. I haven't looked too deep into the details of this engine(I have heard many good things about it though), but it seems like it would be better suited to a MMOFPS game than a traditional MMORPG.

(HeroEngine has a great feature set, but seems to be too managed for an MMORPG)

Note that these three engines are all relatively expensive to license. However, UDK3 and CryEngine both offer free versions for development until you go commercial.

The reason I've limited my list to three is because no other engine on the market has been proven to work with an AAA MMOG. Yes, it is possible to build one with many other engines, however you're much more likely to run into large road blocks well into development(such as issues that require large work-arounds) and even in production(such as serious glitches arising).

I realize you probably aren't willing to pay the millions in funding a MMORPG costs to make, so in my opinion, you're best off learning with either Unity or UDK. Let me know if you have any questions or comments. I've had only 2 years experience working with MMORPGs, but I've done a lot of research into these matters.


PARTNERS