GSM : LAN Game Server Monitor : v1.4 : by PaPa & PiRaMidA
Archive contents:
1. GSM.exe - main executable
2. readme.txt - this file
3. GSM.txt - quick description
4. GSMmon.exe - unsupported utility
   (console mode program showing GSM client activity on your LAN)
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

version 1.4 release, June 13, 1998

What is it?
-=-=-=-=-=-
GSM is an easy to use, small yet very powerfull utility that
allows you to monitor Local Area Network game servers, join 
the servers of your choice, create aliases for servers, and 
much more.

GSM has very flexible architecture, so it is capable of supporting
almost every LAN game server. This release supports: Quake, Hexen2,
StarCraft, and Age Of Empires, as a sample of what it can do.

GSM is a Win32 program (thoroughly tested on Windows 95, Windows 95 OSR2, 
Windows 98, and it also should run well on Windows NT), 
no installation is required - just unzip all the files somewhere
and add shortcut to your Start menu or desktop (Win98-optimized beta
would be included in the next release).

NOTE: GSM shows you all servers on your LAN, except those that run on 
      your computer. It's done on purpose, normally there's an easier
      way to find running server on your own computer.

Full interface description:
-=-=-=-=-=-=-=-=-=-=-=-=-=-
Take a quick tour through numerous available options and buttons:

When you start GSM, you'll see a main window, called Status.

1. Status

1.1 mini-mode: not available yet, wait for next version

1.2 Current games: show the list of servers on your LAN. Selecting
    the server in that list would show additional info on the right,
    double clicking would start the game and (for some games) connect
    you to the server.
 TIP: you can right-click on the server to get usefull popup menu: 
      GO (same as double-click), Alias (see 1.7), Refresh (see 1.3).

1.3 Refresh: forces refresh of servers list

1.4 Status: small window at right of Refresh button shows what GSM is
    currently doing

1.5 Icon: game icon has two functions: it shows which game server is selected
    in the list, and it also is a button, which connects you to the server

Then, you'll see a couple of inactive boxes with server's info:

1.6 Server info:
1.6.1 Game: shows the name of the game 
1.6.2 Status: shows what the server is doing, waiting means it still accepts
      players (for non client-server games), running means that the game is 
      already running 
1.6.3 Computer description: shows MAC (ethernet) address of the server computer, or alias,
      if you set it (see 1.7)
1.6.4 Server: progress bar showing how loaded that server is. For example, if
      maximum is 4 players, and 3 are already playing, the bar would be at 75%.
1.6.5 Additional: Shows additional server parameters (like number of players) 
      in a box with a title "Map: current_map_name"

1.7 Set alias: allows you to set alias for the current server's MAC (ethernet) 
    address. Alias could be any string up to 32 characters long. Alias dialog
    box would allow you to enter the new alias, remove alias, or cancel the action.
    (tip: see 2.9.2 for an option to show aliases).
  NOTE: aliases are saved to file ethers.dat in GSMs working directory, which
        defauts to it's starting dir.

1.8 Configure: Opens configuration dialog (see 2)

1.9 About: Opens a cool about box with some info about us and rotating icon :)

1.10 Done: Minimizes the GSM application to the system tray, where it usually runs

-=-
2. Configure

2.1 Supported games: list of games currently supported by GSM

2.2 Monitored games: list of games currently monitored by GSM

2.3 Icon with green '+': adds selected game from 2.1 to 2.2

2.4 Icon with green '+++': adds all games from 2.1 to 2.2

2.5 Icon with red 'x': removes selected game from 2.2

2.6 Icon with red 'xxx': removes all games from 2.2
  NOTE: GSM only monitors the games which are in the Monitored games list.
  TIP:  don't add games that you never play to that list, cause more
        games are there, the longer each refresh would take.

2.7 List refresh
2.7.1 Manual/Automatic: Switches GSM's refresh mode. When in manual mode, no 
      refreshes to the server list are made, unless you force a refresh
2.7.2 Refresh period: if you choose automatic, you also can specify refresh period,
      selecting one from drop-down list (if you need other refresh period, like
      one year, let us know :) )
2.7.3 Tray animation speed: GSM has an icon in your system tray which rotates
      whenever there are available servers. Here you can set the speed of it's
      rotation (leftmost means stop, rightmost is fastest)
2.7.4 Popup dialog: GSM would popup dialog after each refresh, if there are some
      available servers.

2.8 Game launch
NOTE: You must select one of the games in Supported games list before you can set 
launch path for the game!

2.8.1 Game launch path: name of executable (.exe, .bat, or .com) which would launch
      the selected game. You can use the button with a folder icon to browse for it.
2.8.2 Parameters: game launch params. For example, set "-game TF" to start quake
      with Team Fortress addon.
2.8.3 Close GSM when playing: would unload GSM when you press launch in the main dialog.
      Use it if you feel that you're running out of RAM, though GSM is very small
      and generally you don't need to check this.

2.9 General
2.9.1 Hide busy: if checked, GSM won't show servers to which you can't connect
      (max players reached or not joinable) in the servers list.
2.9.2 Hide empty: if checked, GSM won't show servers with 0 or less ;) players
      in the servers list. Usefull to prevent from showing empty dedicated servers.
2.9.3 Use aliases: Use aliases instead of MAC (ethernet) address when it's set, see 1.6.3
2.9.4 Always on top: All GSM dialogs would be on top of all other windows. 
      Usefull for mini-mode (see 1.1).

2.10 Cancel: close configuration dialog discarding all recent changes

2.11 Save: close configuration dialog saving and applying all recent changes

When GSM is minimized, you can point your mouse at it's icon to see tray info
3. Popup tray info: shows number of available servers

Also, right clicking on the icon in tray would bring up a small menu:
4. Tray menu
4.1 Open: opens main GSM Status dialog (see 1.)
4.2 Configure: opens GSM configuration dialog (see 2.)
4.3 Refresh now!: forces refresh of servers list
4.4 Automatic/Manual modes: Switches GSM's refresh mode. When in manual mode,
    no refreshes to the server list are made, unless you force a refresh
4.5 Exit: closes GSM application. It's one of the ways to quit GSM (why would 
    you want to do that, anyway? :) ). Another way is to click [x] in the top
    right corner of the Status dialog.

Also, double clicking on the tray icon brings up the Status dialog.

Credits
-=-=-=-
id Software: for Quake with an easy network protocol
Raven Software: for not changing Quake's network protocol :)
Blizzard Entertainment: for a good game
Microsoft: for Windows...
Plush, PiP & WhD: for hardware support

Development info:
-=-=-=-=-=-=-=-=-
(you can skip this section ofcourse)
GSM was created using Microsoft Visual C++ 5.0 without MFC.
Other tools include Microsoft Network Monitor for protocols hacking
and MicroAngelo for icons :)

Development time: ~10 days so far.

Uses WinSock1 or WinSock2 (Win98 version), memory allocated: ~200Kb when in tray,
up to 700Kb when opened.

Known Bugs:
-=-=-=-=-=-
1. Sometimes servers could respond with multiple packets, or packets may get 
   lost on the way. In that case, servers list would have some incorrect info
   about running servers. 
   Solution: press Refresh once more. Status: Hard to tell, probably would stay.

2. Browse button sometimes does not work on Windows NT... 
   Solution: manual game path enetering. Status: Probably fixed already.

3. Please submit!...

Version history
-=-=-=-=-=-=-=-
1.4:    +Age of Empires support
	+Icons in server list are grayed for busy&empty servers
        !Some more interface optimizations, browse button bug corrected
	!Corrected GPF when exiting during refresh
1.3.1:  !Interface optimizations, numerous small bugs corrected
	+Hide empty - prevent from showing 0-player servers
	+Progress bar showing number of players
	+Right mouse button popup menu on servers list
1.3:    !Created basic interface, support for Quake, Hexen2, and StarCraft
1.0:	!First incarnation, not really functional (console app) :)

TODO in next versions:
1. support for other net-aware games (please send in your requests)
2. mini-mode for even more convinience

Games that won't be supported (due to their LAN protocol lameness):
1. WarCraft
2. QRally Network

Feedback:
-=-=-=-=-
You can contact us (see below) with bug reports, valuable suggestions,
or, of course, money donations :)
This release contains no source code, and you probably can't get it for free.

Legal
-=-=-
                                            to Actura
"If you f*ck with the best you will die like the rest!"

That means, distribute freely provided that you'll keep all the
files in the original .zip intact.
See the top of this document for the list of files that should
be in this .zip file.
If this program destroys the Universe, I don't give a sh*t.
You can use it on unlimited number of machines for as long as you want.

If you're going to include this file in any CD compilation,
a) give us credits
b) send us the CD (see below for contacts, email for address)
If you fail to do so, you're using this program illegaly and are violating
intellectual property laws which work in your country.

That's all of the legal crap.

Availability:
-=-=-=-=-=-=-
ftp://ftp.cdrom.com/pub/quake/utils/network_serial/server_picker/GSMxxx.zip

5thD homepage : always latest version:
http://www.planetquake.com/5thD/

Contact
-=-=-=-

PaPa (aka Michael A. Nazarov):
------------------------------
home:	pa-pa@usa.net
	papa@ars.ml.org

ICQ UIN: 2336557
------------------------------


PiRaMidA (aka Ivan S. Manida):
------------------------------
home: piramida@usa.net
work: IvanM@AstroSoft.spb.ru (in case I'll get workaholic)
piramida@rocketmail.com (I don't really check this one... be sure to send your flames there)

ICQ UIN: 3335090

IRCNet #quake, #quake2, leave a msg.
------------------------------

Good luck!

/*
 * PaPa aka Michael A. Nazarov
 * PiRaMidA aka Ivan S. Manida
 * 22pm, June 13th, 1998
 */
