Look What I Made! (Server Tracking)

This is a general open discussion for all ALFA, Neverwinter Nights, and Dungeons & Dragons topics.

Moderator: ALFA Administrators

User avatar
NickD
Beholder
Posts: 1969
Joined: Sat Jul 31, 2004 9:38 am
Location: Auckland, New Zealand

Look What I Made! (Server Tracking)

Post by NickD »

NickD's Awesome Server Tracking Informaton

As inspired by the player list on the website, it is a Windows application that shows the server information for whatever servers you want to track (both NWN1 and NWN2). It queries the server directly, and can be refreshed at will, so technically it's a little bit more real time than the list above and doesn't rely on an NWNx4 database implementation. It also runs invisibly by default with an icon in the notification tray, so it's fairly unintrusive. Unfortunately I have yet to work out how to get a list of the players online (or if it's even possible).

I included a sample server list configuration file that includes both the live ALFA servers (free advertising! Rate it highly, so lots of people see it! ;) ). Delete the other examples from the ServerList.txt file if you only want to see those two.

Make sure you read the ReadMe.txt for instructions.

I've already made some improvements/bug fixes that I have not yet uploaded, but I'm hoping this version is good enough. There's still lots to do on it and I didn't want to wait!
Current PCs:
NWN1: Soppi Widenbottle, High Priestess of Yondalla.
NWN2: Gruuhilda, Tree Hugging Half-Orc
HEEGZ
Dungeon Master
Posts: 7085
Joined: Wed Dec 28, 2005 4:17 pm
Location: US CST

Re: Look What I Made! (Server Tracking)

Post by HEEGZ »

Very nice. I will have to try it out later this week when I have some time to tinker. 8)
User avatar
Brokenbone
Chosen of Forumamus, God of Forums
Posts: 5771
Joined: Mon May 16, 2005 1:07 am
Location: London, Ontario, Canada

Re: Look What I Made! (Server Tracking)

Post by Brokenbone »

Neat stuff!

If you happen to see a really "hot" period on the ALFA servers (something more than 0 online and 2 online), consider replacing your 2nd and 3rd screenshots, if looking to positively represent the project. "Ah, ALFA shows zero online, clearly the NASTI application is working!"
ALFA NWN2 PCs: Rhaggot of the Bruised-Eye, and Bamshogbo
ALFA NWN1 PC: Jacobim Foxmantle
ALFA NWN1 Dead PC: Jon Shieldjack

DMA Staff
Veilan
Lead Admin
Posts: 6152
Joined: Mon Jan 05, 2004 3:33 pm
Location: UTC+1
Contact:

Re: Look What I Made! (Server Tracking)

Post by Veilan »

************** Exception Text **************
System.ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection.
Parameter name: index
at System.Collections.ArrayList.get_Item(Int32 index)
at System.Windows.Forms.DataGridViewSelectedRowCollection.get_Item(Int32 index)
at GSServerList.Main.RefreshDetails()
at GSServerList.Main.RefreshList()
at GSServerList.Main.btnRefresh_Click(Object sender, EventArgs e)
at System.Windows.Forms.ToolStripItem.RaiseEvent(Object key, EventArgs e)
at System.Windows.Forms.ToolStripMenuItem.OnClick(EventArgs e)
at System.Windows.Forms.ToolStripItem.HandleClick(EventArgs e)
at System.Windows.Forms.ToolStripItem.HandleMouseUp(MouseEventArgs e)
at System.Windows.Forms.ToolStripItem.FireEventInteractive(EventArgs e, ToolStripItemEventType met)
at System.Windows.Forms.ToolStripItem.FireEvent(EventArgs e, ToolStripItemEventType met)
at System.Windows.Forms.ToolStrip.OnMouseUp(MouseEventArgs mea)
at System.Windows.Forms.ToolStripDropDown.OnMouseUp(MouseEventArgs mea)
at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ScrollableControl.WndProc(Message& m)
at System.Windows.Forms.ToolStrip.WndProc(Message& m)
at System.Windows.Forms.ToolStripDropDown.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
:(
The power of concealment lies in revelation.
User avatar
zicada
Infrastructure Prawn
Posts: 7924
Joined: Thu Apr 04, 2002 10:00 pm
Location: Earth

Re: Look What I Made! (Server Tracking)

Post by zicada »

Brokenbone wrote:Neat stuff!

If you happen to see a really "hot" period on the ALFA servers (something more than 0 online and 2 online), consider replacing your 2nd and 3rd screenshots, if looking to positively represent the project. "Ah, ALFA shows zero online, clearly the NASTI application is working!"
Indeed, please look into this.
"The God of the Old Testament is arguably the most unpleasant character in all fiction: jealous and proud of it; a petty, unjust, unforgiving control-freak; a vindictive, bloodthirsty ethnic cleanser; a misogynistic, homophobic, racist, infanticidal, genocidal, filicidal, pestilential, megalomaniacal, sadomasochistic, capriciously malevolent bully." -- Richard Dawkins
User avatar
zicada
Infrastructure Prawn
Posts: 7924
Joined: Thu Apr 04, 2002 10:00 pm
Location: Earth

Re: Look What I Made! (Server Tracking)

Post by zicada »

Hey, can you send me the sourcecode for this ?

thomas.wirum@gmail.com
"The God of the Old Testament is arguably the most unpleasant character in all fiction: jealous and proud of it; a petty, unjust, unforgiving control-freak; a vindictive, bloodthirsty ethnic cleanser; a misogynistic, homophobic, racist, infanticidal, genocidal, filicidal, pestilential, megalomaniacal, sadomasochistic, capriciously malevolent bully." -- Richard Dawkins
User avatar
zicada
Infrastructure Prawn
Posts: 7924
Joined: Thu Apr 04, 2002 10:00 pm
Location: Earth

Re: Look What I Made! (Server Tracking)

Post by zicada »

I have yet to work out how to get a list of the players online (or if it's even possible).
You would have to code authentication for that, as you only get access to the playerlist then. I'm not sure what their scheme is though, but i'm guessing it's fairly chill plaintext.

Think i'll sniff some packets myself later on when i get some time.
"The God of the Old Testament is arguably the most unpleasant character in all fiction: jealous and proud of it; a petty, unjust, unforgiving control-freak; a vindictive, bloodthirsty ethnic cleanser; a misogynistic, homophobic, racist, infanticidal, genocidal, filicidal, pestilential, megalomaniacal, sadomasochistic, capriciously malevolent bully." -- Richard Dawkins
User avatar
NickD
Beholder
Posts: 1969
Joined: Sat Jul 31, 2004 9:38 am
Location: Auckland, New Zealand

Re: Look What I Made! (Server Tracking)

Post by NickD »

Brokenbone wrote:Neat stuff!

If you happen to see a really "hot" period on the ALFA servers (something more than 0 online and 2 online), consider replacing your 2nd and 3rd screenshots, if looking to positively represent the project. "Ah, ALFA shows zero online, clearly the NASTI application is working!"
I made a bunch of tweaks and fixes last night, so I will be updating the application today or tomorrow. I'll update the screenies then.
Current PCs:
NWN1: Soppi Widenbottle, High Priestess of Yondalla.
NWN2: Gruuhilda, Tree Hugging Half-Orc
User avatar
NickD
Beholder
Posts: 1969
Joined: Sat Jul 31, 2004 9:38 am
Location: Auckland, New Zealand

Re: Look What I Made! (Server Tracking)

Post by NickD »

Veilan wrote:
************** Exception Text **************
System.ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection.
Parameter name: index
at System.Collections.ArrayList.get_Item(Int32 index)
at System.Windows.Forms.DataGridViewSelectedRowCollection.get_Item(Int32 index)
at GSServerList.Main.RefreshDetails()
at GSServerList.Main.RefreshList()
at GSServerList.Main.btnRefresh_Click(Object sender, EventArgs e)
[...]
:(
Looks to me that your either didn't put the ServerList.txt file in the same directory as the application, or you did, but removed all the server setup lines.

Let me know if that is not the case.

Either way, I have already done something to handle this a bit nicer.
Current PCs:
NWN1: Soppi Widenbottle, High Priestess of Yondalla.
NWN2: Gruuhilda, Tree Hugging Half-Orc
User avatar
NickD
Beholder
Posts: 1969
Joined: Sat Jul 31, 2004 9:38 am
Location: Auckland, New Zealand

Re: Look What I Made! (Server Tracking)

Post by NickD »

zicada wrote:Hey, can you send me the sourcecode for this ?

thomas.wirum@gmail.com
If you want to do it for the site, you may be better off with one of the php solutions I ran across... not sure how well they work though, as what I gutted out of them for my thing never seemed to work.

gameq says it works for NWN2 (code here). The important bit I ripped out: http://gameq.cvs.sourceforge.net/viewvc ... iew=markup didn't work for me, but may be due to a difference between C# and php.

NWN1 & NWN2 both appear to be GameSpy2.
Current PCs:
NWN1: Soppi Widenbottle, High Priestess of Yondalla.
NWN2: Gruuhilda, Tree Hugging Half-Orc
User avatar
zicada
Infrastructure Prawn
Posts: 7924
Joined: Thu Apr 04, 2002 10:00 pm
Location: Earth

Re: Look What I Made! (Server Tracking)

Post by zicada »

NickD wrote:
zicada wrote:Hey, can you send me the sourcecode for this ?

thomas.wirum@gmail.com
If you want to do it for the site, you may be better off with one of the php solutions I ran across... not sure how well they work though, as what I gutted out of them for my thing never seemed to work.

gameq says it works for NWN2 (code here). The important bit I ripped out: http://gameq.cvs.sourceforge.net/viewvc ... iew=markup didn't work for me, but may be due to a difference between C# and php.

NWN1 & NWN2 both appear to be GameSpy2.
Thanks,

Was mostly out of curiosity.
"The God of the Old Testament is arguably the most unpleasant character in all fiction: jealous and proud of it; a petty, unjust, unforgiving control-freak; a vindictive, bloodthirsty ethnic cleanser; a misogynistic, homophobic, racist, infanticidal, genocidal, filicidal, pestilential, megalomaniacal, sadomasochistic, capriciously malevolent bully." -- Richard Dawkins
Veilan
Lead Admin
Posts: 6152
Joined: Mon Jan 05, 2004 3:33 pm
Location: UTC+1
Contact:

Re: Look What I Made! (Server Tracking)

Post by Veilan »

NickD wrote:Looks to me that your either didn't put the ServerList.txt file in the same directory as the application, or you did, but removed all the server setup lines.

Let me know if that is not the case.

Either way, I have already done something to handle this a bit nicer.
Did neither, just DLed the files "as is" and dumped them in the same folder.
The power of concealment lies in revelation.
User avatar
NickD
Beholder
Posts: 1969
Joined: Sat Jul 31, 2004 9:38 am
Location: Auckland, New Zealand

Re: Look What I Made! (Server Tracking)

Post by NickD »

zicada wrote:You would have to code authentication for that, as you only get access to the playerlist then. I'm not sure what their scheme is though, but i'm guessing it's fairly chill plaintext.

Think i'll sniff some packets myself later on when i get some time.
I thought I had the right query packet (0xFE, 0xFD, 0x00, 0x00, 0x00, 0x00, 0x00, 0X00, 0xFF, 0X00, 0X00), but all I get back is:

"player_playertype_pcharactername_pcharacterlevel_p"

:?

If you can find a query packet that gets the actual player list, that would be neato!
Current PCs:
NWN1: Soppi Widenbottle, High Priestess of Yondalla.
NWN2: Gruuhilda, Tree Hugging Half-Orc
User avatar
NickD
Beholder
Posts: 1969
Joined: Sat Jul 31, 2004 9:38 am
Location: Auckland, New Zealand

Re: Look What I Made! (Server Tracking)

Post by NickD »

Brokenbone wrote:If you happen to see a really "hot" period on the ALFA servers (something more than 0 online and 2 online), consider replacing your 2nd and 3rd screenshots, if looking to positively represent the project. "Ah, ALFA shows zero online, clearly the NASTI application is working!"
I was looking out all day, waiting for TSM to hit double figures... I've finished my latest range of fixes and will put them up soonish along with the new screenshots to reflect the changes in the look... I'll hold out for a bit to see if TSM gets over 1 player... :lol:

(No, I'm not going to fake the figures. That would be just a bit too tacky)
Current PCs:
NWN1: Soppi Widenbottle, High Priestess of Yondalla.
NWN2: Gruuhilda, Tree Hugging Half-Orc
User avatar
NickD
Beholder
Posts: 1969
Joined: Sat Jul 31, 2004 9:38 am
Location: Auckland, New Zealand

Re: Look What I Made! (Server Tracking)

Post by NickD »

Version 1.1 is now available. If you've already downloaded this program, you only need to copy the new NASTI.exe file over your old NASTI.exe file.

* Fixed a bug that stopped the program working on servers on any port other that 5121.
* When the program is first run, it will now create a file named Settings.txt. This file contains one line, defaulted to 0|5. The first number is to indicate what automatic popups occur, the second number is the number of minutes between automatic refreshes.
* Added a Reload option to the View menu. This will reload the ServerList.txt and Settings.txt files, so the user does not need to restart the program after the files are changed.
* Added a Slim option to the View menu. This will hide the right and detail panels and reduce the width of the application. This creates a less intrusive window for users who would prefer to have the list up on screen instead of relying on the notification popup balloons.
* Added the IP Address, Port, Game Type and PVP to the Server details section. These cover the main server settings I personally look at. I will be happy to review any other details that people would like to be displayed.
* It now handles the refreshing of the popup balloons much better now.
* Various aesthetic changes, such as size changes, transparent icons, etc.
Current PCs:
NWN1: Soppi Widenbottle, High Priestess of Yondalla.
NWN2: Gruuhilda, Tree Hugging Half-Orc
Post Reply