Expert Quake4 Documentation and Release Notes
Plugs and Thanks
done by Incinerator
done by Incinerator
A Note of Thanks to:
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 :
- From archived Q3 battlebots @ http://planetquake.com/battlebots
- LDash @ violationentertainment.com
Upgraded the code to 1.2 Base code for the
Added 3 XCTF Powerups, Powershield, Mutant Jump, and Vampire Artifact
Powershield - when active , will reduce damage you
take by half
Mutant Jump, Lets you jump at crazy
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
Added an XCTF Ammo Mega Pack. Used for non-ammor regen
Fixed Expert weapons Give code, so proper items give
with g_inhibitweaps cvar
Fixed (hopefully) the cap times and print statements.
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.
Fixed a problem with the blaster and only weapon
available where the game would lock up.
Changed sound effects for the Grenade Primer weapon to
distinguish it from the Launcher.
Added an Expert Version Id var for clarification of
Expert Id and older versions.(1.02)
Added the ability to change the amount of rail shots,
server side option
Added Armor regenning option via server cvar
Added the ability to customize what map items load,
items, armor, health, powerups, weapons
Added max_health and Max_armor server side
Added client side option to turn off projectile
Changed the look of the gui a bit.
Fixed a few gui bugs found.
Added new graphics for gui and icons for powerups and
Added the ability to load custom entity files per
Added g_weaponmod server side bitflag to allow weapon mod
By default any and all Expert powerups, items will load on
maps regardless of inhibits settings
Removed Single Player from gui options. No support for SP mode
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
6. Added a function to remove grapple and stop pulling on hitting a
7. Grapple does damage now..
8. Grenades from Launcher now bounce 1nce and explode on 2nd impact.
EXPERT CVARS & SETTINGS
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.
This will allow the game to load the newly created entity file.
New Expert Entities include: Mutant Jump powerup
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
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.
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
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
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
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
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.
Usage: g_inhibititems 1|0
Enables or disables health items on maps Default is
disabled or 1
Usage: g_inhibitpowerups 0|1
Inhibit Quake 4 powerups in maps default is disabled or
Usage: g_inhibitweaponitems 0|1
Inhibit weapon pickups on maps default disabled or 1
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
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
Client Cvar hookpredict
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
Usage cg_forceteamcolors 0,1, or 2
When set to 1, this will force the team
colors to use colors based upon the team you are on.
When this is set to 2, teamcolors will be set
by using cg_teamcolor and cg_enemycolor cvars.
Usage: cg_teamcolor "0 255 0" (defaults to
when cg_forceteamcolors is set to 2, the cg_teamcolor cvar will be use to specify team
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.
Usage: cg_enemycolor "255 255 0"(default
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
Turn on or off all projectile trails On = 0