JonStelly

Members
  • Content count

    847
  • Joined

  • Last visited

Community Reputation

127 Neutral

About JonStelly

  • Rank
    Advanced Member
  1. If you're only building on Windows look at the __COUNTER__ macro.
  2. DirectX Summer Update 2004 is out

    Just write a networking library that's source compatible with DirectPlay. You could probably even sell it if it performed well enough. Make it work on Linux for an added bonus.
  3. Streaming Game Content over TCP/IP: A Discussion

    It's not "too" bad, but this is probably the easiest option under the conditions you've mentioned. Take a look at a sourceforge project ext2fsd: http://sourceforge.net/projects/ext2fsd/ Basically you want to create a filesystem driver that forwards all requests to a network server.
  4. The final version of the Summer Update is out, check out the new Common Framework, it's pretty slick. Release Notes SDK Extras Redistributable EDIT: This board hates me (links no worky) edit - Coder: Fixed links [Edited by - Coder on July 27, 2004 1:53:13 AM]
  5. You should ask this on the DX beta newsgroups, just to make sure it's not a beta bug. I'm assuming that's what you're using from the UI components, ignore me if I'm wrong.
  6. Add the header files to the project?
  7. Messages not getting sent...

    TCP or UDP? With UDP packets can be dropped, it's your responsibility to guarantee they arrive at their destination.
  8. Messages not getting sent...

    The short answer is: No The return value from send() is the number of bytes sent but they haven't been acked yet(if you're talking about TCP) so it's possible they get lost in transmission or the remote host (or a route between you and it) goes down before the data is received, the data never gets there. With TCP any packet lost in transmission will be resent until acknowledged, since UDP isn't reliable you'll need to develop your own ack system if you want to guarantee the data arrives using UDP.
  9. Winsock vrs DirectPlay

    If a "seasoned" multiplayer game developer told you that, then I'd question how seasoned he is. There are reasons to use Winsock, and reasons to use DirectPlay but reliability isn't one of them.
  10. TcpClient.Connect() can accept a hostname and port number. You can try the method above, or try changing to the method that accepts an IPEndPoint. I'd guess it's a DNS related problem too, I've used TcpClient before and the Connect() method didn't take anywhere near 10 seconds.
  11. Torque Engine?

    I bought a license a couple years ago. I was completely unimpressed by a total lack of documentation. The community boards were ok, but it was like you were expected to learn the entire engine just by looking through code. It might be better now, but I kind of doubt it, and even if it is, you're dealing with a what, 5 year old engine?. If I had my choice of writing my own game engine using DirectX and the Microsoft docs, or using Torque and reading through the source code, I'd pick DirectX any day of the week. The only strong point was that it has some "acceptable" editors for geometry and the built-in scripting.
  12. getsockname() Quote:The getsockname function retrieves the current name for the specified socket descriptor in name. It is used on the bound or connected socket specified by the s parameter. The local association is returned. This call is especially useful when a connect call has been made without doing a bind first; the getsockname function provides the only way to determine the local association that has been set by the system. On call, the namelen parameter contains the size of the name buffer, in bytes. On return, the namelen parameter contains the actual size in bytes of the name parameter. The getsockname function does not always return information about the host address when the socket has been bound to an unspecified address, unless the socket has been connected with connect or accept (for example, using ADDR_ANY). A Windows Sockets application must not assume that the address will be specified unless the socket is connected. The address that will be used for the socket is unknown unless the socket is connected when used in a multihomed host. If the socket is using a connectionless protocol, the address may not be available until I/O occurs on the socket.
  13. Dplay class

    Yes, at first glance that's almost exactly what I do. I have some things I do in the static message handler, but it's really just meant for the callback, all the important logic goes into a virtual function for handling messages.
  14. Mono Project released!

    I haven't used mono for anything yet, but Qt# (http://qtcsharp.sourceforge.net/) would be my first pick for a cross-platform GUI in C#.
  15. UDP or TCP for MMORPG?

    The slacker way of doing this: both. Open a TCP socket for reliable/ordered data then send position updates using UDP. Later on you can move to using all UDP if you want and build a reliability layer on top of UDP, or send position updates over TCP if it's not a problem.