How To Install Berserker Mod Quake 2

Quake 2 Server Setup Guidev1.0
By d0gmA
Last Updated Thursday, April 12, 2001

This Guide will walk you through setting up a Quake 2 Server on eitherWindows95 or WindowsNT. I have chosen to walk you through setting up a CTF server asZoid has done most of the work for you and it is a good setup to learn from. Pleasealso let me know of any typos, broken links, or things that are not clear in the guide andI will also work to resolve these issues.

What you need:
Quake 2 CD
Quake 3.20 Update
Visible Weapons Patch

Optional Items:
Qhost
QView
WarFTPD

Whats New
The Machine
The Installation
Configuring the Server
The Command Line
The server.cfg
Starting the Server
Sample server.cfg
The Variables
Custom Variables
Remote Administration
Installing Mods
Ground Zero
Skins and Models
Other Resources

Quake 2 Download the greatest mods, maps, skins and gaming files for the follow up to the 1996 smash hit, Quake, from our fast, free download servers. Improved the menu settings to show units for various sliders, such as degrees or percentage.

This project makes Q2 look awesome. I found it here: Note that you require the retail game for this to work. Browse Berserker@Quake2 mod for Quake 2 files to download full releases, installer, sdk, patches, mods, demos, and media.

What's New
March 25 -
Started Adding my new Linux Quake 2 server setup Guide. Combined with this doccument you shouldn't have any problem getting a Q2server up and running in RedHat.

March 16 - Updated some info on the pages.

December 2 - Added the Heretic IIQuick and Direty Guide I also have in the works a guide for SiN and Half-Life.

October 11 - Added miniLinux setup guide

October 9 - Added info forsetting up a Ground Zero Server with the mission Pack.

Added Whats new Section.

The Machine
You can run Quake 2 on the following platforms: WindowsNT, WindowsNTAlpha, Windows95/98, Linux, and Solaris. I recommend at least a Pentium with atleast 32 meg of RAM. You should have at least 400 MB of harddisk space depending onthe amount of mods you will house.

Here is some good advice from Brian Hook from id Software on running a Quake 2 Server:

CPU Speed & RAM
---------------
When setting up a server a good rule of thumb is one person per 8 MHz for Pentium and Alpha machines. So a PPro/200 can probably handle a 25 person game, and a Pentium II/450 can probably handle 50-55 players. The best single processor machine you can get to run a server is probably a 633MHz DEC Alpha box from Enorex or Aspen Systems -- a reasonable system runs about $5000 and could support 75 or so players. As for RAM, obviously the more the better, but a minimum of 64MB is reasonable.

Quake 2 hd mod

Big Game vs. Many Small Games
-----------------------------
Load is definitely lower with multiple games than with a single game, i.e. one game with 64 players has a larger load than 8 games with 8 players each.

SMP or CPU Farm?
----------------
An SMP machine of some type would be a good server, unfortunately the only 4 way SMP systems available are overpriced and still use Pentium Pro/200 processors. It's more cost effective and convenient to run a cluster of single processor systems. And if you're trying to save some bucks, a large farm of low end machines is pretty damn economical, e.g. a cluster of Pentium/133 machines, each running 16 player games. Also a farm has the advantage of being more fault tolerant than having all your games hosted on a single server.

Network Bandwidth
-----------------
You will also need to keep in mind network bandwidth considerations. The number we've been using is 3KB/player/second, so a T1 which does about 200KB second should be able to support a 64 player game, but keep in mind that this will FULLY saturate that T1, and the minute you open a Web browser everyone will become lagged.

Install Quake 2
OK this one is pretty self explanatory Install Quake 2 on the server using theusing the Normal Install Size (224 MB). Obviously you wouldn't want to run yourserver from the CD and the Maximum install only copies the movies to your HD which will beworthless on a server.

Optional: I typically delete the docs directory and the textfiles in the root of Quake2 as these are not going to be of much use as well.

Patch the Server
The next thing you will want to do is apply the latest patch to your server:Currently v3.20 from our Quake2 Patch Page. I recommend getting the q2-3.20-x86-full-ctf.exe version currentlyq2-3.20-x86-full-ctf.exe(19.3 MB) as this will include the Deathmatch Maps and the Capture the Flag Maps so if youwant to run DM or CTF they are there.

The Command Line
The first thing you want to do is set up your server pretty generic to makesure you have everything together. Use Notepad or DOS's Edit to create a batch filecalled ctf.bat in your Quake2 directory that looks like this:

quake2 +set dedicated 1 +set game ctf +exec server.cfg

This is the command line that I use and can be varied by personal preference. The+set dedicated 1 tells quake 2 to run as a dedicated server. The +set game ctf tellsQuake 2 to look in the ctf directory and run that gamex86.dll thus making the game whatever mod that is in that directory. The +exec server.cfg will tell it to run your serverscript which we will set up next.

Ports
If you would like to run your server on a different port than the default 27910 or youwould like to have multiple servers running on the same machine you can also add the +setport variable to the command line. This way you could run a deathmatch server onport 27910 and a Capture the flag server on port 27920.

quake2 +set dedicated 1 +set port 27920 +set game ctf +exec server.cfg

Mods Galore
The +set game variable is what you want to set depending on the mod you are goingto run. If you want to run Capture the Flag then you would use +set game ctf. The MOD that you want to run will decide what to use here. For specifics check withyour mod's documentation.

Rocket Arena 2 +set game arena
Capture the Flag +set game ctf
Lithium II +set game lithium

What is it?
The easiest way to set up your server is by creating a server.cfg which isbasically a script that sets up all the game variables. Isay this is the easiest because you can create a server.cfg in every mod's directory sowhen you when you want to change the mod all you have to do is vary the '+setgame' part of the command line. Most mods such asCTF, LMCTF, lithium, and Rocket Arena 2 come with pre-made server.cfg's so all you have todo is edit them to meet your requirements. This way when you start your server withthe +exec server.cfg in the command line it will use all the variables specified in theserver.cfg to configure your server.

Associate the cfg
To edit a server.cfg that is already present such as the one provided with CTFyou simply open explorer and locate the server.cfg in the Quake2ctf directory and doubleclick it. Under most circumstances this will not be associated with any program andwindows95/NT will ask you what program you would like to open it with. I alwaysassociate it with note pad that way I can edit more conveniently.

Creating the server.cfg
If the MOD you want to use doesn't include a server.cfg it is simple enough tocreate your own. Use NotePad or DOS's Edit to create a new file and then save it tothe specific mod directory that you are creating the script for. Example: To set upa Capture the Flag server you would create your server.cfg in the Quake2ctf dir.

Set the Initial Map
The last line of your server.cfg should be the name of the first map you want theserver to start on NOTE: If you don't set the initial map the server will halt as nomap was specified.

Starting the server
If you setup a batchfile for your server it is a tidy habbit to create ashortcut to it and then specify that is is to close on exit so while your server isrunning you don't have to DOS boxes open. The other alternative is to simply createa shortcut with the command line in it. The third method (which I use) is to use QHost to launch the server as you can start, stop, and administerthe server from anywhere you have a network connection to the server.

The last step is to fire up the server and then make sure everything is working as youexpected. If you started the server with a shortcut or batchfile, you will have aDOS box (Console) that will allow you to use any of the console commands in. To stopthe server simply type 'quit' in the console and the server will shut down andexit. If you started the server with QHost you will have to use QView to access theConsole. Consult the QHost doccumentaion for details.

Sample Server.cfg
Here is a sample server.cfg that I use on my CTF server:

//Zoid CTF w/CTF Standard Log 1.0
set dmflags 280084
set hostname '3DGW CTF 1.02'
set website 'http://www.3dfxworld.ml.org/hellsgates/' s
set Admin 'd0gmA@3dgw.com' s
set deathmatch 1
set maxclients 16
set fraglimit 150
set capturelimit 8
set timelimit 30
set public 1
set stdlogfile 1
set rcon_password 'lala'
set allow_download 0
setmaster q2master.planetquake.com
map q2ctf1

The Variables
Here you will find the most used and most important variables to be set inyour server.cfg. To use these variables you simply put them on their own line inyour server.cfg and assign a value to them according to what you want. For a fulllist of variables that are available to Quake 2 I recommend you check The Console.

allow_download 0/1
- Toggles whether or not clients can download files from the server.
-Set to 1 to allow downloads
Example: set allow_download 0

You can also specify which items are downloadable with the following: NOTE: allow_download 1 must be set for these to work.

allow_download_maps 0/1
-Toggles whether or not clients can download maps from the server
-set to 1 to allow downloads
Example: set allow_download_maps 1

allow_download_models 0/1
-Toggles whether or not clients can download models from the server
-set to 1 to allow downloads
Example: set allow_download_models 1

allow_download_players 0/1
-Toggles whether or not clients can download player skins from the server
-set to 1 to allow downloads
Example: set allow_download_players 1

allow_download_sounds 0/1
-Toggles whether or not clients can download sounds from the server
-Set to 1 to allow downloads
Example: set allow_download_sounds 1

capturelimit <#>
-Sets the maximum number of flag captures before the level changes
Example: set capturelimit 8

dmflags <#>
-Sets the Bitflags for deathmatch options
-Set by adding up all of the following values that you want to use:

1 - No Health.
2 - No Powerups.
4 - Weapons Stay.
8 - No Falling Damage.
16 - Instant Powerups.
32 - Same Map.
64 - Teams by Skin.
128 - Teams by Model.
256 - No Friendly Fire.
512 - Spawn Farthest.
1024 - Force Respawn.
2048 - No Armor.
4096 - Allow Exit.
8192 - Infinite Ammo.
16384 - Quad Drop.
32768 - Fixed FOV.
131072 - CTF Forced Join.
262144 - Armor Protect.
524288 - CTF No Tech Powerups.

Example: set dmflags 280084

The default dmflags here (280084) is set up as:
DF_WEAPONS_STAY + DF_INSTANT_ITEMS + DF_SPAWN_FARTHEST +
DF_FORCE_RESPAWN + DF_QUAD_DROP + DF_ARMOR_PROTECT
which works out to:
4 + 16 + 512 + 1024 + 16384 + 262144 = 280084

hostname '<name>'
- This sets the Name of your server.
Example: set hostname 'Quake 2 CTF Server'

maxclients <#>
- This sets the maximum number of clients allowed on your server.
Example: set maxclients 16

fraglimit <#>
- This sets the maximum number of frags before the server switches to the nextmap
Example: set fraglimit 150

timelimit <max minutes before map change>
- This sets the maximum time the match will go before switching maps
Example: set timelimit 30

rcon_password <password>
- This sets the remote Console Password
example: rcon_password hacked

public 0/1
- Setting this to 1 makes it a public server and will make it report to the idMaster server to show up in GameSpy
-To make your server report to a master other than the id Master use the setmaster commandbelow.
Example: set public 1

setmaster
- Allows you to specify a master server to report to
Example: setmaster q2master.planetquake.com

You can get a list of master servers from gamespysserver page.

Quake 2 Mods Pc

Custom Variables
You can setup Custom rules in your server.cfg for any miscellaneous stuff youwould like to provide for GameSpy users such as the Web Site for the server or the adminse-mail address by setting the variable and adding an s after it like the following:

set WebSite 'http://www.3dfxworld.ml.org/hellsgates/' s
set Admin 'd0gmA' s
set e-mail 'd0gmA@3dgw.com' s
set location 'Michigan, USA' s

The s at the end tells GameSpy to pass this information on to the users GameSpy Rulessection. If the Custom rule contains a Web site address double clicking it inGameSpy will open the page in your browser.

I typically recommend that you set up 4 custom variables named Admin, e-mail, Location,and WebSite so that people that play on your server can contact you with problems and canfind the web site associated with the server to find out about news, stats, mods, customfiles, or anything else related to your server.

Qhost
If you want to be able to administer your server remotely one of the best choicesis QHost from Xoanan Industries. QHostruns on WindowsNT as a service and allows you to use QView to start, stop, schedule, and administeryour server. QHost allows you full use of the server console from a remote location. QHost will also restart your server if it crashes. For more information onQHost and Qview visit the Xoanan Industries website. QHost & QView also work with Quake, QuakeWorld, Hexen II, and Quake 2. QHost is currently in beta but I have found it to be a very stable and very handytool for running a remote Quake 2 server.

WarFTPD
Another great Utility for the Quake 2 server operator is WarFTPD. Itypically set up WarFTPD so I have direct ftp access to the servers Quake2 directory so Ican use QHost to stop the server and then ftp up any updates, patches or new mods that Iwant to add to the server. WarFTPD is freeware and can be found at Jgaa's Internet.

Read the Instructions
The first rule of setting up a mod is to read the instructions and make sure youunderstand what they say. Unfortunately though you will find that a lot of time isspent making the mod and very little time is spent on documenting it. Most modsrequire to go into their own directory under the Quake2 directory. One thing towatch for with mods is some will tell you to make a directory for the mod under the Quake2directory and then unzip their mod to that new directory. Other mods will tell youto simply unzip the file to your Quake2 directory. DO NOT TRUST THEM. A goodrule of thumb that I ALWAYS use is to unzip the mod to a temp directoryand then copy all the files over to the appropriate directory. I cannot tell you howmany mods I have installed that were supposed to restore the appropriate directory butdidn't and ended up as a pile of files in the root of my Quake2 dir.

Configure the Mod
Most mods will come with a server.cfg but some don't and will explain what needsto be included in it or in cases such as Lithium will include a lithium.cfg or somethingwith their mods name .cfg. In the case of Lithium I just copied the Lithium.cfg toserver.cfg. If it has no server.cfg then create one using the instructions aboveabout the server.cfg.

Then you typically want to edit the server.cfg to include custom settingssuch as your hostname, maxclients, and add the custom variables as explained above.

Then all that is required is for you to change the command line so itreflects the correct mod. Notice all you should have to change is the +set gamevariable in the command line:

quake2 +set dedicated 1 +set game ctf +exec server.cfg

As long as you took my advice above and configured everything in theserver.cfg then you will be all set and switching from one mod to another will be as easyas changing the ctf to arena in the command line. After you change the command linefire up the server either with QHost or your batch file and you should be on your way.

Ground Zero
Setting up a server using the Quake II Mission Pack 2: Ground Zero is prettystraigt forward except you have some new vatiables you can now use for the various newfeatures that Rogue has coded into the pack.

Simply make a directory called rogue under your Quake 2 directory and copypak0.pak, gamex86.dll to it and create a server.cfg as explained above and you have aGround Zero server.

Here is the server section from the Release Notes:

    DEATHMATCH FLAGS

    Quake II Mission Pack: Ground Zero is a simple add-on to the server. All of the normal/original deathmatch options apply, with the following additional flags:

    Deathmatch FlagValueDescription
    DF_NO_MINES 131072This removes A-M Bombs, Teslas, and Prox. Mines.
    DF_NO_STACK_DOUBLE 262144This keeps players from adding Quad-damage and Double-damage to get 8X damage.
    DF_NO_NUKES 524288This removes A-M Bombs.
    DF_NO_SPHERES 1048576This removes spheres from play.

    The following is a list of the recognized deathmatch flags including the four mentioned above.

    DF_NO_HEALTH 1
    DF_NO_ITEMS2
    DF_WEAPONS_STAY 4
    DF_NO_FALLING8
    DF_INSTANT_ITEMS 16
    DF_SAME_LEVEL 32
    DF_SKINTEAMS 64
    DF_MODELTEAMS 128
    DF_NO_FRIENDLY_FIRE 256
    DF_SPAWN_FARTHEST 512
    DF_FORCE_RESPAWN 1024
    DF_NO_ARMOR 2048
    DF_ALLOW_EXIT 4096
    DF_INFINITE_AMMO 8192
    DF_QUAD_DROP 16384
    DF_FIXED_FOV 32768
    DF_NO_MINES 131072Quake II Mission Pack: Ground Zero Only
    DF_NO_STACK_DOUBLE 262144Quake II Mission Pack: Ground Zero Only
    DF_NO_NUKES 524288Quake II Mission Pack: Ground Zero Only
    DF_NO_SPHERES 1048576Quake II Mission Pack: Ground Zero Only
    DF_DUALFIRE_DROP 65536Quake II Mission Pack: The Reckoning Only

    ADDITIONAL CVARS

    CVarDefault ValueDescription
    huntercamDefault ON(1)This toggles ON/OFF the Hunter Sphere chase camera
    strong_minesDefault OFF(0)This lets 'quad' and 'double' mines last the full time period.
    randomrespawnDefault OFF (0)This makes deathmatch items respawn randomly within a group (i.e. health stays health, ammo stays ammor, etc.).
    gamerules 2N/ASets the deathmatch game for TAG.

Other new CVars

Spectator support added. A new cvar is built intothe client, 'spectator.' Setting it to value other than '0' will allowyou join a game as a spectator. While in spectator mode, you can press the attackbutton to enter a chasecam mode and follow other players. Using the inventory keys (bydefault the left and right square brackets) you can switch between players in the gamewhile using the chasecam. You may enter and leave spectator mode while connected.Doing so resets your score to zero.

New cvar for the game.dll: spectator_password. If set to avalue (other than 'none'), users must set their spectator variable to this valuein order to join the server as a spectator. This password is independent of the normaluser password.

New console command for players, 'playerlist'.This will cause the server to give you a text list of the players on the server, includingtheir connect time, score, ping and spectator status. This is handy if not everyone fitson the scoreboard on busy servers.

New cvar for the game.dll: sv_maplist. This can be set toa list of map names that the server should autorotate through, rather than using thenextmap set in the actual map files themselves. For example: set sv_maplist'rdm1 rdm3 rdm14 rdm5' will cause the server to rotate through those maps.

New server cvar: sv_airaccelerate. This controls theoptional air acceleration facility. The default value is 0, which disables air control. The usual value to replicate the air control seen in the original Quake andlater versions of Quakeworld is 10. 10 allows for much more air control (as was seen in3.15). This value is ignored in single player and coop.

Skins and Models
Quake 2 like QuakeWorld allows players to use different player skins and evencooler is the ability for users to use different models. I like to keep a prettygood stock of models and skins on my server. In my search for Quake 2 Models andskins I have found The Quake 2 Player ModelPack (Q2PMP) to be the greatest source of Models and skins. I typically downloadthe Server pack and only include the most popular models and skins on the server to savespace. One nice thing about the Server Pack 3.0 is that they have removed all thebad skins (mostly black). The drawback is that they have included a lot of skins andmodels and it is a 78 meg download.

Using The PMP
To use the Player Model Pack and Skins you simply have to put them in theappropriate directory under the baseq2players directory. Typically I havemale, female, crakhor, cyborg, and zumlin with carefull attention to making sure eachPlayer Model has a set of CTF skins. In order to make sure the skins and models aredownloadable you should also make sure all of the model and skin names and extentions arein lower case or they won't always work correctly.

Other Resources
Here are some other great resources for Quake 2 server admins.

The q2servers FAQ Revision 1.3 - Agreat Quake 2 server FAQ from the Q2servers list at Planet Quake
The Console - A great reference guidefor all the console commands in Quake 2
Fahrenheit176's Quake 2 Console Command list- Another great reference for console commands.
The Linux Quake Server Pages - Lotsof good information for Linux Quake and Quake 2 servers.
LQ: Linux Quake and Utilities - Another great pagefor setting up Linux Servers

This Guide is hosted by 3D Gaming Worldthe place for all your 3D Gaming Needs
Also feel free to check out my Quake 2 Server Hell's Gates²

Yamagi Quake II is an alternative client for id Softwares Quake II. Ourgoal is to provide the best Quake II experience possible, we strive topreserve the game play as it was back in 1997. Thus we aim mostly forbug fixes, stability and gentle enhancements were appropriate.

Features

Yamagi Quake II has a lot of unique features. The most notables onesare:

  • A modern OpenGL 3.2 renderer, providing a greatly enhanced look andfeel. The original OpenGL 1.4 and even the Software renderers arestill supported. Both 3D accelerated renderers support anisotropicfiltering and multisampling anti aliasing.
  • Full support for widescreen displays and arbitrary resolutions. TheHUD can be scaled to be readable on HiDPI displays.
  • Support for surround sound, from stereo up to 7.1 channels and evenHRTF. The background music can be played from OGG/Vorbis files, a CDdrive is no longer necessary.
  • A rewritten savegame system. Yamagi Quake II savegames are completelyreliable and backward compatible between releases.
  • Highly precise timings. For example, on a flat panel display with a59.95 hertz refresh rate and vertical synchronisation (vsync) enabledYamagi Quake II is running at exactly 59.95 frames per second.
  • In comparison with the original client over 1.500 bugs were fixed. TheYamagi Quake II client is very well tested and stable. The dedicatedserver is able to run for weeks without a single restart. Last but notleast the code is fully 64 bit clean and highly portable.

Yamagi Quake II supports the following platforms:

  • FreeBSD
  • Linux
  • OpenBSD
  • Windows

Some additional platforms are supported by the community. Yamagi QuakeII works on them, but there may be bugs. The Yamagi Quake II developersmay not be able to fix these bugs due to the lack of required hardwareor software:

  • Haiku
  • Mac OS
  • NetBSD
  • Solaris

News

On 2020-10-17 Yamagi Quake II version 7.45 was released. Changesare:

Quake
  • Fix some input option not getting saved.
  • Limit busywaits to the full client. This lowers the cpu consumptionof q2ded considerably.
  • Rework the build system to be more distribution friendly. The baseCFLAGS and LDFLAGS can now be overridden by the environment and byoptions passed to make. (by Simon McVittie)
  • Fix some corner cases of broken IPv6 connectivity.
  • Fix qport colliding between several Yamagi Quake II clients.
  • Keyboard keys unknown to Yamagi Quake II can now be bound.
  • Adaptive vsync is now supported by setting r_vsync to 1.
  • Implement coop_pickup_weapons. When set to 1, a weapon may bepicked up by coop players if the player doesn`t have the weapon intheir inventory or no other player has already picked it up.
  • In coop elevators wait for coop_elevator_delay seconds.
  • If cl_anglekick is set 1 angle kicks are ignored. This breaksthe gameplay a little bit, but helps against motion sickness. Thiscvar is cheat protected.
  • Add listmaps command and autocompletion for maps. (by JBerg)
  • Make wait in scripts wait for 17 ms. This fixes some movementmakros.
  • Support for Haiku. (by David Carlier)
  • Add a mods submenu. (by earth-metal)
  • Add the vstr command and nextdemo cvar. Ported from ioquake3.(by Denis Pauk)

Note: The Windows binaries were repacked on 2020-11-27 to include anewer opengl32.dll working around abug causingcrashed in some situations.

On 2020-02-24 Three Wave Capture The Flag version 1.07 wasreleased. Changes are:

  • Small bugfixes.

On 2020-02-24 The Reckoning version 2.08 was released. Changesare:

  • Several fixes for subtle bugs (by BjossiAlfreds)

On 2020-02-24 Ground Zero version 2.07 and was released. Changesare:

Berserker Quake2 Install

  • Several fixes for subtle bugs (by BjossiAlfreds)

Downloads

Source code archives for the official releases. Instructions forcompiling the source into binaries are included:

  • Yamagi Quake II Client and Dedicated Server: Yamagi Quake II, Version7.45
  • Three Wave Capture the Flag: Three Wave Capture the Flag, Version1.07
  • The Reckoning: The Reckoning, Version2.08
  • Ground Zero: Ground Zero, Version2.07

Precompiled Windows binaries: Yamagi Quake II forWindowsPrecompiled Mac OS binaries (unofficial): Yamagi Quake II forMacArchive with all code and binaries ever released: Yamagi Quake IIArchive

Precompiled Windows testbuilds: Yamagi Quake II for WindowsTestbuilds

Vulkan test builds

How To Install Berserker Mod Quake 2.2

Denis ‘0lvin’ Pauk did a wonderfull job in porting the vkQuake2 Vulkanrenderer to Yamagi Quake II. It’ll likely part of the upcoming 8.00release. Until then feedback is needed to find the remaining problems.We’re publishing test builds at a regular intervall. Please reportproblems through Github:Bug tracker

Berserker Mod

Current build (2020-12-12):

Documentation

The documentation is included in the source archives and with theprebuild Windows binaries. An online version can be found here:Yamagi Quake IIDocumentation

Contribution and Bugreports

The development of Yamagi Quake II is hosted on Github. If you want toreport a bug or send some nice patches please open an issue or a pullrequest in the appropriate subproject. You can find our organizationat: github.com/yquake2

If you’re planing to work on a bigger feature, please do yourself afavor and ask if we’re interested before spending time onto it. Wedon’t merge every feature that’s submitted to us just because the codeis already there. Maintainability, integration with the existing codeand our general focus are of great concern, too.