*********************************************
* QValidate Changelog                       *
*                                           *
* MD5 Package checker for Unreal Tournament *
*                                           *
* By: ProfessorQ                            *
*********************************************

CHANGES SINCE V110

- Linux compatibility! This version comes with a QValidate111.so which is (should be) fully
  Linux-compatible.
- Changed hook detection method so all HelioS Hooks up to V2.6 will be detected.
- Some other minor things I don't remember at the moment :P.

CHANGES SINCE V109

- Version number :)

CHANGES SINCE V108

- Separate server-side and client-side DLL.
- The server-side DLL is now compatible with Wine (Windows emulator for Linux). This will
  enable you to run a win32 server on a Linux system with QValidate. Maybe I'm gonna make a
  small tutorial on this.
- Fixed the bug causing players to be kicked for DLL hooks which they didn't use.
- Took off the option of writing a separate logfile because it was causing server crashes
  on mapchange. The option is still visible in the .ini file, but will be ignored.
- Fixed the bug causing lag when someone connects.
- Beats HelioS Hook up to V1.3.
- Improved hack-proof'ness :)

CHANGES SINCE V107

- Improved DLL hook detection so HelioS Hook V1.1 will be detected.
- Fixed bugs causing server crash on mapchange.

CHANGES SINCE V106

- NEW: DLL hook detection. This functionality beats [ELF]HelioS new external bot.
- Fixed some minor bugs which *could* cause an UT server to crash sometimes.

CHANGES SINCE V105

- Fixed some more Windows 95/98/Me/NT compatibility issues ("Error while locating a DLL function"
  and crashes).

CHANGES SINCE V1.04

- Fixed Windows 95/98/Me/NT compatibility issue ("Error while locating a DLL function").
- Fixed the problem that files-to-be-checked in cache couldn't be correctly checked.
- The directory configured for 'LoggingDirectory' in QValidate105.ini will be created
  automatically if it doesn't exist.
- QValidate105.u and QValidateLoader105.u will automatically be moved to your system dir.
- Added a mutate command so players can request which packages are being checked by QValidate.
  The command is: 'mutate qv showpackages'. I've made it like this so I can add more in the
  future. Please not that this only works on V451 servers!

CHANGES SINCE V1.03

- New mechanism to check wether the DLL is present or not. From now, players don't have
  to add lines into UnrealTournament.ini anymore to indicate that they have the DLL installed.
- No UMOD installer anymore for the client. Installing the DLL manually is just a matter of
  copying some files to your UT\System directory.
- No need to configure cache filenames anymore in QValidate104.ini. The cache filenames will
  be detected automatically.
- Added separate logfile option. From now you can configure a directory for logfiles in 
  QValidate104.ini. Every day, a new logfile will be created.
- Optimized the checking routines so there won't be any lagspikes anymore when packages
  are being checked.
- DLL logging. Every DLL that is loaded in a player's UT process will be logged on the server.
  Server admins can enable/disable DLL logging in QValiate104.ini.
- Progress indication on the client. A player will see in the lower right corner of his screen
  which packages QValidate is checking and also the progress.
- Checked packages will be logged to the player's local unrealtournament.log.
- Delayed kicking. Players will get an error message in their console 5 seconds before they will
  be kicked.

CHANGES SINCE V1.02

- Removed the separate threads functionality because that caused a lot of problems with a lot
  of users :(.

CHANGES SINCE V1.01

- Apparently the loader (which makes sure your UT doesn't crash when you don't have the DLL) 
  didn't work correctly on 451 client systems, so I changed it. When the client doesn't have
  QValidate102 installed, he will get a nice window telling him so. On that window are 2 buttons:
  * Install  - When the user clicks this button, QValidate102.dll will be automatically installed
               and his UT will shut down. When he starts his UT again he can play on your server.
  * Download - This will start a webbrowser and browse to the configured download URL.
- When you get kicked for some reason, you just saw 'Connection failed'. In this version the
  console will popup with an error message.
- Configuration of QValidateLoader is now in UnrealTournament.ini
- All hashing is now done in separate threads, so no pingspikes should occur anymore when a
  player joins your server.
- The QValidate and QValidateLoader packages are now nicely obfuscated :)

CHANGES SINCE V1.00

- For each player, the checked packages will be logged.
- INI files now also have version numbers (for example: QValidate102.ini)
- V1.00's loader was checking for the presence of QValidate.dll in stead of QValidate100.dll
