Contact Us

Choose theme

About Quake 4 Expert
Q4 Expert Mod Docs
Q4 Expert Files
Q4 EXPERT Screens
About New Expert
Q3 Newexpert Docs
Q3 Newexpert Files
Q3A Expert Screens
Q2 Downloads
Expert 3.2 Docs
XCTF Damagedrop
Expert-4.0.3 Docs
Q2 RTF/CTF 4.0.3
XCTF Revisions
Q3 Battlebots
Quake3 World Forums
Beyond the Portals
Nachos Net
Home of Expert Quake Quake 4 Documentation

Expert Quake4 Documentation and Release Notes

Plugs and Thanks :

Coding :
done BY Incinerator @ http://expertctf.net

done by Incinerator

New Graphics:
 done by Incinerator

A Note of Thanks to:

Models :
done by LDASH @ http://violationentertainment.com
Thanks for your time and awesome modeling skills!

Skins for HIgh Visibilty :

I would like to thank q4max team for providing the base code for fullbright skinning and graphics to get fullbright skins in the game. The q4max team is located @ http://q4max.com . Thanks again AnthonyJ and team.

I would also like to extend a big Thanks to X^Tigre @ http://www.baseft.com for allowing expert to use the high visibilty skin code and graphics.

Additional Code :
done by Myrkul -- health and ammo regen code as well as a few other bits.

Beta testers :     
All the guys on the http://expertctf.com/forum , you all know who you are, Thanks :)

PR By :
Lil-Goner for getting the word out about the mod.

New Content :

Sounds - From archived Q3 battlebots @ http://planetquake.com/battlebots
New Models - LDash @ violationentertainment.com

   5-8-2006 -- Changes/Updates

  1.  Upgraded the code to 1.2 Base code for the sdk.
  2.  Added 3 XCTF Powerups, Powershield, Mutant Jump, and Vampire Artifact
    1.  Powershield - when active , will reduce damage you take by half
    2.  Mutant Jump, Lets you jump at crazy distances
    3.  Vampire Artifact, will give you a percentage of damage you deal to your health d. Included is a ctf sample map that shows the powerups and xctf items added
  3.  Added an XCTF Ammo Mega Pack. Used for non-ammor regen modes.
  4.  Fixed Expert weapons Give code, so proper items give with g_inhibitweaps cvar
  5.  Fixed (hopefully) the cap times and print statements.
  6.  Added an exec line on a per mape name basis on each map load to do custom cvar changes per map. See doc below for more information. This is for servers only.
  7.  Fixed a problem with the blaster and only weapon available where the game would lock up.
  8.  Changed sound effects for the Grenade Primer weapon to distinguish it from the Launcher.
  9.  Added an Expert Version Id var for clarification of Expert Id and older versions.(1.02)
  10.  Added the ability to change the amount of rail shots, server side option
  11.  Added Armor regenning option via server cvar on/off
  12.  Added the ability to customize what map items load, items, armor, health, powerups, weapons
  13.  Added max_health and Max_armor server side cvars
  14.  Added client side option to turn off projectile trails.
  15.  Changed the look of the gui a bit.
  16.  Fixed a few gui bugs found.
  17. Added new graphics for gui and icons for powerups and hud 
  18.  Added the ability to load custom entity files per map
  19. Added g_weaponmod server side bitflag to allow weapon mod weapons
  20. By default any and all Expert powerups, items will load on maps regardless of inhibits settings
  21. Removed Single Player from gui options. No support for SP mode games
  22. Added a sound channel for the grapple, so grapple sounds don't get squashed by other events

  3-3-2006 -- Changes/Updates

1. Finally fixed the grapple jitter on wall hanging
> 2. Added a new weapon (hand grenade with a Launcher) Primer Weapon
3. Back Pack Item added for dropping items on death ie.blaster and gauntlet
4. Alot of changes for Gui related items with the new Primer Weapon
5. Added menu items for binding weapons in the guis

2-14-2006 -- Changes/Updates

1. Fixed yet another code goof on my part with the hook code, removed changes
2. Linux Support via expertl.pk4 included in this release
3. As always, remove old expert folder/versions and install the new package


2-11-2006 -- Changes/Updates

1. Still working on tweaking grapple move functions. 
2. Grapple client 0 jitter corrected. Code bug..my bad
3. Weapons numbering was offset by 1, now corrected. 
4. Added auto server grapple prediction (see hookpredict cvar below)
5. As of this time Hand Grenade weapon is not ready, will release with next release
6. Added a function to remove grapple and stop pulling on hitting a teleporter(untested)
7. Grapple does damage now..
> 8. Grenades from Launcher now bounce 1nce and explode on 2nd impact.




Custom entity file loading per map

An expert server can now load custom entity files on map loading. The purpose is to allow adding of custom expert entities to any map. Create a file named the same as the map file. Place it in the same path as the map. Upon server loading the map files, it will also load any entities created in the entity file. View the xctftestmap.pk4 for how to create the files and add entities to it. To view it, open it in winzip and view the ctf.ent file. Example: maps/mp/q4ctf1.ent Generally speaking though, the best way to create them is to open a map in the editor, add any Xctf entities you wouldn't see in a typical map. the save the file. Next, open the file in a word editor like notepad or wordpad for example, then cut and paste the xctf entities to the newly created .ent file.. save it and zip it to a fileusing the maps path. ie. maps/mp/*.* ....

This will allow the game to load the newly created entity file. New Expert Entities include: Mutant Jump powerup

  • Powershield Powerup
  • Vampire Artifact Powerup
  •  Mega Ammo Pack
  • Back Pack
  • Any other standard Q4 items you wish to add to a map


Note:    The file name should be the actual map name and not the description name. 

 Server map config options..

The way it works, and what a server admin will need to do . Create a "mapfilename".cfg and add any cvars or settings they wish to change

An example: 

With map q4ctf1, create a file named q4ctf1.cfg and place it in expert folder, add any config changes you want like:

 seta g_noclipregions 1 // removes clip areas in maps add any other serverside cvars per map..

The server will check for the existance of a .cfg with the servers map file name and execute it.

*Note: The file name should be the actual map name and not the description name.

Server Cvar inhibitweaps

Uses bitflags to disable weapons default setting is 81

  • 0 -- all weapons enabled (except dmg)
  • 1 -- disables gauntlet
  • 2 -- disables blaster 
  • 4 -- disables machinegun
  • 8 -- disables shotgun
  • 16 -- disables hyperblaster
  • 32 -- disables grenade Launcher
  • 64 -- disables Nailgun 
  • 128 -- disables Rocket Launcher
  • 256 -- disables Rail Gun 
  • 512 -- disables Lightning Gun
  • 1024 -- disables Primer weapon 

 We never spawn a Dark Matter Gun

Usage: inhibitweaps 81 (This inhibits gauntlet, hyperblaster, and Nailgun)

You find your number by adding each value up to inhibit the particular weapon
1 + 2 + 4 + 8 + 16 + 32 + 64 + 128 + 256 + 512 + 1024  = 2047
This will disable all and is not recommended..

Server Cvar g_weaponmods 

 Usage g_weaponmods (value)

Use Bitflags to set weapon mods given to players

  • 0 - disables all weaponmods given
  • 1 - Gives Weaponmod_machinegun_ammo
  • 2 - Gives weaponmod_shotgun_ammo
  • 4 - Gives weaponmod_hyperblaster_bounce
  • 8 - Gives weaponmod_nailgun_power
  • 16 - Gives weaponmod_nailgun_seek
  • 32 - Gives weaponmod_rocketlauncher_homing
  • 64 - Gives weaponmod_rocketlauncher_burst
  • 128 - Gives weaponmod_railgun_penetrate
  • 256 - Gives weaponmod_lightninggun_chain

So, to use this properly add all the numbers of each weaponmod you want to allow

 (1 + 2 + 4 + 8 + 16 + 32 + 64 + 128 + 256) == 511 the default setting is disabled or 0

Server Cvar g_throwspeed

Usage : g_throwspeed 1750 (default)

Sets a grapples speed traveling through the air before it collides with anything

Server Cvar g_pullspeed

Usage: g_pullspeed 650 (default)
> Sets the pullspeed a grapple uses to pull a player to the grapples location

Server Cvar g_grappleentity
Usage: g_grappleentity "projectile_hook" (default)
> This is for setting custom projectile .def for the grapple entity.

Note: I suggest you don't play with this unless you know what you are doing with it. This will allow for custom grapple definitions of the projectile class.

Server Cvar Lethality

Usage: lethality 1.0(default)
> This variable is an overall damage multiplier

Server Cvar fireoffset

Usage: fireoffset 8(default)
This variable is used to offset the fire grapple Muzzle Point
Note: 1. Beta and may be removed at a later date

Server Cvar allowFallDamage

Usage: allowFallDamage 1

Enables falling damage from server, 0 disables.
> Default is allowed

Server Cvar grappleoffset

Usage: grappleoffset -8

This variable is an Offset for grapple move pull in relation to the grapples location and the players origin.

Note: 1. Beta and may be removed at a later date

Server Cvar g_skyhook

Usage: g_skyhook 0|1

This variable Enables, Disables the hook grappling to the sky Default is enabled , or 1

Server Cvar noclipregions

Usage: noclipregions 0|1

This variable enables and disables clip regions on maps.
This is useful on maps where the some areas are blocked off by invisible walls, known as clip regions, and allows players more area to move around. Disabled by default.

Note: This should be set on a per map basis and tested on each map before utilizing it. Results may allow players to go outside proper bounds of maps and cause unforseen problems.

Server Cvar g_inhibititems

Usage: g_inhibititems 1|0

Enables or disables health items on maps Default is disabled or 1

Server CVar g_inhibitpowerups

Usage: g_inhibitpowerups 0|1

Inhibit Quake 4 powerups in maps default is disabled or 1 '

Server CVar g_inhibitweaponitems

Usage: g_inhibitweaponitems 0|1

Inhibit weapon pickups on maps default disabled or 1

Server CVar g_inhibitammo

Usage: g_inhibitammo 0|1

Inhibits Ammo on maps default disabled or 1

 Server CVar g_inhibitarmor

Usage: g_inhibitarmor 0|1

Inhibits Armor on maps default disabled or 1

Server CVar g_armorregen

Usage: g_armorregen 0|1 Enables or Disables Armor Reggenning - default disabled.

Will start you with 50 and raise to g_maxarmor cvar

 Server CVar g_healthregen

 Usage: g_healthregen 0|1

 Enables or Disables health regenning, while enabled will raise health to g_maxhealth cvar

 Server CVar g_ammoregen 

 Usage: g_ammoregen 0|1

 Enable, disable Ammo regenning, default is enabled

Server CVar g_railshots

Usage: g_railshots 3

 Set Rail fire count - 3 2 0r 1

 Server CVar g_maxhealth

Usage: g_maxhealth 160

Set to override max health in player.def, max is 999

  Server CVar g_maxarmor 

 Usage: g_maxarmor 120


Sets max armor Value, default is 120 max 999



 Client Variables and CVAR Settings



Client Cvar hookpredict    

Updated 2-11-2006

usage: hookpredict 0

Updated: Added a way for the server to try to set your predict time it can be overriden by simply setting hookpredict cvar to something other then 0. This is still clamped between -200 and 200. Clamped means you can only use the range of numbers between -200 and 200, nothing above or below that will be used, if you set the number to -999, it will use -200. This is to help clients smooth grapples prediction time on game servers.

*Recommend that setting this should be based in the range of your ping

1.negative values can improve your movement predictions.
2. Beta and may be removed at a later date.

Team Bright Color Support

Client Cvar cg_forceteamcolors

Usage cg_forceteamcolors 0,1, or 2

  • 0 -Don't Use Color Cvars
  • 1 - Force colors by team
  • 2 -  Use cg_team|cg_enemy colors


When set to 1, this will force the team colors to use colors based upon the team you are on.

  • Example: Marines will use bright green, Strogg will use orange, colors are automautomatically set by the game.

When this is set to 2, teamcolors will be set by using cg_teamcolor and cg_enemycolor cvars.

Client cvar cg_teamcolor

Usage: cg_teamcolor "0 255 0" (defaults to green)

when cg_forceteamcolors is set to 2,  the cg_teamcolor cvar will be use to specify team colors.

 The 3 numbers used in order are: Red Green Blue, in that order, and are valid from 0 to 255 for each color 0 in red uses no red where as 255 is full red.

 Client Cvar cg_enemycolor 

Usage: cg_enemycolor "255 255 0"(default Orange)

When cg_forceteamcolors is set to 2, cg_enemycolor cvar will be use to specify team colors

The 3 numbers used in order are:

Red Green Blue, in that order, and are valid from 0 to 255 for each color 0 in red uses no red where as 255 is full red.

Client Cvar zoomoverride

zoomoverride "0" (default)

When setting this to 1, each weapons zooming can be overridden by a single zoomfov value in which you specify, valid values are 20 to 90. They are clamped values, so if you type something outside that range it will use the closer of the 2 values.

When set to 0, the zooming for each weapon will be set to whatever the weapons zooming variable is set to.

All weapons in Expert now have zooming...

client cvar ZoomFov

Usage zoomFov 45 (default)

when zoomoverride is set to 1, the game sets alll weapons fov's to the zoomfov value, and is clamped between 20 to 90. (Why use a zoom if your going to set it outside those values

Client CVar cg_noprojectiletrails 

cg_noprojectiletrails 0|1

Turn on or off all projectile trails On = 0