Sign in to follow this  

No DirectPlay9?

This topic is 3857 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

You can use DirectPlay8, though you're probably better off with a networking library such as RakNet or TorqueNL. (I could swear there's one more, but damned if I can remember the name.) Failing that, straight WinSock.

DPlay was deprecated after 8. Actually, everything except Direct3D has now been frozen I believe.

Share this post


Link to post
Share on other sites
Ok I'v been reading stuff but I'm still not sure I thank I should go with DirectPlay8 it seems to be the best way I don't have to have all of the packets make it just most. what I need to know is it really faster?

Share this post


Link to post
Share on other sites
I seem to remember DPlay being a thin wrapper around Winsock, and limiting you feature-wise... which is why everyone abandoned it and just used Winsock. I'm not sure where you got an idea it was faster. Everything will eventually go through winsock... it's the "Win"dows "Sock"et API... how to talk to network hardware.

Share this post


Link to post
Share on other sites
The only advantages that I saw to DPlay was with the matchmaking stuff. After that, almost everything was just as easy (or easier) to do yourself. I agree with Promit about checking out Raknet or just using winsock.

And yea, Direct3D is the only Direct* "component" under active development.

Share this post


Link to post
Share on other sites
You might want to swing by the 'Multiplayer and Network Programming' forum - read through their FAQ and check out recent discussion for some ideas.

Don't even bother with DirectPlay - it's deprecated (and the wording suggests its a security related deprecation), doesn't have good support technology-wise (lots of modern firewalls/routers seem to hate DP) or developer-wise (occasionaly threads get started here and they rarely if ever get any replies - no one else is using it, so you're on your own from the start).

Quote:
Direct3D is the only Direct* "component" under active development.
Typing 'Direct' all the time was causing excessive keyboard wear-and-tear, hence they change IDirect3D**9 to be ID3D10** and all new components start with 'X' instead (XInput, XAudio, XACT...) [grin]

Jack

Share this post


Link to post
Share on other sites
Ok I looked at the Q&As I'm sort of confused the frist one said to use WinSock and the second one said if you are making a action game use UDP but form all the forums I looked at thay said UDP was only in DirectPlay so does WinSock have UDP?

Q2) Should I use DirectPlay or WinSock?
A2) As of Summer Update 2004, Microsoft has put DirectPlay into "sunset" mode, where they will not develop the API further. Microsoft now recommends you use WinSock for networking, until the re-cast X-box Live! technology is rolled out for PCs, probably around Longhorn time-frame. If you're on Linux, MacOS, or some other platform like that, life is easier: you only have regular sockets to work with. Luckily, sockets and WinSock code can look very similar if you stick to the Berkeley sockets functions of WinSock, and avoid WSA functions; you can write quite portable programs with a little bit of thought.

Remember to include <winsock2.h> before including <windows.h> in your win32 program, or compile errors will ensue. Also, always start your WinSock program with WSAStartup( MAKEWORD(2,2), ... ) to get version 2.2 of WinSock, as the older versions have bugs and limitations that you don't want to deal with. Finally, you need to link with ws2_32.lib on Win32 when using WinSock.




--------------------------------------------------------------------------------



Q3) Should I use TCP or UDP?
A3) There are at least four different kinds of games as far as networking is concerned: Turn-based games, Real Time Strategy games, Role Playing Games, and Action Games. Briefly, if you're turn-based, you should go with TCP because it's simpler, unless you need peer-to-peer NAT punch-through. For RTS games, you're usually best off using TCP, although UDP can make sense in extreme cases. For role playing games, the story is less clear -- action-based RPGs with lots of kinetics, like City of Heroes, use UDP, whereas slower RPGs and MUDs often stay with TCP. For action-based games like first-person shooters or racers, you should absolutely use UDP.

Share this post


Link to post
Share on other sites
TCP and UDP are the LOW level packet communications options, all APIs you see (DirectPlay, RakNET, WinSock, etc) sit on top of one or both of those ... or in other words, all packets you send will probably be either TCP or UDP spec protocol transmissions, but you use a higher level programming library to do the sending and recieving ... writing "strait" udp would mean setting all the header bits etc yourself, noone has done that in decades.

Share this post


Link to post
Share on other sites
Hey there, I'm just done some stuff on dplay and Ive set up a server and cliant and it all seems to work ok over the net and lan , but the voice over net was a bit laggy It could have been refind. So Im going to use DPlay8 for now

Share this post


Link to post
Share on other sites
Quote:
Original post by BlazingClaymore
all I need to know is what is the fastest way to send data over the internet for an MMO? what does World Of War Craft use?


Pretty much every network library (Including Winsock and DPlay) support UDP and TCP/IP. I'd guess that WoW uses Winsock and UDP.

There's a bit in the Multiplayer and Network Programming forum about UDP vs TCP/IP. UDP is "faster" but you have to deal with lost, duplicated and out of order packets. TCP/IP gives you guaranteed, in order delivery of data, but is a bit slower.
Most games will use UDP, although they might keep a TCP/IP connection open for other data (A control connection, or for chatting or something like that).

Share this post


Link to post
Share on other sites
Don't you dare start this crap again leave me alone. Don't even post any thing on my threads if your just going to make fun of me. oh and thanks Evil Steve that was the answer I was looking for.

EDIT: (for benefit of other members of the community) struck out part that is no longer relevant - I removed the offending reply.

[Edited by - jollyjeffers on May 22, 2007 6:11:17 AM]

Share this post


Link to post
Share on other sites

This topic is 3857 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this