An introduction to PunkBuster and Pure
PunkBuster
PunkBuster service provides an anti cheat protection from basic violations that would not be detected by any other ExcessivePlus applications. Since the official support have been dropped, PB has to be installed manually by every player who wishes to play on protected servers.
How to manually install PB:
1. Download pb.zip file, unpack and make sure all the files are directly inside of the "pb" folder.
2. Copy "pb" folder into your Quake3 main directory (i.e. C:/Program Files/Quake III Arena/).
3. Download pbsvc.zip file, unpack and run the only file it contains (pbsvc.exe). Proceed with "Install/Re-Install PunkBuster Service", take all the 3 steps by clicking next. If firewall detects any actions, make sure to click "Allow".
4. Allow PnkBstrA.exe and PnkBstrB.exe (both files are inside C:/Windows/System32) in your firewall. If you think that you may have missed any other important file simply disable your firewall program and make a quick test on any PB protected server.
5. Done.
If you have any problems regarding PunkBuster make sure to post your problem at Client Setup & Configuration Help, where you should receive the help you need. If you have any issues with your current PB install simply remove all the current files, uninstall/remove services with pbsvc.exe and then follow these instructions to make a clean install.
6.Potential issue.
After all of that in case you are recieving a MD5TOOL error, you are able to fix it by following an advice Diablo did. link
Pure Client
What does Pure?
Pure is a server cvar that enforces all clients to have only the same pk3's loaded as the server, if the server has an pk3 loaded the client has not the client either gets kicked for unpure or lets the client download the file (depends on sv_downloadfiles 1), this applies to all shaders and skins, maps are not loaded if they are not needed.
How does the Client load pk3s?
A client loads pk3s from Z to A, means latest pk3s are loaded first, however on starting game engine, only menus are loaded. Effectively this means when you start quake3.exe, you can join a pure server and it will only load pk3s the server has (based on checksums). It also means weaponskins starting with A in filename are dropped for the skins loaded of pak0.pk3 on a unpure server.
Client dropped for being unpure. What it means?
It effectively means the client had at the moment of connecting more pk3s loaded then server, this is caused by entering a game before which caused more pk3's to be loaded.