Bundled with software in many popular online games such as Battlefield 2, America's Army, Call of Duty, F.E.A.R, Prey, Far Cry and many others.
Old test results
The test results you have selected are very old and may not represent the current state of Wine.
Selected Test Results (selected in 'Test Results' table below)
I only tried Punkbuster with Assassin's Creed Brotherhood/Revelations :
PB is installed by the game's installer
I don't try PBSetup because i have already the latest client version (v2.269)
I can play in multiplayer sessions with these 2 games without problem. I'm never kicked when i join a session.
What does not
PB in 64Bits prefix does not works out of box with ACB/ACR. When i launch the game, PB services (PnkBstrA.exe/PnkBstrB.exe) are not launched (see bug report : http://bugs.winehq.org/show_bug.cgi?id=30901)
What was not tested
The only solution that i found to play in Multiplayer session with my 64Bits prefix is to copy PnkBstrA.exe and PnkBstrB.exe situated in syswow64 folder to system32 folder.
We're sorry, but Wine and other compatibility layers are not supported.
Punkbuster uses advanced and rare Windows functions, which are subject
of change quite often. Unfortunately these programs are not in such a
end state of development that it will be able to support all of
UNKNOWN WINDOWS API FUNCTION [131xxx]
EvenBalance instructs the PB client to carry out several integrity checks.
One of those checks determines if certain components of the operating system have been modified in memory - so called API fingerprinting.
Third party software and hacks modify parts of operating system in memory for their own reasoning.
To detect this modifications, Punkbuster takes fingerprints from operating system API entry code.
A number of system libraries (dlls) and their respective API are verified.
Each fingerprint is compared with a list of signatures on PB server.
If the fingerprint does not match, a kick is issued for the player along with the following infamous message:
"UNKNOWN WINDOWS API FUNCTION [131xxx]"
Depending on PB server/client versions and game, this specific check might be executed immediately upon join or several minutes thereafter.
There have been rare occurrences where this specific check was never executed thus letting the player remain on server without being kicked.
Because of this specific API integrity check, PunkBuster will not work with wine in most PB-enabled multiplayer games.
The API entry code generated by (wine)gcc compiler differs from Windows, resulting in signature mismatches.
There is no way to mimick/generate all the required API entry code to keep the signature check succeeding due to technical limitations and legal reasons.
Technically there are ways (client hacks) to circumvent those checks even
in Wine - but this is out of the scope of Wine. Such manipulations defeat
the purpose of PunkBuster.
Following is a small part of my own list of most common [131xxx] kick id's (EvenBalance considers them a hook target by hacks).
The complete API fingerprinting list is larger and extended by EvenBalance from time to time.
API (signature fail)
PunkBuster service components test
Besides the client dlls, the Windows version of PunkBuster consists of system services and a kernel driver.
This will print PB messages to your on screen console area, so kicks can be easily seen instead of being hidden in the pull-down console. You can disable the screenshot notifications with the pb_sslog setting, if you receive to much messages on large servers.
PB_MsgPrefix [New Prefix]
Holds the text that PunkBuster displays in front of every output line displayed; the default is "[skipnotify]PunkBuster Client".
PB_LogToFile [0=no, 1=yes]
When set to 1, PunkBuster will log activity to the pbcl.log file; the default is 0 which means only errors are logged.
Holds the period of time (milliseconds) that PunkBuster "sleeps"
between processing cycles; the default is 60; lower numbers will cause
PunkBuster to process events more times each second which also has the
effect of increasing the bandwidth used by PunkBuster; Players with a
modem connection will probably want to set this as high as possible.
PB_SsLog [0=no, 1=yes]
When set to 1 (which is the default), PunkBuster will create an entry
in the pbsslog.htm log file every time a PunkBuster Server requests a
screenshot to be taken and delivered; this log file is designed to be
viewed with a web browser and contains information about the size of
the image, when it was taken, and also a digital signature of the image
PB_SsSave [0=no, 1=yes]
When set to 1 (0 is the default), PunkBuster will save
all Server-requested Screenshots to the local hard drive so that
Players can see the actual screenshots that have been delivered to Game
Servers that they were connected to; if this setting and the PB_SsLog
setting are both set to 1, then the pbsslog.htm log file will
automatically have links created for local viewing directly from the