Announcement

Collapse
No announcement yet.

Directq MP problems

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #16
    That would certainly make me happy anyways

    Comment


    • #17
      Another test build to Nitro.
      IT LIVES! http://directq.blogspot.com/

      Comment


      • #18
        Ok Well when i connect to the server now i connect and then see the game for a split second then i disconnect. So their is improvment

        here is what i get:


        Hope this is a improvement !

        Thanks for the hard work on this

        NITRO
        http://euroquake.webs.com

        Comment


        • #19
          OK, looks like we're getting somewhere with this.

          I now get the very same from my machine. I have been able to connect OK from JoeQuake though. It looks like a malformed net message forcing a disconnect here, so I just need to track that down.

          @Baker - I just dumped net_dgrm.c from JoeQuake into DirectQ, and twiddled with it until it compiled OK. This seems to be the critical piece of code (in _Datagram_Connect):
          Code:
          		clientsock = dfunc.OpenSocket(0);
          		if (clientsock == -1)
          			goto ErrorReturn;
          		dfunc.CloseSocket(newsock);
          		newsock = clientsock;
          		sock->socket = newsock;
          Off to bed now and tomorrow night's my pub night, so it will be Saturday before I can pick this up again.
          Last edited by MH; 06-03-2010, 05:09 PM.
          IT LIVES! http://directq.blogspot.com/

          Comment


          • #20
            Ok gl and thanks for the help !

            http://euroquake.webs.com

            Comment


            • #21
              For what it's worth:

              This is what the server console has to say about it:
              "SZ_GetSpace: overflow"

              and this:

              "SV_ReadClientMessage: badread"

              Comment


              • #22
                Yup, that fits the theory that there's something bad in the network transmission and that only happens on a ProQuake server. I've been able to reproduce it using a local ProQuake dedicated server too, so I'll be able to run that in the debugger now and see what's causing it from both sides of the connection.

                Till Saturday!
                IT LIVES! http://directq.blogspot.com/

                Comment


                • #23
                  Bah, I'm 99% sure it's fixed. PM to Nitro.

                  It was ProQuake's hacky precise angles that were doing it.

                  This needs a heavy working over to make certain that it's not going to interfere with the 5 or 6 other protocols DirectQ supports...
                  IT LIVES! http://directq.blogspot.com/

                  Comment


                  • #24
                    wow thanks a billion mate. Working great. Sorry to be a pain

                    So much for bedtime huh?
                    http://euroquake.webs.com

                    Comment


                    • #25
                      MH, what all did you do here to go from a "level 1" NAT fix to a "level 2" NAT fix.

                      This might help some other engine in the future (like Quakespasm or FitzQuake).
                      Quakeone.com - Being exactly one-half good and one-half evil has advantages. When a portal opens to the antimatter universe, my opposite is just me with a goatee.

                      So while you guys all have to fight your anti-matter counterparts, me and my evil twin will be drinking a beer laughing at you guys ...

                      Comment


                      • #26
                        Pretty much what I said above - a wholesale replacement of my net_dgrm.cpp with the net_dgrm.c from JoeQuake, and adding in the precise aim stuff. The code I gave above (opening a new socket then closing the original one on the client side) seems to be the critical item for this, but I'd need to test a little more to confirm that. So far it seems totally benign on non-PQ and non-NATted servers so the sock->mod and sock->mod_version conditions could probably go.

                        The precise aim stuff is really a semi-protocol modification which was required to prevent the instant disconnect. That's probably a good thing for all clients to have so that they can connect to PQ servers anyway, but it still needs some more massaging in order to play nice with multiple protocol support.

                        The current plan is that I should be in a position to test properly from behind a NAT device over the weekend so I can straighten stuff out a little better and write it all up.

                        I think Nitro deserves a lot of credit here for reporting it in the first place, being a willing and cheerful tester, and feeding back with good info. Peg too for the server console info which put me on the trail of the precise aim stuff.
                        IT LIVES! http://directq.blogspot.com/

                        Comment


                        • #27
                          well test it for about an hour is running great.
                          No connection problems at all. congrats and ty again

                          Kind Regards
                          NITRO
                          http://euroquake.webs.com

                          Comment


                          • #28
                            Bah, I ran into the exact same problem with the precise angles when I was fixing Darkplaces to connect to ProQuake servers, I wish I noticed this thread sooner, could have saved you some pain.

                            Comment


                            • #29
                              Originally posted by RocketGuy View Post
                              Bah, I ran into the exact same problem with the precise angles when I was fixing Darkplaces to connect to ProQuake servers, I wish I noticed this thread sooner, could have saved you some pain.


                              No bother mate.

                              Oh yeah; source code: Download Keep the GPL weenies happy.zip from Sendspace.com - send big files the easy way and exe: Download DirectQ - Test 3.zip from Sendspace.com - send big files the easy way

                              You're advised to read the readme that comes with the code, but in summary the only reason I've released it is for GPL compliance. There are going to be subtle interactions between the multiple protocols DirectQ supports and the new code, which will need to be worked out. Any engine compiled from this should NOT be considered suitable for general purpose use, but MAY be used in specific cases where the same problem is encountered. Don't consider any of the extra features that the PQ netcode supports to be in any way "finished"...
                              IT LIVES! http://directq.blogspot.com/

                              Comment

                              Working...
                              X