Open Source Network Engine?

Started by
2 comments, last by lordcorm 16 years, 10 months ago
Hi I'm looking into open source network engines for the MMOG im working on. Open source graphics engines are easy to find, but I'm having more trouble finding an MMOG network engine that suits me. Anyone have any recommendations? Thanks -Andrew
Advertisement
Depending on how much of an indepth system you are looking for you can check out NeL which is what powers the MMO Ryzom or if you are willing do a little more of your own leg work I would also say check into Ice (Internet Communications Engine) from ZeroC.
Developer Journal: The Life of Corman
Quote:Original post by Corman
Depending on how much of an indepth system you are looking for you can check out NeL which is what powers the MMO Ryzom or if you are willing do a little more of your own leg work I would also say check into Ice (Internet Communications Engine) from ZeroC.


I wasn't familiar with NeL, but I looked into it. While (as often) I'm not fond of the structure (reliance on static callbacks, somewhat c-ish nature), it looks nice.

It has very well engineered framework, the implementation of functionality is surprisingly straight-forward, and supports just about any feature one would want in clustering system. I didn't check the world management (zoning), but the object system is as flexible as it gets, and everything fits together in a quite coherent manner.

If you're looking for a MMO-centric architecture, that's as good as it gets. In many ways I like considerably more than other servers - it just looks cleaner.
Note: I cannot comment on technical characteristics


Ice is a very nice communication framework, from the tests I've done it's pretty solid, and covers all the annoying details (threading and memory issues). A downside is that it has no MMO functionality (time synchronization, zoning or entity management), which is a huge drawback if you're not familiar with these techniques.

It also relies on generated code (- if unfamiliar with concepts, huge + for cross-platform, even PHP). The code is also solid, covers just about all C++ related pains.

The true power of Ice comes if you're willing to embrace the extended services (persistence, versioning, synchronization, authenication, security, management) then you've got all provided out of box, including completely transparent ORM and full-state persistence.

An obvious drawback is that such design is contrary to all resources available on MMO design - it's solid, reliable and produces well designed code with all OO aspects - but it's not how most of MMO infrastructure examples are presented. You'll be on your own.

What stopped me from going with Ice was the license. GPL or commercial fee negotiated based on project. First wasn't possible, second wasn't viable.

My suggestion whould be, just stick with winsock upd. i write a star wars galaxies emulator with some friend and thats what star wars uses... but you better under stand bytes number for datatypes, such as 4 bytes = int, 1 byte = char,ect.. also you whould probley wanna know alot about pointers if your going to write a bytebuffer for writing and reading packets..

This topic is closed to new replies.

Advertisement