[Okta Webinar] Learn how to a build a cloud-first strategyRegister Now


MMORPG Client/Server Network Programming Question

Posted on 2006-04-09
Medium Priority
Last Modified: 2012-06-27
1st - Client sends secure data to server to be processed.
2nd - Server takes that secure data and processes it.
3rd - The data processed on the server is sent back to the client securely.

Using C#.NET or VB.NET what is the most efficient networking object to use to achieve a professional level of client/server network programming? TCP? UDP or something?

What is world of warcraft using for example or everquest 2?  Please provide information about this issue.  

My first step is to create a client that communicates securely & efficiently with the server.

Thank you.
Question by:Hepen

Expert Comment

ID: 16420080

The best option is to use a combination of both. High profile networking libraries like OpenTNL and RakNet use them optimally to achieve high percentage of secure and safe packet transfers.

Visit www.opentnl.org OR www.rakkarsoft.com for these libraries. I would also suggest you visit the following website : www.hawksoft.com for a very good network library.

All the best.


Author Comment

ID: 16420231
blackspark do you know of any strong network library that is for VB.NET or C#.NET ?  

Also do you know what world of warcraft or everquest uses?
LVL 20

Accepted Solution

dopyiii earned 1000 total points
ID: 16447020
Well, Blizzard used to use the same network stuff until it was reverse engineered, GPL'd and released as Bnetd (remember battle.net?).  Well, that was shut down and now WoW uses a completely new network library.  Not many details on it as it's in-house.  Here's some info on that: http://en.wikipedia.org/wiki/Battle.net

Everquest actually uses a P2P-based architecture for their network protocol.  There's a good article on engineering EverQuest on IEEE Spectrum: http://www.spectrum.ieee.org/jul05/1561.  There's a not at the bottom on an article that talks about them using P2P protocols as their network backbone.

Here's some more information on what different games use (everquest is not in this list).  I don't know how useful it is to you, but I thought it was interesting: http://l7-filter.sourceforge.net/protocols

If you don't want to reinvent the wheel, I'd go with blackspark's suggestions for libraries.  However, if you want to pull a Blizzard and make something new and unique, go for it.

Here is a good list of popular network APIs that are currently out there: http://irrforge.org/index.php/Network_APIs

Good luck!

Featured Post

New feature and membership benefit!

New feature! Upgrade and increase expert visibility of your issues with Priority Questions.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

What is RenderMan: RenderMan is a not any particular piece of software. RenderMan is an industry standard, defining set of rules that any rendering software should use, to be RenderMan-compliant. Pixar's RenderMan is a flagship implementation of …
Performance in games development is paramount: every microsecond counts to be able to do everything in less than 33ms (aiming at 16ms). C# foreach statement is one of the worst performance killers, and here I explain why.
Please read the paragraph below before following the instructions in the video — there are important caveats in the paragraph that I did not mention in the video. If your PaperPort 12 or PaperPort 14 is failing to start, or crashing, or hanging, …
Is your OST file inaccessible, Need to transfer OST file from one computer to another? Want to convert OST file to PST? If the answer to any of the above question is yes, then look no further. With the help of Stellar OST to PST Converter, you can e…
Suggested Courses

872 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question