|
Quake 4, like Doom 3, appears to restrict commands preceded by _ and
allows one _command per bind, this obviously causes problems when
scripting. In patch 1.1 two new commands have been added to enable use
of _ commands in a bind, doImpulse and doButton. For
example:
bind l "doButton +_moveup; wait 5; doButton -_moveup"
bind l "doImpulse _impulse1; wait 10; doImpulse _impulse5"
Vstr is also included and allows a string of commands
to be executed, albeit
limited in length. NOTE: There are no issues with 'cheat protected' warnings
in Quake4 as long as you prefix the vstr string with ua_
Weapon Cycle
Weapon Sensitivity and FOV
Yudash's Item
Timer
Sound Volume Cycle
Brightness Cycle
Netdemo Record Script
Demo Playback Speed Script
Zoom with Custom Sensitivity Adjust
LightDetailLevel Cycle
Map Config Cycle Script
NOTE: Q4MAX 0.71 users should replace AddChatLine with Echo
Weapon Cycle Script
Use mouse up to cycle explosive weapons, middle mouse button to cycle
rapid fire weapons, mouse down to cycle slow fire weapons.
//Requ!em: Select weapon 'alias' replacement
//Adapted from a Quake3 script by Aqua of UpsetChaps
set ua_SelectExplosive1 "doimpulse _impulse6;set ua_SelectExplosive vstr ua_SelectExplosive2"
set ua_SelectExplosive2 "doimpulse _impulse4;set ua_SelectExplosive vstr ua_SelectExplosive3"
set ua_SelectExplosive3 "doimpulse _impulse9;set ua_SelectExplosive vstr ua_SelectExplosive1"
set ua_SelectExplosive "vstr ua_SelectExplosive1"
set ua_SelectRapidFire1 "doimpulse _impulse8;set ua_SelectRapidFire vstr ua_SelectRapidFire2"
set ua_SelectRapidFire2 "doimpulse _impulse3;set ua_SelectRapidFire vstr ua_SelectRapidFire3"
set ua_SelectRapidFire3 "doimpulse _impulse5;set ua_SelectRapidFire vstr ua_SelectRapidFire4"
set ua_SelectRapidFire4 "doimpulse _impulse1;set ua_SelectRapidFire vstr ua_SelectRapidFire1"
set ua_SelectRapidFire "vstr ua_SelectRapidFire1"
set ua_SelectSlowFire1 "doimpulse _impulse7;set ua_SelectSlowFire vstr ua_SelectSlowFire2"
set ua_SelectSlowFire2 "doimpulse _impulse2;set ua_SelectSlowFire vstr ua_SelectSlowFire1"
set ua_SelectSlowFire "vstr ua_SelectSlowFire1"
bind MWHEELUP "vstr ua_SelectExplosive"
bind MWHEELDOWN "vstr ua_SelectSlowFire"
bind MOUSE3 "vstr ua_SelectRapidFire"
Weapon Sensitivity and FOV
Allow custom sensitivity and FOV for each weapon. Edit the sensitivity
and g_fov entries to your liking.
bind "1" "doImpulse _impulse0;sensitivity 8;g_fov 110"
bind "2" "doImpulse _impulse1;sensitivity 8;g_fov
110"
bind "3" "doImpulse _impulse2;sensitivity 8;g_fov
110"
bind "4" "doImpulse _impulse3;sensitivity 8;g_fov
110"
bind "5" "doImpulse _impulse4;sensitivity 8;g_fov
110"
bind "6" "doImpulse _impulse5;sensitivity 12;g_fov
110"
bind "7" "doImpulse _impulse6;sensitivity 8;g_fov
110"
bind "8" "doImpulse _impulse7;sensitivity 8;g_fov
110"
bind "9" "doImpulse _impulse8;sensitivity 8;g_fov 110"
bind "0" "doImpulse _impulse9;sensitivity 8;g_fov 110"
Sound Volume Cycle Script
//Requ!em: Sound Volume Cycle Script
//NOTE: Q4MAX 0.71 users should replace AddChatLine with
Echo
bind ] "toggle s_volume 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 0.9
0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1;addchatline 'Sound
volume';addchatline $s_volume"
Brightness Cycle Script
//Requ!em: Brightness Cycle Script
//NOTE: Q4MAX 0.71 users should replace AddChatLine with
Echo
bind [ "toggle r_brightness 1 1.2 1.4 1.6 1.8 2.0 1.8 1.6 1.4
1.2;addchatline 'Brightness';addchatline
$r_brightness"
Netdemo Record Script
This script sent in by Will "boo" Lyles
enables simplified stop / start of online demo recording. Simply press F5
to start the record and F5 again to stop the recording.
//Will "boo" Lyles: Netdemo record
script
//NOTE: Q4MAX 0.71 users should replace AddChatLine with
Echo
set "ua_record" "vstr ua_start"
set "ua_start" "addchatline 'recording
ON';recordNetDemo;set
ua_record vstr ua_stop"
set "ua_stop" "addchatline 'recording OFF';stopNetDemo;set
ua_record
vstr ua_start"
bind "F5" "vstr ua_record"
Demo Playback Speed Script
This script sent in by Will "boo" Lyles
enables you to adjust playkback speed of a demo. After starting the
demo press F8 to increase demo speed and F7 to puase the demo or reset
demo playback speed to standard.
//Will "boo" Lyles: Demo
Playback Speed Script
//NOTE: Q4MAX 0.71 users should replace AddChatLine with
Echo
set ua_demo_faster vstr ua_demo_ff1
set ua_demo_slower vstr ua_demo_pause
set ua_demo_pause "demo_scale .00000000001;set ua_demo_faster vstr
ua_demo_play;set ua_demo_slower vstr ua_demo_play"
set ua_demo_play "demo_scale 1;set ua_demo_faster vstr
ua_demo_ff1;set
ua_demo_slower vstr ua_demo_pause"
set ua_demo_ff1 "demo_scale 3;set ua_demo_faster vstr ua_demo_ff2;set
ua_demo_slower vstr ua_demo_play"
set ua_demo_ff2 "demo_scale 9;set ua_demo_faster vstr ua_demo_ff3;set
ua_demo_slower vstr ua_demo_play"
set ua_demo_ff3 "demo_scale 27;set ua_demo_faster vstr
ua_demo_ff4;set
ua_demo_slower vstr ua_demo_play"
set ua_demo_ff4 "demo_scale 81;set ua_demo_faster vstr
ua_demo_ff5;set
ua_demo_slower vstr ua_demo_play"
set ua_demo_ff5 "demo_scale 100;set ua_demo_faster vstr
ua_demo_ff5;set ua_demo_slower vstr ua_demo_play"
bind "F7" "vstr ua_demo_slower"
bind "F8" "vstr ua_demo_faster"
Zoom with
Custom Sensitivity Adjust Script
Adjust as required, this script cycles between 40 / 110 fov and adjusts
sensitivity accordingly. NOTE: this script will only work on servers that
do not limit g_fov settings (90 to 110)
//Requ!em: Zoom with Custom Sensitivity Adjust
//NOTE: Q4MAX 0.71 users should replace AddChatLine with
Echo
bind q "toggle g_fov 40
110; toggle sensitivity 5 15; addchatline 'FOV';addchatline $g_fov"
Map
Config Cycle Script
This script can be used to execute specific configs for the standard
CTF maps. Simply create a config file for each map that includes your
cvars, binds etc.
//Requ!em:Map Config Cycle Script
//NOTE: Q4MAX 0.71 users should replace AddChatLine with
Echo
set ua_mapconfig "Q4CTF1.cfg"
bind m "toggle ua_mapconfig Q4CTF1.cfg Q4CTF2.cfg Q4CTF3.cfg
Q4CTF4.cfg Q4CTF5.cfg;exec $ua_mapconfig ;addchatline $ua_mapconfig"
LightDetailLevel Cycle Script
This script cycles through values for the r_lightDetailLevel
which controls the threshold at which lights are drawn. Any light
below this threshold is skipped. This particularly helps with CPU limited
systems. Use the script to find the best compromise between FPS and lighting
//Requ!em:LightDetailLevel Cycle Script
//NOTE: Q4MAX 0.71 users should replace AddChatLine with
Echo
bind o "toggle r_lightDetailLevel 0 3 5 7 9;addChatLine 'LightDetailLevel';addChatLine $r_lightDetailLevel"
|