||Kingpin Patch by Monkey Harris
uploaded by M
This is a patch for Kingpin that fixes a number of bugs, and adds some other
improvements too (see the lists below). No files are modified by the patch, so
it works with all Kingpin (v1.21) releases, including the Steam version. The
WSOCK32.DLL file is the patch that gets loaded by Kingpin and PATCHCFG.EXE is a
configuration app for the patch. Both files should be put in your Kingpin
If you have Kingpin installed under "Program Files" or "Program Files (x86)"
then you may need to run PATCHCFG.EXE as administrator (right-click on it) for
it to be able to write the patch's PATCH.CFG config file.
New features and tweaks
Custom screen resolution
A custom screen resolution can be set in the PATCHCFG app, which will replace
the game's 1600 x 1200 option. If the wanted resolution is not listed, the
"width" and "height" values can be set manually in the PATCH.CFG file. The
current resolution is also now added to the "gl_mode" variable.
The FOV can optionally (in the PATCHCFG app) be adjusted automatically to
maintain the same vertical view with any aspect ratio. This results in the
horizontal view expanding, instead of the vertical view shrinking, when using
a widescreen aspect ratio. The "fov" variable is unchanged by this (the
adjustment is applied on top of that).
Improved support for any size of image
Standard Kingpin limits images/textures to 256x256 pixels and anything larger
gets reduced, losing detail. It also resizes any images/textures that are not
a power of 2 (256/128/64/etc) because they needed to be a power of 2 in the
past, again losing detail. Both of those limitations are removed now, so
affected images/textures are shown in higher quality. The "texture quality"
option (gl_maxtexsize) has been removed from the "visuals" menu as it no
longer has any effect. If wanted, power of 2 images can be re-enabled by
setting the new "gl_pow2" console variable to "1" ("vid_restart" is needed
A new anisotropic filtering option is available in the "visuals" menu and a
"gl_anisotropy" console variable. When enabled, it keeps images/textures
looking sharp when they are viewed at an angle. Higher settings allow it to
have effect at greater angles and distances. Note this setting may be
overridden in the video card's control panel.
A new multisample anti-aliasing (MSAA) option is available in the "visuals"
menu and a "gl_multisample" console variable. When enabled, anti-aliasing
smooths jagged edges. Higher settings are smoother but more demanding. Note
this setting may be overridden in the video card's control panel.
Vertical sync setting
A new vertical sync option is available in the "visuals" menu, which gives
access to the existing "gl_swapinterval" console variable. Setting it to "no"
(off) is recommended to reduce input lag. Note this setting may be overridden
in the video card's control panel.
Improved lighting of see-through surfaces
See-through surfaces (eg. grills/fences/banners) now have the same lighting
applied as other surfaces in the same area, so that they blend in better.
Dynamic lighting is also now applied to those surfaces, and they can be
charred by explosions and flames.
Improved dynamic lighting
The performance of dynamic lighting (and charring) is much improved so that
it can now be enabled on Intel GPUs without causing lag. Dynamic lights are
also now approximately the same size on all surfaces, and work properly on
bmodels (eg. moving platforms) and windows, and no longer show on the other
side of thin walls.
Dynamic light disabling
A new dynamic lighting option is available in the "visuals" menu, which gives
access to the existing "gl_dynamic" console variable.
Improved effect visibility
Effects such as flames/sparks/blood/etc are now visible through translucent
surfaces (eg. windows and water).
Shadows are now shaded rather than pitch-black. They also point away from the
nearest/strongest light sources, and are not shown for things that are a long
way off the ground.
Auto directional lighting
A new "auto" setting is available for the "directional lighting" menu option,
which will automatically disable directional lighting on players and items
when there are no juniors (lights) around them, to prevent them becoming
Maximum FPS setting
The maximum frames per second (cl_maxfps) can be set in the PATCHCFG app.
This limits the screen refresh rate and also how frequently your input is
sent to a server. If vertical sync is enabled then the FPS will be limited
to the monitor's refresh rate. It may also be limited by the server. FPS is
no longer limited by the "rate" setting.
A new FPS display option is available in the "visuals" menu and a "showfps"
console variable. When enabled, the current number of frames per second is
displayed at the bottom of the screen.
Internet server browsing
A live server list is downloaded and included in the "join network server"
menu. A copy of the list is also written to a SERVERS.TXT file, which will
be used if the master server is ever unavailable. The dead "play on heat.net"
menu option is removed.
Download speed is no longer limited by the "rate" or "cl_maxfps" settings or
by vertical sync, and can now reach speeds of up to 4 MB/s if the server
allows. A speed limit can be set in the PATCHCFG app and a new
"max_download_rate" console variable can be used to change the limit in-game.
Downloads are also sent in fewer/larger packets when connected to a kpded2
server, for greater efficiency.
PAK downloading tweaks
PAK files are downloaded (if the server offers any) before any other files,
to avoid separately requesting files that are in the PAKs. Only the mod's
directory is checked for existing PAK files (and other root directory files)
so that existing files in the "main" directory do not prevent mod-specific
client files being downloaded.
Model skin downloading
Skins/textures used by models (including weapon models) are downloaded from
When connected to a kpded2 server, game state data will be compressed when it
would otherwise be too large to send, instead of dropping it. This can be
disabled by setting the new "net_compress" console variable to "0". Note that
demos containing compressed data will not be playable without the patch
enabled. File downloads are also compressed for greater speed and lower
Increased entity limit
The entity display limit is increased from 128 to 256. This fixes the problem
of your gun sometimes disappearing/flickering when there is a lot of action.
Visible gun with any FOV
You can choose in the PATCHCFG app to have your gun visible with any "fov"
setting, not only up to 90.
Consistent HUD layout
The position of the HUD items and the chat text are now the same in all
screen resolutions and aspect ratios.
Hi-res console text
A new hi-res console option is available in the "options" menu and a
"con_highres" console variable. When enabled (the default), a hi-res font
will be used to show console and overlay text, adding support for lowercase
letters and colouring.
Improved text input
Non-US keyboard layouts are now supported, and the cursor can be moved using
the left/right arrow keys to modify the entered text. The Ctrl key can also
be used to jump words, and the home/end keys to jump to the start/end of the
Highlighted non-chat text
Non-chat text shown in the chat area (eg. connection notifications) is shown
in light blue to make it more distinguishable from chat. This also applies to
the console when hi-res console text is enabled.
Nicer scoreboard text
Scoreboard text now has smoother edges and a drop shadow.
Chat while console is open
The chat area is now still shown while the console is open.
Console access without developer mode
The console key (`) and menu option can now be used to access the console at
any time without needing the "developer" variable to be set to "1".
Larger console buffer
The console buffer size is now 128 KB rather than 32 KB, which allows 4 times
as many lines of text to be retained.
The mouse wheel can now be used to scroll the console.
Console width limiting
The number of characters per line of console text can be limited in the
PATCHCFG app and in-game with a new "con_maxwidth" console variable. Shorter
lines allows more lines of text to be retained.
Fixed console image brightness
The brightness (vid_gamma) setting no longer effects the console background
image, so that the text does not become harder to read when the brightness is
Console image removal
The console background image can be replaced with a solid colour to make the
text easier to read. This can be set in the PATCHCFG app and in-game with a
new "con_noback" console variable. A new "con_color" variable can be used to
change the background colour (to a palette index from the COLORMAP.PCX file).
Console overlay lines
The maximum number of lines of console text that overlays the top of the
screen can be adjusted in the PATCHCFG app and in-game with a new
"con_notifylines" console variable.
The maximum number of lines of text shown in the chat area can be adjusted in
the PATCHCFG app and in-game with a new "chatlines" console variable.
The netgraph and timegraph backgrounds can be made transparent in the
PATCHCFG app, so that they do not block the HUD. A new "graphseethru"
console variable can be used to change this in-game.
The screen can now be up to 2048 pixels wide (instead of 1024 pixels) before
the netgraph and timegraph displays repeat.
Netgraph ping range
The ping range coverered by the netgraph display can now be set with the new
"netgraph_min" and "netgraph_max" console variables.
Menu text brightness
The brightness (vid_gamma) setting now applies to menu text too, so it is
more legible over the background.
Darkened menu background
The PATCHCFG app gives the option of darkening the background when using
menus to make them easier to read.
Customisable crosshair colour
A new "crosshair color" option is available in the "options" menu, which
allows the crosshair colour to be changed. Custom RGB settings are also
possible with a new "crosshair_color" console variable.
Targeted player name placement
A new "crosshair names" option is available in the "options" menu, and a
"crosshairnames" console variable, which allows adjustment of where the name
of the targeted player is shown. The amount of cash carried by the player
(if it is a bagman teammate) is also placed accordingly. Targeted player
names are also now shown during playback of demos.
Weapon key binding
The weapons can now be bound to other keys/buttons in the "customize
Support for 5 mouse buttons
If your mouse has them, 2 extra buttons (MOUSE4 and MOUSE5) can be bound in
the "customize controls" menu options and AUTOEXEC.CFG files.
Binds are now saved to and loaded from the CONFIG.CFG file in a mod's
directory. Other settings continue to be only loaded from the CONFIG.CFG
file in the "main" directory.
Ignoring arrow key commands
When an arrow key is pressed, a command is sent to tell the server even if
those keys are bound to something else (eg. player movement). Those commands
are generally ignored by servers, so they are now not sent by default. The
command sending can be re-enabled by setting the new "cl_sendarrows" console
variable to "1".
Improved reverb effect
Kingpin's built-in reverb sound effect is replaced with a better sounding
one. A new option is available in the "options" menu to switch back to the
original reverb effect or disable reverb. That option is also accessible
with a new "s_reverb" console variable. Note the "sound quality" option must
be set to "high" for reverb to be enabled.
Sound when inactive
A new "mute when inactive" option is available in the "options" menu, and a
"s_focus" console variable. When disabled, it allows Kingpin's sound to still
be heard when Kingpin is in the background.
Improved playback of 8-bit sounds
The playback quality of 8-bit sounds is improved, particularly at lower
Sound buffering control
A new "buffer / delay" option is available in the "options" menu, which gives
access to the existing "s_mixahead" console variable. It determines how much
sounds are delayed by. Note there may be glitches in the sound if it is set
A new "screenshot format" option is available in the "options" menu, with the
option of writing screenshots in the JPEG format at various quality levels. A
new "screenshot_quality" console variable is also available for more control
over the JPEG quality level (0 = TGA). The high quality TGA format is still
supported and is also compressed now but the size reduction will not be as
great as JPEG.
Screenshot filename display
When a screenshot is saved, its filename is displayed.
The existing railgun laser has been replaced with a new one that supports
different colours, for use in the instagib game mode (can also be used in
other mods). The muzzle flash is also the same colour as the laser now.
Underwater rocket tweak
A rocket's flame trail stops when it enters water.
More efficient scoreboards
New scoreboard layout options are supported that allow more players to be
shown in the scoreboards.
Reduced idle bandwidth usage
When you are not moving, fewer packets will be sent to the server, reducing
bandwidth usage, and server load too.
The "reconnect" command now works while downloading if the download has
stalled for over 3 seconds.
Increased default "rate" setting
The default "rate" setting is now 25000 (T1/LAN) instead of 4000 (56 MODEM).
Demo playback speed control
The mouse wheel can be used to speed up and slow down/pause the playback of
demos. The volume level is reduced when playing at higher speeds to prevent
Demo angle adjustment
The view angle can be changed during demo playback by holding down the left
mouse button and moving the mouse.
Using commands/binds while playing demos
Key binds can be used while playing demos (eg. to take screenshots). The
console can also be accessed while playing demos.
Downloads excluded from demos
Any files that are downloaded while recording a demo are now not included in
F12 key disabling
The PATCHCFG app gives the option of preventing the F12 key from closing
Kingpin. F10 or Alt+F4 can be used instead. This may be particularly useful
for Steam users, which defaults to using F12 for screenshots.
No empty directories created
Directories are no longer created for missing downloads.
CPU priority boost
Kingpin's CPU priority is raised to reduce the chances of other processes
denying it CPU time and causing lag. This can be adjusted with a new
"win_priority" console variable. Possible values are: -2 = low, -1 = below
normal, 0 = normal, 1 = above normal, 2 = high. The default is 1 (above
normal). When the priority is raised, Kingpin will pause for a bit between
frames (when it has nothing to do) instead of trying to hog the CPU, so it
will actually use less CPU than normal.
Reduced background CPU usage
Kingpin will pause between frames instead of trying to hog the CPU when it is
in the background. When Kingpin's CPU priority is raised, it will drop back
to normal priority while it is in the background.
No CD check
The CD check is disabled so that you can play without having the CD in the
drive (if you are using the CD version of Kingpin).
More verbose model error messages
The model's filename is included in "R_DrawAliasModel" and "R_CullAliasModel"
Physical memory detection only works up to 2GB RAM. This bug could result in
reduced sound and texture quality.
Multiple copies of images/textures being loaded when they have uppercase
letters in their name. This bug can result in "MAX_GLTEXTURES" errors.
If a player carries a cashbag/flag while spawn protection is active, it results
in multiple "r_cullaliasmodel" errors for everyone that sees them.
Chat text disappears when centred text is shown.
Chat text turns to garbage in the output of the "condump" command.
Crash when there have been 32768 lines of console text.
Buffer overflow/crash with text messages over 4095 characters long. This bug
prevents Kingpin running without Windows' app compatibility feature enabled
(which also blocks Alt+Tab).
Looping sounds are not recorded in demos.
Only the first map is played back from demos that span multiple maps.
Demos end early when they contain an empty message (caused by an overflow when
the demo was recorded).
Crash when taking a screenshot before the game's directory exists.
When a map's texture is missing, it may be requested from the server multiple
times instead of just once.
When changing mod, the Kingpin window is unnecessarily recreated/reinitialized.
When connecting to a mod server and then a standard server, files (eg. config
and downloads) will be written in Kingpin's root directory instead of "main".
In deathmatch, the reverb sound effect is only applied to the first player
Distortion and panning of non-attenuated sounds.
A targeted player's name is not shown when the player is behind a see-through
surface (eg. fence or window).
Targeted player names are not shown when movement prediction is disabled
through the "cl_predict" variable or by the server (eg. when chasing).
A server's instruction to disable directional lighting is ignored on the
player's weapon, which means it may be pitch-black on some maps.
The lighting of the player's weapon is incorrect when spectating in eyecam mode
with directional lighting enabled.
Laser beams are sometimes black instead of their correct colour.
You are sometimes left facing the ceiling/floor after spawning or teleporting.
The Esc key does not access the main menu while a scoreboard is showing.
Using Alt+F4 keys to quit results in an error message.
The Kingpin window sometimes re-grabs the mouse when clicking away from it.
Nvidia drivers automatically turn on vertical sync when it has been turned off
in-game and the driver is set to use the game's setting in the Nvidia control
New/modified menu options
gangbang > join network server
options > buffer / delay
options > reverb
options > mute when inactive
options > crosshair color
options > crosshair names
options > directional lighting
options > hi-res console
options > screenshot format
options > customize controls
visuals > anisotropic filter
visuals > anti-aliasing
visuals > vertical sync
visuals > dynamic lighting
visuals > show fps
New console variables
|Anzahl der Downloads
hambloch.com - download database