More Screenshots
Click Here for Additional Files.
With its high-value team objectives, limited range projectiles, and intense maneuvering, Paintball 2 offers a very unique experience that will appeal to both hardcore and novice players.  It only takes one shot to eliminate somebody, but the fast-paced, arcade-style movement from Quake 2 allows for quick dodging, insane jumps, and breakneck speeds.  Best of all, the game is completely free, and it's a small download, so just try it out!

August 25th, 2015Paintball 2 Build 41 Released!I apologize for the lack of updates.  I've been so busy with work and other things that it's hard to find even an hour here and there to work on this game, and rewriting the bot library from scratch was fairly involved, making it difficult to put out an intermediate release.  Everything seems to be stable now, though, so I'm releasing what I've got!  There's still a fair bit to do, but at least the bots are playable now.  They just don't handle some objectives, ladders, commands, and may get stuck from time to time.

Full release notes:

- Feature: New bots (WIP).
- Command: "demo_playernumber" allows you to specify which player to chase when viewing demos (very rough right now). 12:39 AM 2/5/2015, 1:40 AM 4/4/2015
- Bugfix: Fixed a crash loading maps with over 32k surfaces. 2:56 AM 11/1/2013
- Bugfix: Fixed jpeg loading code so it supports EXIF as well as JFIF formats. 2:05 AM 12/12/2013
- Bugfix: Fixed scoreboard not displaying on first key press after being closed with the console or ESC. 12:15 AM 1/7/2014
- Bugfix: Fixed issue with dalogs showing up as an error about not being able to find menus/dialog.txt. 12:21 AM 8/9/2014
- Bugfix: Made rcon command behave more like expected with multiple parameters and fixed potential exploits. 2:23 AM 1/10/2015
- Bugfix: Fixed possible security hole. 10:42 PM 3/27/2015
- Bugfix: Fixed for failed downloads due to backslashes. (Thanks, xrichardx).
- Bugfix: Fixed possible crash in custom menu files. (Thanks, xrichardx).
- Tweak: Tweaked min and max rate values to be higher. 12:48 AM 1/21/2014
- Tweak: Added 2560x1440 resolution support. 10:47 PM 5/18/2014
- Tweak: Added 50% black background to dialogs to make them easier to read/more obvious that you couldn't click buttons behind them. 12:24 AM 8/9/2014
- Tweak: Defaulted m_rawinput to 1, so mice will use raw input by default (on Windows). 2:24 AM 1/10/2015
- Tweak: Projects converted to and now compiled with Visual Studio 2010. 1:39 PM 1/19/2015
- Cvar: "gl_colorpolycount" - color codes the different polycounts of each brush face (red, green, blue, yellow, purple, grey, for 3, 4, 5, 6, 7, 8+ sides).  Only works offline ("deathmatch" must be 0).
- Cvar: "vid_borderless" - Allows for borderless windowed mode when set to 1. 10:54 PM 2/26/2014
- Cvar: "vid_resx" and "vid_resy" can set custom resolutions if "gl_mode" is set to "-1" (Thanks, xrichardx)
- Cvar: "timestamp_date" - if set to 1, logs will include the full date on each line. (Thanks, xrichardx)
- Media: Higher resolution textures are now included by default.

Game library changes:
- Stopped players from warping/lerping to respawn locations. 8:58 PM 10/20/2013
- Support for new bot library.
- Disabled autobalance at the end of matches (to remove autobalance spam). 12:10 AM 1/7/2014
- Added "showspawns" command for map debugging. 12:58 PM 1/12/2014
- Added confirmation message to "nextmap" command. 1:29 AM 1/20/2014
- Revamped name changing code:
    - Players are renamed instead of getting kicked for using registered names.  11:47 PM 1/20/2014
    - Clan tags are stripped instead of kicking players that aren't in the clan.
    - sv_login values between 1 and 2 (ex 1.5) still use old kicking behavior, in case server admins have issues with the new system.
    - Fixed an issue that could let players play with registered names. 12:08 AM 1/21/2014

Run to the Downloads page to grab the latest version (note, since there are a lot of data changes, there is no patch.  The patch would be almost as large as the full install.  Just install the full version over your existing install to update). Visit the forums to post your feedback.
The International 2015 TournamentGameZET is running a 3v3 tournament on Saturday, September 5th.  If you've been itching for some competitive play, be sure to sign up!  Visit this forum thread for more details.
August 9th, 2015New Bots on the Way!Sorry for the lack of updates.  I've been really busy with a new job and life in general.  I've been writing new bots from the ground up for the next build, since not having a good offline mode was one of the biggest complaints about this game.  Here are a couple videos explaining what I've been working on:

Part 1 Waypoint generation and pathfinding: Vimeo / YouTube

Part 2 Aiming and shooting: Vimeo / YouTube

The new bots are actually currently playable on the Official B41 Bot Test server if you want to check them out.  I'm still working on putting the Build 41 client package together, but hopefully it will be available soon.
August 12th, 2014Community Tournaments!#sPec# and QeHs are running tournaments this summer/fall,  so round up your clan and sign up if you want to participate in some more organized competitive action!

#sPec# Summer Tournaments start August 16th, so sign up quickly!  Visit their information page for more details.

QeHs's tournament starts on September 26th.  If you plan to attend, please sign up in this forum thread.
October 16th, 2013Paintball 2 Build 40 Released!Build 39 was unstable when running a dedicated server, so we've skipped the official release for that.  It had several optimizations, and a bunch of small tweaks and improvements.  Build 40 adds a few bug fixes and raw mouse input support for Windows XP and higher.

Here is the complete list of changes for both build 39 and 40:

- Feature: Adding "missingpic" keyword to menu system so mapshots could display a default "NO PREVIEW" image instead of a grey box.
- Tweak: Improved model rendering performance a bit by using SIMD instructions. 1:02 PM 5/29/2013
- Tweak: Allowed crosshair scale to go below 1.
- Tweak: Improved entity point lighting using LordHavoc's code from DarkPlaces (use r_oldlightpoint cvar to toggle old system). 1:34 AM 6/5/2013
- Tweak: Made it so duplicate lines don't get stored in the console history.
- Tweak: Made the window position reset if the window is not visible on any monitor. 1:24 AM 9/12/2013
- Tweak: Disabled sound on alt-tab by default, since sometimes sounds were getting stuck on (seta s_disableonalttab 0 to reenable). 1:54 AM 10/6/2013
- Tweak: Changed default mouse sensitivity to 5. 11:37 PM 10/7/2013
- Tweak: Fixed fps counter alignment at 1000fps.
- Tweak: Changed cl_drawping display to display "ping" instead of "Png"
- Cvar: "r_hardware_light" - Enables OpenGL lighting on SKM models for better performance (on most hardware).  Enabled by default.
- Cvar: "cl_conback" - specifies the console background texture. (Thanks, T3RR0R15T)
- Cvar: "cl_menuback" - specifies the menu background texture. (Thanks, T3RR0R15T)
- Cvar: "cl_maptime", "cl_maptimex", "cl_maptimey" - Displays elapsed map time on the HUD at the x and y position specified. (Thanks, T3RR0R15T/AprQ2)
- Cvar: "cl_drawping" - displays ping on the HUD. (Thanks, T3RR0R15T)
- Cvar: "sv_blockednames" - Comma-separated list of names server admins can choose to block from connecting to the server. (Thanks, T3RR0R15T)
- Cvar: "cl_sse" - Enables SIMD rendering optimizations (enabled by default).
- Cvar: "m_rawinput" - If set to 1, this will use raw mouse input (to make sure any windows filtering, acceleration, etc. don't get applied and you have the most precise mouse movement in-game). 11:12 PM 10/7/2013
- Bugfix: Fixed issue with loading demos and maps (trying to open "Loading....bsp", etc.)
- Bugfix: Fixed occasional black splat models (hopefully). 1:24 AM 6/11/2013
- Bugfix: Fixed transparent surfaces on moving brushmodels (ex: doors) not moving.  Note that the draw order is still not fixed, so avoid putting them near other transparent brushes, but at least they will move.  2:12 AM 6/16/2013
- Bugfix: Made reflective water effect respect scale and rotation on maps (so flowing water flows the way the mapper specified). 12:01 AM 9/12/2013
- Bugfix: Fixed crash with dedicated servers. 10/7/2013
- Bugfix: Fixed integer overflow in sound code, caused by playing on a server that had been running the same map for days. 11:13 PM 10/7/2013
- Bugfix: Fixed "Can't load pics/***r_notexture***" message. 10/7/2013
- Bugfix: Fixed an issue where world would stop rendering after a vid_restart on some systems. 10:05 PM 10/8/2013

Here's the change log for the Game DLL (version 1.929 build 185) as well:

- Fixed issue where hitting a player multiple times in the same frame would count for multiple points is siege, dm, etc. 11:12 PM 6/12/2013
- Attempted to fix issue where priming a grenade could result in premature detonation of the next grenade picked up (couldn't reproduce it).
- Fixed grenades not dropping correctly. 2:42 PM 6/16/2013
- Fixed prediction miss collision issue with dead bots (caused that laggy/bouncy/warpy movement when running over a bot that had just been eliminated). 2:24 AM 6/17/2013
- Added messages to indicate when jails are forced or not present in maps when using the "jail" command. 9:33 PM 8/13/2013
- Added popup messages when switching teams. 7:09 PM 10/6/2013

Have any feedback for this build?  Post it here!
May 19th, 2013Team Auto-Balance Quick PatchAttention, server admins!  If you're running servers with the Build 38 package, please grab this small patch and replace the game library:

Windows: gamx86.dll version 1.928
Linux: version 1.928
(Note: These links will likely be dead after the next full release.  They're just a temporary patch).

Simply extract the file to the paintball2/pball/ directory and replace the existing gamex86.dll or

I made a small error when cleaning up some of the team code, and the auto-balance will try to force players to the wrong team, causing a flood of messages and sometimes kicking.  This patch fixes it.  It is only necessary for servers.

While I was in the code, I made a minor tweak to the algorithm as well.  It now takes into account how long you've been playing on the map and will make players that have been playing longer less likely to be auto-switched.

If you're curious exactly how the autobalance algorithm works, or you have some feedback on it, visit this thread.

News Archive
October `98 - September `98
August `98 - July `98
POTD Archive