*********************************************
* QValidate V1.02                           *
*                                           *
* MD5 Package checker for Unreal Tournament *
*                                           *
* By: ProfessorQ                            *
*********************************************

DESCRIPTION

This is a package validator for Unreal Tournament. It checks if certain packages are
the same on the client and on the server. It does this not by re-loading the file
into memory (like UTPure does with WebResponse.IncludeBinaryFile), but in-memory.
Because it's not possible to do this with UScript, it's partly native coded in a DLL.

INSTALLATION (SERVER)

- Copy the contents of this ZIP file to your server's UnrealTournament\System directory.
- Modify UnrealTournament.ini by adding the following lines under [Engine.GameEngine]:
  ServerActors=QValidateLoader102.QSA
  ServerPackages=QValidate102
  ServerPackages=QValidateDLL102
  ServerPackages=QValidateLoader102
- Modify QValidate102.ini and add the packages you want to check. You MUST do this in the
  following form: <package name>|<cache name>
  Example: To checkUTPureRC6E we will have to know it's cache filename, which is
  BB453B8011D7BD571000C6A34E0C0BA7.uxx. All packages you add in QValidate102.ini must be
  without the file extension. So UTPureRC6E must be added like this:
  PackagesToCheck[0]=UTPureRC6E|BB453B8011D7BD571000C6A34E0C0BA7
  This will ensure that UTPureRC6E will always be checked, also if UTPure is in cache on 
  the client machine.
- Modify UnrealTournament.ini and specify the website where you host QValidate102.dll like
  this:
  [QValidateLoader102.QChecker]
  DownloadURL=http://download-url.com
  The URL you specify here will be displayed when a client doesn't have the DLL installed.
- Now start your server, and QValidate will be active.

TODO

Make it Linux compatible. However, this won't be possible without some help from UTPG.
Unfortunately they won't give me any headers so I can compile on Linux because of the
security risk they think it will have. I hope that when they see this they will change
their mind about that, but until then it will only be Windows compatible.

THANKS

Thanks go to ^KiK^MaGma and ^KiK^NuFFy for being so friendly to test QValidate on their server!

CONTACT

You can contact me on UTPure forums (http://forums.utpure.com) for questions about this
mod.
Also, I'm quite frequently online on #unrealadmin on irc.quakenet.org.

Greetz,

ProfessorQ