Yes. I am working on a server guide but it's not done yet. Here's the alpha version:
1. System and bandwidth requirements
Bandwidth requirements for Paintball 2 are lower than most online games. Each user will consume about 30 kilobits per second (that's about 3 Kilobytes) – slightly more during lots of action. However, ping times are important, and most cable modems/DSL connections will not provide sufficiently low latency for hosting game servers.
System requirements are also low. A server running Windows 98 or above (NT/2K/XP recommended) should have 128 MB of RAM and a 300 mhz processor. System requirements in Linux are slightly lower.
2. Software
For Windows, you will need the paintball2 standalone distribution, and any maps you want to throw in.
For Linux, you will need the paintball2 standalone distribution for Windows and id's Quake2 linux server. Install id's Quake2 server into the paintball2 directory. You will need maps here as well.
2.Configuration
Locate the server.cfg file in the pball/configs directory (paintball2 standalone) or pball directory (Quake2 mod). Read every line of this file carefully. The Generic Server Info section contains the information you will see in your server browser. The Message of the Day and Rotation files should be edited as well, more on that later. Uncomment the logging lines if you want logging. Below the logging options, you will see the game settings, beginning with the paint and smoke grenade count.
A brief explanation of the important variables:
Autojoin – Determines whether players will be assigned to teams on connect. Can be normal or off.
Ffire – Friendly fire. Should be off.
Grenadeffire – Determines whether your own grenades can kill you and your teammates.
Public – If this is set to 1, server will periodically contact the planetquake master server and insert itself into the public server list.
Tripping – This was an experimental way to curtail bunny hopping. It's annoying. Leave it at 0!
Real_ball_flight – Causes paintballs to shoot in random directions unless you have a barrel.
Ball_addplayerspeed – If set to 1, causes your velocity to be added to the velocity of any paintballs you shoot.
Elim – Elimination time in seconds.
Cursing – If set to 0, the humourous swear filter is activated.
Bouncy – If set to 1, paintballs bounce instead of break.
Deadtalk – If set to 0, eliminated players' chat will not be heard by alive ones.
Don't forget to edit rotation.cfg, the maplist file.
3. Running the server
NOTE: The Linux build of Quake2 requires a library called glibc. To see if you have it, type ldd quake2 at your shell prompt. Your distribution's package manager will contain a glibc package; it is up to you to locate and install it.
For Windows, go to the Run dialog and type the following:
C:\path_to_paintball\paintball2.exe +set dedicated 1 +set maxclients 12 +exec server.cfg +map battle
(Obviously you may replace 'battle' with any starting map, and maxclients can be any value.)
In Linux, go to your quake2 directory and type the following:
NOTE: The & at the end of the command line indicates that the server will run in the background and all the console messages will be hidden. If you are starting the server for the first time, or if you are running in a desktop environment such as X Windows or KDE that supports multiple shell windows open at once, you may want to omit the & sign.
./quake2 +set game pball +set deathmatch 1 +set dedicated 1 +set maxclients 12 +exec server.cfg +map battle &
You should now be able to connect to your server.
Note: It is not recommended to run both the client and the server on the same computer.
4. Shutting Down the Server
If the server is not running in the background (ie, it has a window of its own), activate the window and type 'quit' or press Ctrl-C.
If the server is running in the background (ie, you used the & sign on a Linux machine), type 'ps' in the shell and press Enter to get a list of processes. Locate quake2 and remember its process ID. Then type 'kill <id>', replacing <id> with the process ID.