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

Legacy_OldTimeRadio

  • Hero Member
  • *****
  • Posts: 2307
  • Karma: +0/-0
NWN Gamespy Server Replacement Project
« Reply #60 on: December 11, 2012, 03:16:54 am »


               Thanks Visavant and everyone else!  I have a question though- is this going to cause any problems with Virusman's NWNCX "Client Extender" or that kind of thing?

Also, no backups on the client machines of the modified executables?  Did I understand that correctly?  That's not wise.  Users can get themselves into turrible trouble in situations like that.

Nobody wants to download 300 megs for a critical rebuild to get another copy of the exe.  Not trying to sound harsh, just being blunt because I'm making dinner at the same time. P.S. In my haste, if I'm misunderstanding something, apologies!
               
               

               


                     Modifié par OldTimeRadio, 11 décembre 2012 - 03:20 .
                     
                  


            

Legacy_Visavant

  • Jr. Member
  • **
  • Posts: 54
  • Karma: +0/-0
NWN Gamespy Server Replacement Project
« Reply #61 on: December 11, 2012, 03:34:20 am »


               

OldTimeRadio wrote...

Thanks Visavant and everyone else!  I have a question though- is this going to cause any problems with Virusman's NWNCX "Client Extender" or that kind of thing?


Nope.

OldTimeRadio wrote...
Also, no backups on the client machines of the modified executables?  Did I understand that correctly?  That's not wise.  Users can get themselves into turrible trouble in situations like that.
Nobody wants to download 300 megs for a critical rebuild to get another copy of the exe.  Not trying to sound harsh, just being blunt because I'm making dinner at the same time. P.S. In my haste, if I'm misunderstanding something, apologies!


They won't pull the full 300MB, only the exe itself. I'll write in an update so players can check / uncheck by default for a "original copy".
               
               

               
            

Legacy_Borrie BoBaka

  • Jr. Member
  • **
  • Posts: 59
  • Karma: +0/-0
NWN Gamespy Server Replacement Project
« Reply #62 on: December 11, 2012, 06:23:51 am »


               The ability to revert the change should put concerns of altering things to ease, players should feel comfortable about using this replacement, it should feel pretty seamless.

I'm also glad to know that multiple fixes can be supported by NWNCore so we continue to have a unified playerbase, despite other methods being used in tandem.
               
               

               


                     Modifié par Borrie BoBaka, 11 décembre 2012 - 06:26 .
                     
                  


            

Baaleos

  • Administrator
  • Hero Member
  • *****
  • Posts: 1916
  • Karma: +0/-0
NWN Gamespy Server Replacement Project
« Reply #63 on: December 11, 2012, 09:57:31 am »


               The patcher could in theory be built to have a patch / unpatch feature.
If we know the original signature/byte information of the address we are editing, we should be able to restore it.
               
               

               
            

Legacy_Melkior_King

  • Full Member
  • ***
  • Posts: 234
  • Karma: +0/-0
NWN Gamespy Server Replacement Project
« Reply #64 on: December 11, 2012, 10:44:08 am »


               The patcher I've written in Liberty Basic allows you to patch and revert both files (nwmain and nwserver) individually, very quickly and very easily.  Run patcher.  Click two buttons.  Exit.  Patch done.  Repeat and the patch is reverted.

The patcher refuses to touch the files unless it can confirm that the location in the file which it's going to change contains the correct data to be changed.  That's the equivalent of checking the version number.  In fact, it's probably better.
               
               

               
            

Baaleos

  • Administrator
  • Hero Member
  • *****
  • Posts: 1916
  • Karma: +0/-0
NWN Gamespy Server Replacement Project
« Reply #65 on: December 11, 2012, 11:23:07 am »


               I've just finished messing around with some Memory / Signature finding classes I have in C#

Im going to bundle the functionality into my PW Resource Downloader (which gets automatically updated on client machines)

my players at least will have the option of automatically patching.
I didnt realise how easy it was to change the master server URL.

Btw - If we need somewhere with hosting capabilities - I have 2 Dedicated servers hosted inside
https://www.linx.net/

These are located inside the London Internet Exchange - with direct access to the web without having to pass through ISP. Unlimited Bandwidth, and very high speed Web Accces.

In case thats of use?

Also - I was wondering, how hard is it to make an extra button on the nwn server browser?
If we were making a C# or WIndows Form application that can browse servers - one of the really useful things to add, would be the ability to jump to that PW's server, or to automatically download content for that server.

This is easy when talking about a Windows Form application,
Not so easy when talking about NWN - Im just wondering if anyone has ever attempted to modify the in-game server browser?
eg - add an extra button to the server info display - that can launch a browser?

It just occurs to me that if we are going to recreate the master server, maybe we could add in improvements too.
Plus - if players want to use this master server, they are going to have to download a patch/implement a patch already - optional extras wouldnt be much of a stretch?
               
               

               


                     Modifié par Baaleos, 11 décembre 2012 - 11:45 .
                     
                  


            

Legacy_leo_x

  • Sr. Member
  • ****
  • Posts: 403
  • Karma: +0/-0
NWN Gamespy Server Replacement Project
« Reply #66 on: December 11, 2012, 12:21:26 pm »


               

Baaleos wrote...
Also - I was wondering, how hard is it to make an extra button on the nwn server browser?
If we were making a C# or WIndows Form application that can browse servers - one of the really useful things to add, would be the ability to jump to that PW's server, or to automatically download content for that server.

This is easy when talking about a Windows Form application,
Not so easy when talking about NWN - Im just wondering if anyone has ever attempted to modify the in-game server browser?
eg - add an extra button to the server info display - that can launch a browser?

It just occurs to me that if we are going to recreate the master server, maybe we could add in improvements too.
Plus - if players want to use this master server, they are going to have to download a patch/implement a patch already - optional extras wouldnt be much of a stretch?


At least a few people, myself included, expressed an interest in doing something like this.  I was messing around with a few ideas and I wondered if server descriptions could be polled by one of these gamespy/master server projects.  Maybe it's even already included in the gamespy protocol with all the other info?

Hosts that wanted to could opt in by putting some agreed upon XML format in their server descriptions which could then be propigated through the web interfaces that are being made (or into some external clients), which in turn could expose the features like you described above... At least a link to a homepage/forum.  It wouldn't need any extra curation that way.

In any case, just an idea to add to the pile.
               
               

               


                     Modifié par pope_leo, 11 décembre 2012 - 12:24 .
                     
                  


            

Legacy_ehye_khandee

  • Hero Member
  • *****
  • Posts: 1415
  • Karma: +0/-0
NWN Gamespy Server Replacement Project
« Reply #67 on: December 11, 2012, 01:01:20 pm »


               Pope_leo,
just a FYI, each server has a .txt file on it (well ok the file is optional) but it is intended to be polled by gamespy to populate the servers' details page - that text could be tapped (if exists) to populate your proposed interface.

Be well. Game on!
GM_ODA
http://playnwn.com
Server IP 66.232.100.90
ArgentumRegio
               
               

               
            

Legacy_leo_x

  • Sr. Member
  • ****
  • Posts: 403
  • Karma: +0/-0
NWN Gamespy Server Replacement Project
« Reply #68 on: December 11, 2012, 01:27:48 pm »


               

ehye_khandee wrote...

Pope_leo,
just a FYI, each server has a .txt file on it (well ok the file is optional) but it is intended to be polled by gamespy to populate the servers' details page - that text could be tapped (if exists) to populate your proposed interface.

Be well. Game on!
GM_ODA
http://playnwn.com
Server IP 66.232.100.90
ArgentumRegio


It looks like ServerDesc.txt works for NWN2 also.  I think it would be quite advantageous to have that information at the masterserver/gamespy replacement  web interface level, if it's feasible.
               
               

               


                     Modifié par pope_leo, 11 décembre 2012 - 01:31 .
                     
                  


            

Legacy_Melkior_King

  • Full Member
  • ***
  • Posts: 234
  • Karma: +0/-0
NWN Gamespy Server Replacement Project
« Reply #69 on: December 11, 2012, 01:42:47 pm »


               For anyone thinking of writing an updater, here are the decimal offsets to the strings in each file which point to the gamespy server usually.
nwmain.exe=5380111
nwnserver.exe=2484135
Normally these locations should contain the string: master.gamespy.com
The string for the server being built by Visavant is: master.nwncore.net

Please wait until Visavant says the server is ready before permanently changing your exe files.
               
               

               
            

Baaleos

  • Administrator
  • Hero Member
  • *****
  • Posts: 1916
  • Karma: +0/-0
NWN Gamespy Server Replacement Project
« Reply #70 on: December 11, 2012, 02:39:01 pm »


               Im not sure - but I think the ServerDesc.txt   info is truncated to something like 200-255 characters.

I've had difficulty getting entire descriptions to fit in it.

I can sort of understand why - bandwidth an all.
Similar to why tlk references are used to send communication from server to client.
Perhaps it would be possible to either.

1. Increase the string length visible/transmitted
2. Have it display from another location?  
eg - We put a url into the ServerDesc.txt and then the client will actually load the text from that location, instead of the server or master server.

This shifts the bandwidth to the client, opposed to the server or master server having to strain under the increased data transmission.
               
               

               
            

Legacy_leo_x

  • Sr. Member
  • ****
  • Posts: 403
  • Karma: +0/-0
NWN Gamespy Server Replacement Project
« Reply #71 on: December 11, 2012, 03:21:53 pm »


               Ah, I forgot that it truncates.  But, I think you're right, 255 chars would be enough to work with.  Probably for the best so that no one got any crazy ideas.
               
               

               
            

Legacy_OldTimeRadio

  • Hero Member
  • *****
  • Posts: 2307
  • Karma: +0/-0
NWN Gamespy Server Replacement Project
« Reply #72 on: December 11, 2012, 03:29:04 pm »


               @Visavant - Thank you for the reply!

@Baaleos - Actually, that truncation was happening on the GameSpy server side, not on the NWN side.  I'm 99.99% sure about that.  There was actually a big stink about it years and years ago.  GameSpy used to pass on the full information but then began truncating it.  I'm not sure if that makes any difference to what's being talked about, tho.
               
               

               
            

Legacy_AlthorDeMalavir

  • Newbie
  • *
  • Posts: 22
  • Karma: +0/-0
NWN Gamespy Server Replacement Project
« Reply #73 on: December 11, 2012, 03:58:02 pm »


               I can make a web page in PHP, builders can put her server IPs and the page will show a server list with player number, ping, server name, description, etc and downoad a txt file with servers IPs for general porpouses.

If you want i can make this web page.
               
               

               
            

Baaleos

  • Administrator
  • Hero Member
  • *****
  • Posts: 1916
  • Karma: +0/-0
NWN Gamespy Server Replacement Project
« Reply #74 on: December 11, 2012, 04:05:12 pm »


               If it was the master server that was truncating it - then perhaps this works in our favor.
Who says it has to be truncated now?