Codebox Software

HLTracker

Published:

HLTracker is now open source! You can get the code as a Visual Basic 6.0 project from GitHub.

The Codebox HLTracker tracks servers on the Hotline P2P network. The tracker accepts automatic registrations from Hotline servers, and provides listings of these servers to any clients that request them.

This is the main HLTracker window displaying some basic statistics:

HLTracker main window

When the main HLTracker window is expanded its activity log is displayed allowing you to monitor activity such as Servers checking in, Servers expiring, Mirror activity, Listing requests from clients, Servers being filtered out by rules that you have created, and Servers attempting to connect but failing to supply the correct password (when one is required)

HLTracker main window expanded

The Settings screen allows you to configure Password Protection (define a password, which servers must supply before being allowed to list on your tracker), Alerts (the tracker can be configured to alert you when certain events occur, such as a request for the listing from a client, a new server being added, or a server expiring from the list), and the colours used on the Log Display. This screen also displays the tracker's 'up time' and provides access to the Fake Server Management window.

HLTracker settings window

The Fake Servers Management Screen allows you to define your own listing entries, with whatever details you like. Fake servers will always be displayed at the top of the list, allowing banners and other notices to be displayed in the tracker listing.

HLTracker fake server manager window

In addition to basic server tracking, the Codebox Tracker provides the following features:

  • The ability to 'mirror' other trackers. This feature allows you to add listings from other trackers into your own. Mirrors run automatically in the background, at intervals that you specify (between 5 and 90 minutes). Mirror multiple trackers to create huge lists of servers instantly.
  • A rule-based filtering system. Filtering lets you block/accept servers based on their address, port number, number of users, name or description. Create specialised listings by mirroring a large number of other trackers, and filtering out the servers you don't want.
  • Fake servers. Define your own entries, with whatever details you like. Fake servers will always be displayed at the top of the list, allowing banners and other notices to be displayed in the tracker listing
  • Built-in blocking of IP addresses, or address ranges. Deny listings to specific clients, or to other trackers to prevent your list being mirrored. No firewall tweaking is required! The behaviour of the tracker when a blocked client attempts to connect is configurable - you can either drop the connection immediately, or send back a message that you define ('you are banned from this tracker' etc). The message is displayed to the user by means of a manufactured server listing, consisting of just one entry, with your message displayed as the server's description.
  • On-screen log display. The main window shows server and client connections as well as other processing performed by the tracker.
  • Password protection. Define a password, which servers must supply before being allowed to list on your tracker.
  • Enhanced logging capabilities. The tracker can create up to 3 separate logs, which can be turned on or off at will. The 'Hit Log' just records a timestamp and IP address for every listing request from a client. The 'Server Log' records each time a server checks-in, and keeps information such as name, IP address and number of users connected. The 'Window Log' simply mirrors what appears in the main display window of the tracker - this can be configured to include any of the following events: Servers checking in, Servers expiring, Mirror activity, Listing requests from clients, Servers being filtered out by rules that you have created, Servers attempting to connect but failing to supply the correct password (when one is required). All logs are in CSV format, and can be easily imported into a spreadsheet.
  • HTML Reports. Instantly create a web page displaying all servers currently connected to the tracker, together with various statistics such as total number of users, number of servers, and tracker up-time.
  • Alerts. The tracker can be configured to alert you when certain events occur (such as a request for the listing from a client, a new server being added, or a server expiring from the list).
  • Configurable appearance. The main window is fully resizable, and can be minimized to the System Tray when not required. The 'Stay on Top' option allows the tracker window 'float' on top of other windows so it's always visible.