Advertisement

DPlay for MMOG - why so bad?

Started by November 24, 2003 02:01 PM
24 comments, last by Synth0id 21 years, 2 months ago
The worst part about it as far as I''m concerned is that it''s proprietary and that it''s platform specific.

Suppose, for example, that someone generously offers to let you host your server on their ISP for free but it''s a stricly linux-based service (or even MacOSX). If you''ve done things the "right way", you just recompile for the new platform and you''re set. Flexibility is usually a good thing-- especially when it comes relatively cheap.

Like someone said, it''s not very complicated to roll your own and could probably be done reliably in a month or less. It''s worth it to have something you have complete control over.

If nothing else, make sure your networking layer is insulated so that if you do decide later to move away from DPlay, you can without reworking your whole engine.

bpopp (bpopp.net)
@RonHiler
quote:
Umm, a year or two to create a MMOG with a small team? Are you sure? Doesn''t seem like enough time to me, even if you use DPlay. Of course, you know your project/team better than I do.


We aren''t going for the next EQ2 here, I''m a firm believer in the "first time around take it easy" principle

@bpopp

Our network layer is completely "insulated". That was one of our biggest design decisions when we first started out. We are to the point now where it is time to implement a networking API underneath it now. I like to think that we''re pretty prepared if worse comes to worse

I''ll keep you guys posted on my progress and maybe write an article on our experiences once we get closer to the end of development.

Regards,
synth0id
There is no point in doing anything at all, you'll die pretty soon anyway.
Advertisement
quote:
Original post by Imperil
mySQL does NOT have any stored procedures, which is why it is rendered helpless when compared to MS SQL and Oracle.




MySQL version 4 and up does have stored procedure support:
http://www.mysql.com/products/mysql/index.html


Correct me if I''m wrong but doesn''t DirectPlay have more overhead than UDP or TCP.
More overhead that UDP because of its reliable/sequenced options, but not more than TCP.

I may be wrong...but I doubt it.

synth0id
There is no point in doing anything at all, you'll die pretty soon anyway.
Mysql is suppose to have stored procedures in 5.0. Current version is 4.1.
- onebeer
quote:
Original post by onebeer
Mysql is suppose to have stored procedures in 5.0. Current version is 4.1.


You are right! thanx
Advertisement
quote:
Original post by Imperil
Shadowbane - MS SQL



Out of curiosity. You said:

quote:

- Shadowbane I spoke to two developers at Wolfpack who both iterated that the game is completely driven with SQL.



Did you mean "completely driven with MS SQL"?


quote:

Ultima Online - not sure here anybody know??



I remember reading that UO uses flat files, though I certainly couldn''t provide you with a link or anything like that . It was a while ago and things may have changed anyway.


Hope this helps.
Porting, even if it doesn''t seem to be an important matter to you all, because you think there are no gamers on linux, can play a role. If you want to create an "MMORPG", it might be wise to actually porting your *server* software to unix or linux.

With sockets, porting is no problem. With directplay, on the other hand, you can''t even consider portability between different platforms... Heck, you can''t even communicate with machines that don''t have the latest directplay installed, can you? Winsock 1.1 runs on windows 95, BSD sockets can be ported to any platform that supports POSIX.

Last but not least, I heard that windows had some limitations on the amount of connections. Some screwy businessman decided to limit the amount of processors and connections you could have on the more "affordable" software; this means to run an "MMOG" server, if you rely on TCP connections, you would probably have to buy some "advanced server" version of windows.

Do it yourself, learn something. Don''t rely on moronic implementations which are simply lame approaches to bind your software to a unique platform.



Looking for a serious game project?
www.xgameproject.com

Looking for a serious game project?
www.xgameproject.com
> Last but not least, I heard that windows had
> some limitations on the amount of connections.

The only limitation I know of is the ''WaitForSingleObject()'' call which cannot monitor more than 64 handles. There are other mechanisms for scaling up a server and DPlay uses IOCP instead so this limitation is nul & void. Read chapter 6 of "Network Programming for Microsoft WIndows" by MS Press for the details.

As for actual DPlay performance in an MMORPG setting, check this out first: http://www.microsoft.com/mscorp/corpevents/meltdown2001/ppt/DPScaleNPerf.ppt

> The worst part about it as far as I''m concerned is
> that it''s proprietary and that it''s platform specific.

That''s the only argument I can see that would discount DirectPlay as a solution. You''re stuck with a Microsoft-specific product that can only run a Microsoft OS on *both* server and clients.

-cb


@All

I can live with Windows being the only OS used for both client and server because thats the only OS I have programming experience under; it is where I feel most comfortable with my skills and I''ve had the most OS usage experience under Windows too.

@cbenoi1

I have come to the same conclusion as you about DirectPlay. It is indeed a pretty decent network API for a MMOG, perhaps not the best in all respects, but it''s pro''s do indeed outweigh its con''s.

That link helped reassure my decision and goes into some things that I think will be very usefull when I start stress testing. It was a great read

Thanks guys,
synth0id
There is no point in doing anything at all, you'll die pretty soon anyway.

This topic is closed to new replies.

Advertisement