Author Topic: NWN Gamespy Server Replacement Project  (Read 11453 times)

Legacy_Melkior_King

  • Full Member
  • ***
  • Posts: 234
  • Karma: +0/-0
NWN Gamespy Server Replacement Project
« Reply #210 on: March 14, 2013, 07:56:07 am »


               

painofdungeoneternal wrote...

Melkior_King wrote...

So far as I can see, none of the "replacement" services allow me to simply redirect GS calls so servers are listed and displayed as they used to be.  All I want is a service which gives me the same functionality as GS.  So far, I haven't seen anything which does that.

I could write it myself but nobody seems to want to tell me the protocols used by servers to register with GS.


Not sure what is to tell, if you could do it, you would have already sorted that out. ( hint it's called wireshark and IDA pro )

There is no more gamespy, the protocols are still being sent through as they were before. ( replacing the hosts file allows you to point them at skywings service. )

The still in development NWNX plugin will let it automatically register as the server starts up. ( all of this is already implemented in NWN2 )

There is no way to make it work the way it used to be, the game is aimed at an ip which is deliberately blocking this, you'd have to fix both the client ( like NWNCX has done ) and the server ( via hosts file or sending a new custom message ) both to aim at a new server. By the time you replace both server and client, trying to recreate the old system exactly is a lot harder than just creating a new and modern system ( gamespy isn't even very good to begin with ), not to mention there is a reason those who can recreate it cannot post such since they seem to get letters from lawyers when they do so.

Thanks for the information.  I'll do a search and see what I can find.

I was afraid that there might be legal problems.  I'm not sure if there's anything which can be done about that but my own opinion is that GS is likely to have far bigger problems than just a couple of relatively obscure games using a less than legitimate copy of their protocols.  Problems such as game writers choosing to use services other than GS due to the exorbitant fees now being charged by GS's new owners.

As for aiming the game at an IP, that can be changed by registering a new domain and then patching the files so they look up that new domain instead of the original domain.  Simple and easy.

I already have such a patch but don't have a domain to put into the program.  I was going to use it to patch to Visavant's service but he seems to have abandoned his attempts.  Possibly he is deferring to Skywing's server, but in my opinion Visavant's service would have been a better option overall because it would have been transparent.  Install NWN, run patch, game runs just as it used to except it uses the replacement service instead of GS.
               
               

               
            

Legacy_painofdungeoneternal

  • Sr. Member
  • ****
  • Posts: 313
  • Karma: +0/-0
NWN Gamespy Server Replacement Project
« Reply #211 on: March 14, 2013, 03:16:37 pm »


               

Melkior_King wrote...

painofdungeoneternal wrote...

Melkior_King wrote...

So far as I can see, none of the "replacement" services allow me to simply redirect GS calls so servers are listed and displayed as they used to be.  All I want is a service which gives me the same functionality as GS.  So far, I haven't seen anything which does that.

I could write it myself but nobody seems to want to tell me the protocols used by servers to register with GS.


Not sure what is to tell, if you could do it, you would have already sorted that out. ( hint it's called wireshark and IDA pro )

There is no more gamespy, the protocols are still being sent through as they were before. ( replacing the hosts file allows you to point them at skywings service. )

The still in development NWNX plugin will let it automatically register as the server starts up. ( all of this is already implemented in NWN2 )

There is no way to make it work the way it used to be, the game is aimed at an ip which is deliberately blocking this, you'd have to fix both the client ( like NWNCX has done ) and the server ( via hosts file or sending a new custom message ) both to aim at a new server. By the time you replace both server and client, trying to recreate the old system exactly is a lot harder than just creating a new and modern system ( gamespy isn't even very good to begin with ), not to mention there is a reason those who can recreate it cannot post such since they seem to get letters from lawyers when they do so.

Thanks for the information.  I'll do a search and see what I can find.

I was afraid that there might be legal problems.  I'm not sure if there's anything which can be done about that but my own opinion is that GS is likely to have far bigger problems than just a couple of relatively obscure games using a less than legitimate copy of their protocols.  Problems such as game writers choosing to use services other than GS due to the exorbitant fees now being charged by GS's new owners.

As for aiming the game at an IP, that can be changed by registering a new domain and then patching the files so they look up that new domain instead of the original domain.  Simple and easy.

I already have such a patch but don't have a domain to put into the program.  I was going to use it to patch to Visavant's service but he seems to have abandoned his attempts.  Possibly he is deferring to Skywing's server, but in my opinion Visavant's service would have been a better option overall because it would have been transparent.  Install NWN, run patch, game runs just as it used to except it uses the replacement service instead of GS.


If i were gamespy's lawyer, and i heard there is a reproduction of my entire product, which bypasses the need to pay those fees i just tried charging, I would be very motivated to ensure this does not set a precedent. I actually would want the fans writing letters and being mad at the companies involved and not negating the entire reason my company exists. ( and the guy who did all the gamespy hacking originally did have a lot of lawyers getting involved with what he was doing. )

How is that different than NWNCX? ( which has the advantage of making it so future game modifications can be added by dropping in plugins, and patching is optional, not to mention the full support for NWNx in single player and the other plugins that fix the gamespy request. )

The real difference is you are thinking of patching the server string, so it goes to a new server, where NWNCX is re-reouting a function just like they do in NWNx ( which is where IDA Pro comes in ). Once you do this you not only reaim the original request, but also make it use your code which can do anything you want. This means you are not limited to the original crap via jury rigging, but can redo it so it's faster, better, or bypasses bugs ( the ones they never fixed ), or even adds new functionality just like if you were the original developers.

-- and by using "microsoft detours", you can patch the process leaving all the original files untouched.

( and Virusman put up the source for what he did, so others can review it and expand on it if needed, or use it as a model for doing other plugins, the real issue is not too many folks can understand a disassembler, and most of those are involved in the NWNx forums already, imagine if you are missing haks for a PW and they just download for you as you try to enter the game. )
               
               

               


                     Modifié par painofdungeoneternal, 14 mars 2013 - 03:18 .
                     
                  


            

Legacy_ShockLemZoa

  • Newbie
  • *
  • Posts: 3
  • Karma: +0/-0
NWN Gamespy Server Replacement Project
« Reply #212 on: March 16, 2013, 09:54:07 am »


               

painofdungeoneternal wrote...

Melkior_King wrote...

painofdungeoneternal wrote...

Melkior_King wrote...

So far as I can see, none of the "replacement" services allow me to simply redirect GS calls so servers are listed and displayed as they used to be.  All I want is a service which gives me the same functionality as GS.  So far, I haven't seen anything which does that.

I could write it myself but nobody seems to want to tell me the protocols used by servers to register with GS.


Not sure what is to tell, if you could do it, you would have already sorted that out. ( hint it's called wireshark and IDA pro )

There is no more gamespy, the protocols are still being sent through as they were before. ( replacing the hosts file allows you to point them at skywings service. )

The still in development NWNX plugin will let it automatically register as the server starts up. ( all of this is already implemented in NWN2 )

There is no way to make it work the way it used to be, the game is aimed at an ip which is deliberately blocking this, you'd have to fix both the client ( like NWNCX has done ) and the server ( via hosts file or sending a new custom message ) both to aim at a new server. By the time you replace both server and client, trying to recreate the old system exactly is a lot harder than just creating a new and modern system ( gamespy isn't even very good to begin with ), not to mention there is a reason those who can recreate it cannot post such since they seem to get letters from lawyers when they do so.

Thanks for the information.  I'll do a search and see what I can find.

I was afraid that there might be legal problems.  I'm not sure if there's anything which can be done about that but my own opinion is that GS is likely to have far bigger problems than just a couple of relatively obscure games using a less than legitimate copy of their protocols.  Problems such as game writers choosing to use services other than GS due to the exorbitant fees now being charged by GS's new owners.

As for aiming the game at an IP, that can be changed by registering a new domain and then patching the files so they look up that new domain instead of the original domain.  Simple and easy.

I already have such a patch but don't have a domain to put into the program.  I was going to use it to patch to Visavant's service but he seems to have abandoned his attempts.  Possibly he is deferring to Skywing's server, but in my opinion Visavant's service would have been a better option overall because it would have been transparent.  Install NWN, run patch, game runs just as it used to except it uses the replacement service instead of GS.


If i were gamespy's lawyer, and i heard there is a reproduction of my entire product, which bypasses the need to pay those fees i just tried charging, I would be very motivated to ensure this does not set a precedent. I actually would want the fans writing letters and being mad at the companies involved and not negating the entire reason my company exists. ( and the guy who did all the gamespy hacking originally did have a lot of lawyers getting involved with what he was doing. )

How is that different than NWNCX? ( which has the advantage of making it so future game modifications can be added by dropping in plugins, and patching is optional, not to mention the full support for NWNx in single player and the other plugins that fix the gamespy request. )

The real difference is you are thinking of patching the server string, so it goes to a new server, where NWNCX is re-reouting a function just like they do in NWNx ( which is where IDA Pro comes in ). Once you do this you not only reaim the original request, but also make it use your code which can do anything you want. This means you are not limited to the original crap via jury rigging, but can redo it so it's faster, better, or bypasses bugs ( the ones they never fixed ), or even adds new functionality just like if you were the original developers.

-- and by using "microsoft detours", you can patch the process leaving all the original files untouched.

( and Virusman put up the source for what he did, so others can review it and expand on it if needed, or use it as a model for doing other plugins, the real issue is not too many folks can understand a disassembler, and most of those are involved in the NWNx forums already, imagine if you are missing haks for a PW and they just download for you as you try to enter the game. )



Snap! Make the packets work for us. I can dig it! ':ph34r:'
               
               

               
            

Legacy_Sadira of Tyr

  • Sr. Member
  • ****
  • Posts: 299
  • Karma: +0/-0
NWN Gamespy Server Replacement Project
« Reply #213 on: March 23, 2013, 12:47:11 pm »


               I have noticed that our server, Legion of Darkstar: Sword Coast Adventures, is now listed on the nwnlist.com website, and is in the NWNCX game listing as well.

A big thank you from me to all of you involved in getting our server listed.

Thank you very much. 'Posted
               
               

               
            

Legacy_painofdungeoneternal

  • Sr. Member
  • ****
  • Posts: 313
  • Karma: +0/-0
NWN Gamespy Server Replacement Project
« Reply #214 on: March 23, 2013, 03:18:05 pm »


               Side effect of "Never Launcher", after i get that released you, or your players would be able to add/update your server being listed with that.
               
               

               
            

Legacy_Sadira of Tyr

  • Sr. Member
  • ****
  • Posts: 299
  • Karma: +0/-0
NWN Gamespy Server Replacement Project
« Reply #215 on: March 23, 2013, 04:40:53 pm »


               

painofdungeoneternal wrote...

Side effect of "Never Launcher", after i get that released you, or your players would be able to add/update your server being listed with that.


Ah, that will be so nice. I look forward to seeing it.

You guys are great. 'Posted
               
               

               
            

Legacy_painofdungeoneternal

  • Sr. Member
  • ****
  • Posts: 313
  • Karma: +0/-0
NWN Gamespy Server Replacement Project
« Reply #216 on: March 29, 2013, 08:21:29 pm »


               Are there any other PW admins out there, or players on PW's, whose PWs are not showing up in NWNCX or the other programs that use Skywings API.

I have been looking for sources of direct connect addresses via various means ( googling to find PW website forums, grabbing them from the vault and where i see they have posted direct connects in the forums )

Until i release my program and it's users ( hoping it actually has users of course ) help by crowd sourcing the work ( when they direct connect it can relay such info to the API so it can make that server known to other players ) I am trying to manually look for servers which are not listed, or other similar flaws in what is listed, and get them corrected.
               
               

               
            

Legacy_DM Veil

  • Newbie
  • *
  • Posts: 7
  • Karma: +0/-0
NWN Gamespy Server Replacement Project
« Reply #217 on: March 30, 2013, 06:31:36 am »


               I've been trying to download NWNCX lately but the link on the website seems down? Haven't seen anyone else post about an issue, so is it just me?
               
               

               
            

Legacy_The Amethyst Dragon

  • Hero Member
  • *****
  • Posts: 2981
  • Karma: +0/-0
NWN Gamespy Server Replacement Project
« Reply #218 on: March 30, 2013, 07:31:07 am »


               

DM Veil wrote...

I've been trying to download NWNCX lately but the link on the website seems down? Haven't seen anyone else post about an issue, so is it just me?

I went ahead and uploaded a copy I downloaded a month or so ago to the neverwinternights.info site for times when the original source for NWNCX isn't available.
               
               

               
            

Legacy_Lazarus Magni

  • Hero Member
  • *****
  • Posts: 1837
  • Karma: +0/-0
NWN Gamespy Server Replacement Project
« Reply #219 on: April 01, 2013, 04:27:37 am »


               

Lazarus Magni wrote...

I see. Well I can tell you this. According to:
http://www.neverwint...lders_hosts.htm

"To get listed with a couple of existing services, add the following lines to the end of the file, save, and restart nwserver.exe.


199.193.152.27 nwmaster.bioware.com # SkywingL's substitute listing server
198.23.165.35 nwn.master.gamespy.com # Visavent's gamespy replacement"

Our server has been experiencing some major issues recently. Most recently, we had a mass boot of all players according to the nwn server log. The exact same time stamp in the fire wall log shows a connection to:
198.23.165.35

Needless to say neither I, nor our current owner/host were too thrilled about this.


Lazarus Magni wrote...

SkywingL's IP was not the culprit as far as we have been able to determine, Visavent's appeared to be. Glad to hear admins routing game spy requests to skywing's doesn't preclude default users from access though.

Yes you did help us get listed initially Pain, since the self registration link is non-functional. Thank you again for that. Although despite your listing we were dropped from their list not long ago, until our host made the host file edit.

I am not a big fan of an exclusive "boys club" in fact I feel kinda like an idiot having endorsed something that can negatively affect servers.

I will have to gracefully (if that is even possible at this point) bow out of being the testing dummy for this stuff from here on out though. Not to mention an advocate for players and other aDMins . Our owner/host is not too happy with the current state of affairs, nor am I, and our players deserve better.



I stand corrected 199.193.152.27 also seems to mass auto boot players from servers... We had multiple instances this past weekend where our players were being auto booted, and firewall logs show a correlation to reporting to this IP (host.ect edit) at the exact same time... Needless to say I can not endorse this alternative to gamespy any longer. I removed all reference to this on all the stickeys I have been involved in setting up (the 2 here, the one on the NWN face book page, and the one on gog.com.) I think this solution has incredible potential, but I certainly can't endorse it if my own personal experience (or anyone elses) with it results in auto booting, not to mention damn near DOS attacks on the server using it. No thanks I will pass on that. All those stickeys are open so if someone else wants to endorse those alternatives to Gamespy, feel free, but I will pass until our experice with it changes permanently.

"That's life"- Frank Sinatra
               
               

               


                     Modifié par Lazarus Magni, 01 avril 2013 - 03:52 .
                     
                  


            

Legacy_painofdungeoneternal

  • Sr. Member
  • ****
  • Posts: 313
  • Karma: +0/-0
NWN Gamespy Server Replacement Project
« Reply #220 on: April 01, 2013, 05:01:33 am »


               Have you diagnosed the issue with skywing ( ie sent him a pm about it? )

He generally is very helpful, even has gone so far to attach a remote debugger to various Pw's to diagnose their issues. When it seems it's caused by his server, he's very likely going to figure out why and if it's his issue, have an update in a few days. ( and probably help out on other side issues that are brought up )

From the other feedback here and elsewhere, it does not seem like what you are describing is universal, seems to actually be a lot of good comments about those who did this. But also, the way things happen, is someone has to "make" them work. ( I am personally going to have a lot of trouble putting up a NWN1 PW with a playerbase just to figure out what is going on here )

If you can post your current ip changes ( or others you know about ), i can use my app to keep it updated. I am actually looking for new ip's as i am trying to test how this works, tracing the code in the debugger each time i get a new server ip which is active but not in the tracker.

( there is a NWN2CR IRC channel, sticky in the NWN2 main forums here, which is where a lot of very smart folks hang out for both NWN1 and NWN2, Elven, Zebranky, Skywing, Virusman and a few others, have all been known to help sort out issues like this, especially ones that can affect the overall community )
               
               

               


                     Modifié par painofdungeoneternal, 01 avril 2013 - 04:12 .
                     
                  


            

Legacy_SkywingvL

  • Full Member
  • ***
  • Posts: 115
  • Karma: +0/-0
NWN Gamespy Server Replacement Project
« Reply #221 on: April 01, 2013, 06:25:09 am »


               

Lazarus Magni wrote...
tand corrected 199.193.152.27 also seems to mass auto boot players from servers... We had multiple instances this past weekend where our players were being auto booted, and firewall logs show a correlation to reporting to this IP (host.ect edit) at the exact same time... Needless to say I can not endorse this alternative to gamespy any longer. I removed all reference to this on all the stickeys I have been involved in setting up (the 2 here, the one on the NWN face book page, and the one on gog.com.) I think this solution has incredible potential, but I certainly can't endorse it if my own personal experience (or anyone elses) with it results in auto booting, not to mention damn near DOS attacks on the server using it. No thanks I will pass on that. All those stickeys are open so if someone else wants to endorse those alternatives to Gamespy, feel free, but I will pass until our experice with it changes permanently.

"That's life"- Frank Sinatra


I'm not aware of any issues to this sort with the tracker that I maintain (I can't speak to visavant's).  I suspect that you are inferring a false correlation; the tracker will normally periodically (on the order of 15 seconds or so) check the liveness of servers that are known to be responding so that current data is available to API clients.  As such, it is not surprising that you would see a regular, though small trickle of traffic from the tracker while your server is operational.  The amount of traffic from the tracker is insignificant compared to an active, connected game client and hardly fits the definition of a "DOS attack".

You're welcome to review the code at https://github.com/S.../nwn2dev-public if you like.  The queries sent by the tracker are the same as a regular game client would send if it had a server list received from GameSpy and went to view details about a server (or had a server in the favorites/history listing, etc.).

Without more information as to what sort of problems you are experiencing exactly (is the server responsive on the console or is the process blocked when this is occurring?), it is difficult to further narrow down the cause of your problems.  If the server process is blocked completely for an extended duration (causing clients to give up waiting for traffic from the server and time out), taking a dump of the process while it is blocked for an extended period of time may help ascertain the cause of the problem.  For example, using the MySQL plugin with a remote SQL server may be prone to causing such an issue if the SQL server goes away, as the MySQL plugin operates synchronously.

There may be a number of other potential causes without further narrowing down the problem scope, but I don't see a likely connection to the tracker infrastructure.  Again, since the tracker infrastructure will periodically update status about active servers, it is likely that there will have been recent traffic to/from it any time a problem has occurred, if the problem was not a network connectivity failure.
               
               

               


                     Modifié par SkywingvL, 01 avril 2013 - 05:32 .
                     
                  


            

Legacy_Lazarus Magni

  • Hero Member
  • *****
  • Posts: 1837
  • Karma: +0/-0
NWN Gamespy Server Replacement Project
« Reply #222 on: April 01, 2013, 09:27:38 am »


               All I know is this:

1) We had multiple auto boots of our players the last couple days. Looking at both the server logs (nwn logs), and the firewall logs show a correlation between the auto boots and your GS replacement server connecting to our server.

The server also completely locked up, with 100 CPU usage on the nwserver process.

2) When I commented out your server from our host.ect file, and restarted (shut down, but due to nwnx, restarted) the nwserver process the problems immediately stoped.

Needless to say, there seemes to be a direct correlation. And both myself, and our host have concluded, no thanks, we will pass on all that until if/when the issue is resolved.

If you think I have all the time in the world to be your beta tester, you don't know me at all. I actually have a real life, and being involved in hosting a NWN1 server is purely recreational. I don't make any money off this, in fact quite the opposite. I am not keen on being an untentional guinepig, and subjecting both myself to a bunch of BS, not to mention our players.

Thanks, your efforts in replacing GS funationality are certainly appreciated, but if it is going to result in stuff like this, I will have recomend our world bow out of being a beta tester for it until stuff like this stops. And I certainly am not going to be involved in endorsing it to others either given my own personal experience with it.
Laz

P.S. Yeah... this bites to say the least.
               
               

               


                     Modifié par Lazarus Magni, 01 avril 2013 - 08:39 .
                     
                  


            

Legacy_painofdungeoneternal

  • Sr. Member
  • ****
  • Posts: 313
  • Karma: +0/-0
NWN Gamespy Server Replacement Project
« Reply #223 on: April 01, 2013, 04:11:44 pm »


               Correlation does not mean causation. It means it needs investigation - skywing would likely need to be involved to do that work as he runs said server and can see what is going on in a process. ( as can zebranky, virusman and a few others )  I am not doing the gamespy replacement, I cannot test it. Skywing is very unlikely to keep monitoring your threads- from what i have seen his time is too valuable to be hanging out in forums arguing things when he can actually fix things in the core game.

Note that myself, skywing, etc have a real life too, join the club. No one here is a paid professional, yet the group that benefits includes yourself and your players, and you are saying it's not your job to report issues, and provide feedback when there is an issue? Some how this all magically works perfectly and you want a finished system which has no issues, and which you had to take no part in?

If everyone shares that feeling who runs a PW, then everyone deserves these issues. When our PW was crashing constantly, I kept at it, and worked thru the issues and the ones who benefited were the players, and yes it cost me valuable development time. Sometimes you have to do thing for the community, no one else is going to do it, but then that seems like a bigger problem where every PW is in it for themselves only. The result is seen in overall player counts.

Yes this bites, but to me it's a choice you are making, hopefully another PW makes another choice and is willing to help here. I wish had the time to start a NWN1 PW along with everything else I am doing, just in hopes i can recreate an issue you are reporting. I just don't have that sort of time, nor does Skywing. However, doing what i suggested, sending him a PM, offering to help him review your evidence and doing another test, is probably going to benefit your PW and your players far more than the cost of your valuable time.
               
               

               
            

Legacy_SkywingvL

  • Full Member
  • ***
  • Posts: 115
  • Karma: +0/-0
NWN Gamespy Server Replacement Project
« Reply #224 on: April 01, 2013, 05:49:27 pm »


               

Lazarus Magni wrote...

All I know is this:

1) We had multiple auto boots of our players the last couple days. Looking at both the server logs (nwn logs), and the firewall logs show a correlation between the auto boots and your GS replacement server connecting to our server.

The server also completely locked up, with 100 CPU usage on the nwserver process.


As I mentioned above, a crash dump would be necessary to diagnose what had happened.  Note that there are plenty of bugs in the game server that may cause it to get stuck in a CPU spin loop, which have *nothing* to do with the server tracker infrastructure.  If you follow a chain of reasoning where if there was recent traffic from the tracker at a server disruption, so the tracker must be at fault, you will ALWAYS ascribe every failure to the tracker, because it regularly updates status of known, online servers.

2) When I commented out your server from our host.ect file, and restarted (shut down, but due to nwnx, restarted) the nwserver process the problems immediately stoped.

Needless to say, there seemes to be a direct correlation. And both myself, and our host have concluded, no thanks, we will pass on all that until if/when the issue is resolved.

If you think I have all the time in the world to be your beta tester, you don't know me at all. I actually have a real life, and being involved in hosting a NWN1 server is purely recreational. I don't make any money off this, in fact quite the opposite. I am not keen on being an untentional guinepig, and subjecting both myself to a bunch of BS, not to mention our players.


I'm sorry that you have experienced problems, but I don't believe that they have anything to do with the tracker infrastructure.  You're most likely hitting an unrelated bug that has caused the game to get stuck in an infinite loop somewhere.  The technical evidence available at this time just doesn't support a relation to the tracker.  As mentioned previously, you'll have to gather data if someone is going to diagnose the problem that you are experiencing.

Nobody is forcing you to participate, so you're certainly free not to.  Just like you, I have only limited time available to support my NWN-related projects.  Without further data, however, it's not going to be possible to diagnose the problem you are encountering.  If you're unwilling to obtain that data, then you're certainly free to not participate in the tracker, but I'd ask that you not make claims that the tracker is responsible without us having actually understood the problem (that would be disingenuous).
               
               

               


                     Modifié par SkywingvL, 01 avril 2013 - 04:50 .