Comparing two revisions:
Revisions for Team IPX ETQW Configs
Fri, 27/06/2008 - 16:46 by ltmon | Mon, 30/06/2008 - 01:23 by CombatChuck | ||
---|---|---|---|
< previous diff | next diff > | ||
Changes to Body | |||
- | + | ||
+ | *Chuck's Key Binds*
| ||
+ | Just the fancy ones... most of these are ideas i've stolen from others, so i take very little credit.
| ||
+ | The first one is self explanitory:
| ||
+ | <pre>bind "del" "kill" "" "default" //suicide</pre>
| ||
+ | *Stroy Up & Down Keys*... StroyUp is same as GDF Reload, which feels very natural... I use z for stroy down, but what ever button you choose to use should be easily accessible!
| ||
+ | <pre>
| ||
+ | bind "r" "_reload" "" "default"
| ||
+ | bind "r" "_stroyUp" "" "aggressor" // has to be set individually for each strogg class,
| ||
+ | bind "r" "_stroyUp" "" "technician" // so as not to screw up some other class specific binds
| ||
+ | bind "r" "_stroyUp" "" "constructor"
| ||
+ | bind "r" "_stroyUp" "" "oppressor"
| ||
+ | bind "r" "_stroyUp" "" "infiltrator"
| ||
+ | bind "z" "_stroyDown" "" "default"
| ||
+ | </pre>
| ||
+ | *Flyer Controls*: the following script makes flyers behave more like a flyer drone, or free fly while spectating. Personally i find this easier... but i still suck at flying. Note: CTRL is usually my crouch key... substitute C if this is what you use to crouch.
| ||
+ | <pre>
| ||
+ | seta g_bind_context_anansi "flyer" // create a generic flyer context
| ||
+ | seta g_bind_context_bumblebee "flyer"
| ||
+ | seta g_bind_context_hornet "flyer"
| ||
+ | bind "w" "_sprint" "" "flyer" // Forwards
| ||
+ | bind "s" "_speed" "" "flyer" // Airbrake
| ||
+ | bind "SPACE" "_forward" "" "flyer" // Up (Ascend)
| ||
+ | bind "CTRL" "_back" "" "flyer" // Down (Descend)
| ||
+ | </pre>
| ||
+ | *Fire decoys with Mouse2*... that pesky 1 key is just to hard to reach quickly. Uses the Vehicle and Flyer contexts, so doesnt affect ironsights when on foot.
| ||
+ | <pre>
| ||
+ | bind "MOUSE2" "_weapon0" "" "vehicle" // Fire decoy
| ||
+ | bind "MOUSE2" "_weapon0" "" "flyer"
| ||
+ | </pre>
| ||
+ | *Changing the view in vehicles:*
| ||
+ | <pre>
| ||
+ | bind "HOME" "_vehicleCamera" "" "default" // Toggle 3rd Person View
| ||
+ | bind "END" "toggle g_showVehicleCockpits" "" "default" // Toggle Cockpit
| ||
+ | </pre>
| ||
+ | *Class and Weapon Selection Binds*, save you going to the limbo menu. This last one is a big one, and comes in four parts.
| ||
+ | |||
+ | Its big because it needs to be set individually for each class, if you try to consolidate them all to a GDF and Strogg context (similar to how i did the flyer context above) you lose the ability make class specific binds (the weapons selection relies on this).
| ||
+ | |||
+ | How it works: pressing alt-1 selects soldier, alt-2 selects medic, alt-3 engineer... etc... if you are Strogg the the Strogg equivalent is selected.
| ||
+ | pressing shift-1 selects the first weapon for your current class (eg Assault Rifle), shift-2 the second (eg Shotgun)... etc. Changes take effect on next respawn. oh, and you get a happy green message telling you what you have just chosen.
| ||
+ | |||
+ | Part 1: Class Selection for GDF
| ||
+ | <pre>
| ||
+ | bind "1" "clientClass soldier 0; addchatline '^2Class = Soldier'" "alt" "soldier"
| ||
+ | bind "1" "clientClass soldier 0; addchatline '^2Class = Soldier'" "alt" "medic"
| ||
+ | bind "1" "clientClass soldier 0; addchatline '^2Class = Soldier'" "alt" "engineer"
| ||
+ | bind "1" "clientClass soldier 0; addchatline '^2Class = Soldier'" "alt" "fieldops"
| ||
+ | bind "1" "clientClass soldier 0; addchatline '^2Class = Soldier'" "alt" "covertops"
| ||
+ | bind "2" "clientClass medic 0; addchatline '^2Class = Medic'" "alt" "soldier"
| ||
+ | bind "2" "clientClass medic 0; addchatline '^2Class = Medic'" "alt" "medic"
| ||
+ | bind "2" "clientClass medic 0; addchatline '^2Class = Medic'" "alt" "engineer"
| ||
+ | bind "2" "clientClass medic 0; addchatline '^2Class = Medic'" "alt" "fieldops"
| ||
+ | bind "2" "clientClass medic 0; addchatline '^2Class = Medic'" "alt" "covertops"
| ||
+ | bind "3" "clientClass engineer 0; addchatline '^2Class = Engineer'" "alt" "soldier"
| ||
+ | bind "3" "clientClass engineer 0; addchatline '^2Class = Engineer'" "alt" "medic"
| ||
+ | bind "3" "clientClass engineer 0; addchatline '^2Class = Engineer'" "alt" "engineer"
| ||
+ | bind "3" "clientClass engineer 0; addchatline '^2Class = Engineer'" "alt" "fieldops"
| ||
+ | bind "3" "clientClass engineer 0; addchatline '^2Class = Engineer'" "alt" "covertops"
| ||
+ | bind "4" "clientClass fieldops 0; addchatline '^2Class = Field Ops'" "alt" "soldier"
| ||
+ | bind "4" "clientClass fieldops 0; addchatline '^2Class = Field Ops'" "alt" "medic"
| ||
+ | bind "4" "clientClass fieldops 0; addchatline '^2Class = Field Ops'" "alt" "engineer"
| ||
+ | bind "4" "clientClass fieldops 0; addchatline '^2Class = Field Ops'" "alt" "fieldops"
| ||
+ | bind "4" "clientClass fieldops 0; addchatline '^2Class = Field Ops'" "alt" "covertops"
| ||
+ | bind "5" "clientClass covertops 0; addchatline '^2Class = Covert Ops'" "alt" "soldier"
| ||
+ | bind "5" "clientClass covertops 0; addchatline '^2Class = Covert Ops'" "alt" "medic"
| ||
+ | bind "5" "clientClass covertops 0; addchatline '^2Class = Covert Ops'" "alt" "engineer"
| ||
+ | bind "5" "clientClass covertops 0; addchatline '^2Class = Covert Ops'" "alt" "fieldops"
| ||
+ | bind "5" "clientClass covertops 0; addchatline '^2Class = Covert Ops'" "alt" "covertops"
| ||
+ | </pre>
| ||
+ | Part 2: Weapon Selection for GDF
| ||
+ | <pre>
| ||
+ | bind "1" "clientClass soldier 0; addchatline '^2Weapon = Assault Rifle'" "shift" "soldier"
| ||
+ | bind "2" "clientClass soldier 1; addchatline '^2Weapon = Rocket Launcher'" "shift" "soldier"
| ||
+ | bind "3" "clientClass soldier 2; addchatline '^2Weapon = GPMG'" "shift" "soldier"
| ||
+ | bind "4" "clientClass soldier 3; addchatline '^2Weapon = Shotgun'" "shift" "soldier"
| ||
+ | bind "1" "clientClass medic 0; addchatline '^2Weapon = Assault Rifle'" "shift" "medic"
| ||
+ | bind "2" "clientClass medic 1; addchatline '^2Weapon = Shotgun'" "shift" "medic"
| ||
+ | bind "1" "clientClass engineer 0; addchatline '^2Weapon = Assault Rifle'" "shift" "engineer"
| ||
+ | bind "2" "clientClass engineer 1; addchatline '^2Weapon = Shotgun'" "shift" "engineer"
| ||
+ | bind "3" "clientClass engineer 2; addchatline '^2Weapon = Grenade Launcher'" "shift" "engineer"
| ||
+ | bind "1" "clientClass fieldops 0; addchatline '^2Weapon = Assault Rifle'" "shift" "fieldops"
| ||
+ | bind "2" "clientClass fieldops 1; addchatline '^2Weapon = Scoped Assault Rifle'" "shift" "fieldops"
| ||
+ | bind "1" "clientClass covertops 0; addchatline '^2Weapon = Scoped Assault Rifle'" "shift" "covertops"
| ||
+ | bind "2" "clientClass covertops 1; addchatline '^2Weapon = Sniper Rifle'" "shift" "covertops"
| ||
+ | </pre>
| ||
+ | Part 3: Class Selection for Strogg
| ||
+ | <pre>
| ||
+ | bind "1" "clientClass aggressor 0; addchatline '^2Class = Aggressor'" "alt" "aggressor"
| ||
+ | bind "1" "clientClass aggressor 0; addchatline '^2Class = Aggressor'" "alt" "technician"
| ||
+ | bind "1" "clientClass aggressor 0; addchatline '^2Class = Aggressor'" "alt" "constructor"
| ||
+ | bind "1" "clientClass aggressor 0; addchatline '^2Class = Aggressor'" "alt" "oppressor"
| ||
+ | bind "1" "clientClass aggressor 0; addchatline '^2Class = Aggressor'" "alt" "infiltrator"
| ||
+ | bind "2" "clientClass technician 0; addchatline '^2Class = Technician'" "alt" "aggressor"
| ||
+ | bind "2" "clientClass technician 0; addchatline '^2Class = Technician'" "alt" "technician"
| ||
+ | bind "2" "clientClass technician 0; addchatline '^2Class = Technician'" "alt" "constructor"
| ||
+ | bind "2" "clientClass technician 0; addchatline '^2Class = Technician'" "alt" "oppressor"
| ||
+ | bind "2" "clientClass technician 0; addchatline '^2Class = Technician'" "alt" "infiltrator"
| ||
+ | bind "3" "clientClass constructor 0; addchatline '^2Class = Constructor'" "alt" "aggressor"
| ||
+ | bind "3" "clientClass constructor 0; addchatline '^2Class = Constructor'" "alt" "technician"
| ||
+ | bind "3" "clientClass constructor 0; addchatline '^2Class = Constructor'" "alt" "constructor"
| ||
+ | bind "3" "clientClass constructor 0; addchatline '^2Class = Constructor'" "alt" "oppressor"
| ||
+ | bind "3" "clientClass constructor 0; addchatline '^2Class = Constructor'" "alt" "infiltrator"
| ||
+ | bind "4" "clientClass oppressor 0; addchatline '^2Class = Oppressor'" "alt" "aggressor"
| ||
+ | bind "4" "clientClass oppressor 0; addchatline '^2Class = Oppressor'" "alt" "technician"
| ||
+ | bind "4" "clientClass oppressor 0; addchatline '^2Class = Oppressor'" "alt" "constructor"
| ||
+ | bind "4" "clientClass oppressor 0; addchatline '^2Class = Oppressor'" "alt" "oppressor"
| ||
+ | bind "4" "clientClass oppressor 0; addchatline '^2Class = Oppressor'" "alt" "infiltrator"
| ||
+ | bind "5" "clientClass infiltrator 0; addchatline '^2Class = Infiltrator'" "alt" "aggressor"
| ||
+ | bind "5" "clientClass infiltrator 0; addchatline '^2Class = Infiltrator'" "alt" "technician"
| ||
+ | bind "5" "clientClass infiltrator 0; addchatline '^2Class = Infiltrator'" "alt" "constructor"
| ||
+ | bind "5" "clientClass infiltrator 0; addchatline '^2Class = Infiltrator'" "alt" "oppressor"
| ||
+ | bind "5" "clientClass infiltrator 0; addchatline '^2Class = Infiltrator'" "alt" "infiltrator"
| ||
+ | </pre>
| ||
+ | Part 4: Weapon Selection for Strogg
| ||
+ | <pre>
| ||
+ | bind "1" "clientClass aggressor 0; addchatline '^2Weapon = Lacerator'" "shift" "aggressor"
| ||
+ | bind "2" "clientClass aggressor 1; addchatline '^2Weapon = Obliterator'" "shift" "aggressor"
| ||
+ | bind "3" "clientClass aggressor 2; addchatline '^2Weapon = Hyperblaster'" "shift" "aggressor"
| ||
+ | bind "4" "clientClass aggressor 3; addchatline '^2Weapon = Nailgun'" "shift" "aggressor"
| ||
+ | bind "1" "clientClass technician 0; addchatline '^2Weapon = Lacerator'" "shift" "technician"
| ||
+ | bind "2" "clientClass technician 1; addchatline '^2Weapon = Nailgun'" "shift" "technician"
| ||
+ | bind "1" "clientClass constructor 0; addchatline '^2Weapon = Lacerator'" "shift" "constructor"
| ||
+ | bind "2" "clientClass constructor 1; addchatline '^2Weapon = Nailgun'" "shift" "constructor"
| ||
+ | bind "3" "clientClass constructor 2; addchatline '^2Weapon = Plasma Launcher'" "shift" "constructor"
| ||
+ | bind "1" "clientClass oppressor 0; addchatline '^2Weapon = Lacerator'" "shift" "oppressor"
| ||
+ | bind "2" "clientClass oppressor 1; addchatline '^2Weapon = Accurized Lacerator'" "shift" "oppressor"
| ||
+ | bind "1" "clientClass infiltrator 0; addchatline '^2Weapon = Accurized Lacerator'" "shift" "infiltrator"
| ||
+ | bind "2" "clientClass infiltrator 1; addchatline '^2Weapon = Railgun'" "shift" "infiltrator"
| ||
+ | </pre> |
Team IPX ETQW Configs
WEBSITE RESOURCES
http://4newbies.planetwolfenstein.gamespy.com/ETQW/cvars.php
SUGGESTED CONFIGS
CONFIG | variables/defult | How its used | Whats it Achieve | |||||
---|---|---|---|---|---|---|---|---|
seta com_unlockFPS 1 | 0=off, 1=on | seta com_unlockFPS 1 | Shows your current Frames Per Second in the top right corner | |||||
seta com_unlock_timingMethod 1 | 1=on 0=off | seta com_unlock_timingMethod 1 | enables you to “increase” your Frames Per Second via the below commands | |||||
seta com_unlock_maxFPS 120 | defult = 30 | seta com_unlock_maxFPS 120 | increases your FPS to a max of 120 | |||||
seta g_fov 120 | Defult =95, but can range from 95-120 | seta g_fov 120, or seta g_fov 95 etc | gives more angle on your field of vision. ie you can see more of whats going on around you | |||||
HarassmentPandas Suggested Vehicle Settings
Turn off cockpit
Allow the camera angle to change
Remember Camera Views – This is a huge freaking difference. No cockpit means greater view angle.
Robag’s Settings
path to myconfig.cfg
\My Documents\id Software\Enemy Territory – QUAKE Wars\base\myconfig.cfg
use WORDPAD to create and edit file.
File:myconfig.cfg
CONFIG | variables/defult | How its used | Whats it Achieve | |||||
---|---|---|---|---|---|---|---|---|
seta net_clientPunkbusterEnabled | “1” | turns on Punkbuster | ||||||
seta ui_clanTagPosition | “1” | Adds Clan tag to the end of your Name | ||||||
seta ui_clanTag | “-^4I^7P^AX” | Clan Tag with | ||||||
seta ui_name | “Robag” | You UI Name | ||||||
seta com_allowconsole | “1” | Enables console | press the ~ key to activate | |||||
seta g_skipintro | “1” | turns of Intro Movie | ||||||
seta com_videoRam | “512” | Set GPU Ram Size | V Important with SLI | |||||
seta r_useThreadedRenderer | “2” | Tunes GPU Rendering Engine | ||||||
seta g_advancedHud | “1” | More Hud Details Ingame | ||||||
bind “w” “_voice” “” “default” | Binds World Chat Key | |||||||
seta g_playTooltipSound | “0” | Turns Off Tools Tips audio | ||||||
seta g_tooltipVolumeScale | “-20” | Suppress Volume for Tool Tips Ingame |
path to autoexec.cfg
\My Documents\id Software\Enemy Territory – QUAKE Wars\sdnet\robag\base\autoexec.cfg
File:autoexec.cfg
set logtimestamps “1”
set logfile “2”
set logFileName “console_$Y-$M-$D_$h.$m.$s.log”
set developer “1”
pb_logtofile 1
this creates a handy log file of a full dump of the console during the start up of the game
Replace robag with your ETQW Profile name
The placement of the file is very important.
Otherwise the “profile.cfg” and “bindings.cfg” will reapply the default keybinds.
if you remove “profile.cfg” and “bindings.cfg” files ETQW will replace them the next time you run the game
Ltmon’s Zombie Bot Config
This is a good config to run against bots (won’t work in a pub) in order to set up the Strogg as weaponless zombies and yourself as god. I use this to practice aiming. You should save this in your profile base or pro dir as “zombie.cfg”, then in the console type “exec zombie”.
Next, stand at the top of a hill with a supply crate and fire at any passing strogg. They’ll come towards you, and you can practice aiming and see if you can get them all before the top of the hill. Turning on jumping and strafe jumping will make it harder, and you can also tweak this to do the same thing as a Strogg yourself.
net_allowcheats 1 god bot_enable 1 bot_uiSkill 2 bot_skill 2 bot aimSkill 2 bot_uiNumGDF 0 bot_uiNumStrogg 12 botSillyWarmup 0 bot_knifeOnly 1 bot_useVehicles 0 bot_useRearSpawn 0 bot_ignoreGoals 1 bot_doObjectives 0 bot_noTaunt 1 bot_noChat 1 bot_canDropDeployables 0 bot_canStrafeJump 0 bot_noRandomJump 1 bot_useSpawnHosts 0
Chuck’s Key Binds
Just the fancy ones… most of these are ideas i’ve stolen from others, so i take very little credit.
The first one is self explanitory:
bind "del" "kill" "" "default" //suicide
Stroy Up & Down Keys… StroyUp is same as GDF Reload, which feels very natural… I use z for stroy down, but what ever button you choose to use should be easily accessible!
bind "r" "_reload" "" "default" bind "r" "_stroyUp" "" "aggressor" // has to be set individually for each strogg class, bind "r" "_stroyUp" "" "technician" // so as not to screw up some other class specific binds bind "r" "_stroyUp" "" "constructor" bind "r" "_stroyUp" "" "oppressor" bind "r" "_stroyUp" "" "infiltrator" bind "z" "_stroyDown" "" "default"
Flyer Controls: the following script makes flyers behave more like a flyer drone, or free fly while spectating. Personally i find this easier… but i still suck at flying. Note: CTRL is usually my crouch key… substitute C if this is what you use to crouch.
seta g_bind_context_anansi "flyer" // create a generic flyer context seta g_bind_context_bumblebee "flyer" seta g_bind_context_hornet "flyer" bind "w" "_sprint" "" "flyer" // Forwards bind "s" "_speed" "" "flyer" // Airbrake bind "SPACE" "_forward" "" "flyer" // Up (Ascend) bind "CTRL" "_back" "" "flyer" // Down (Descend)
Fire decoys with Mouse2… that pesky 1 key is just to hard to reach quickly. Uses the Vehicle and Flyer contexts, so doesnt affect ironsights when on foot.
bind "MOUSE2" "_weapon0" "" "vehicle" // Fire decoy bind "MOUSE2" "_weapon0" "" "flyer"
Changing the view in vehicles:
bind "HOME" "_vehicleCamera" "" "default" // Toggle 3rd Person View bind "END" "toggle g_showVehicleCockpits" "" "default" // Toggle Cockpit
Class and Weapon Selection Binds, save you going to the limbo menu. This last one is a big one, and comes in four parts.
Its big because it needs to be set individually for each class, if you try to consolidate them all to a GDF and Strogg context (similar to how i did the flyer context above) you lose the ability make class specific binds (the weapons selection relies on this).
How it works: pressing alt-1 selects soldier, alt-2 selects medic, alt-3 engineer… etc… if you are Strogg the the Strogg equivalent is selected.
pressing shift-1 selects the first weapon for your current class (eg Assault Rifle), shift-2 the second (eg Shotgun)… etc. Changes take effect on next respawn. oh, and you get a happy green message telling you what you have just chosen.
Part 1: Class Selection for GDF
bind "1" "clientClass soldier 0; addchatline '^2Class = Soldier'" "alt" "soldier" bind "1" "clientClass soldier 0; addchatline '^2Class = Soldier'" "alt" "medic" bind "1" "clientClass soldier 0; addchatline '^2Class = Soldier'" "alt" "engineer" bind "1" "clientClass soldier 0; addchatline '^2Class = Soldier'" "alt" "fieldops" bind "1" "clientClass soldier 0; addchatline '^2Class = Soldier'" "alt" "covertops" bind "2" "clientClass medic 0; addchatline '^2Class = Medic'" "alt" "soldier" bind "2" "clientClass medic 0; addchatline '^2Class = Medic'" "alt" "medic" bind "2" "clientClass medic 0; addchatline '^2Class = Medic'" "alt" "engineer" bind "2" "clientClass medic 0; addchatline '^2Class = Medic'" "alt" "fieldops" bind "2" "clientClass medic 0; addchatline '^2Class = Medic'" "alt" "covertops" bind "3" "clientClass engineer 0; addchatline '^2Class = Engineer'" "alt" "soldier" bind "3" "clientClass engineer 0; addchatline '^2Class = Engineer'" "alt" "medic" bind "3" "clientClass engineer 0; addchatline '^2Class = Engineer'" "alt" "engineer" bind "3" "clientClass engineer 0; addchatline '^2Class = Engineer'" "alt" "fieldops" bind "3" "clientClass engineer 0; addchatline '^2Class = Engineer'" "alt" "covertops" bind "4" "clientClass fieldops 0; addchatline '^2Class = Field Ops'" "alt" "soldier" bind "4" "clientClass fieldops 0; addchatline '^2Class = Field Ops'" "alt" "medic" bind "4" "clientClass fieldops 0; addchatline '^2Class = Field Ops'" "alt" "engineer" bind "4" "clientClass fieldops 0; addchatline '^2Class = Field Ops'" "alt" "fieldops" bind "4" "clientClass fieldops 0; addchatline '^2Class = Field Ops'" "alt" "covertops" bind "5" "clientClass covertops 0; addchatline '^2Class = Covert Ops'" "alt" "soldier" bind "5" "clientClass covertops 0; addchatline '^2Class = Covert Ops'" "alt" "medic" bind "5" "clientClass covertops 0; addchatline '^2Class = Covert Ops'" "alt" "engineer" bind "5" "clientClass covertops 0; addchatline '^2Class = Covert Ops'" "alt" "fieldops" bind "5" "clientClass covertops 0; addchatline '^2Class = Covert Ops'" "alt" "covertops"
Part 2: Weapon Selection for GDF
bind "1" "clientClass soldier 0; addchatline '^2Weapon = Assault Rifle'" "shift" "soldier" bind "2" "clientClass soldier 1; addchatline '^2Weapon = Rocket Launcher'" "shift" "soldier" bind "3" "clientClass soldier 2; addchatline '^2Weapon = GPMG'" "shift" "soldier" bind "4" "clientClass soldier 3; addchatline '^2Weapon = Shotgun'" "shift" "soldier" bind "1" "clientClass medic 0; addchatline '^2Weapon = Assault Rifle'" "shift" "medic" bind "2" "clientClass medic 1; addchatline '^2Weapon = Shotgun'" "shift" "medic" bind "1" "clientClass engineer 0; addchatline '^2Weapon = Assault Rifle'" "shift" "engineer" bind "2" "clientClass engineer 1; addchatline '^2Weapon = Shotgun'" "shift" "engineer" bind "3" "clientClass engineer 2; addchatline '^2Weapon = Grenade Launcher'" "shift" "engineer" bind "1" "clientClass fieldops 0; addchatline '^2Weapon = Assault Rifle'" "shift" "fieldops" bind "2" "clientClass fieldops 1; addchatline '^2Weapon = Scoped Assault Rifle'" "shift" "fieldops" bind "1" "clientClass covertops 0; addchatline '^2Weapon = Scoped Assault Rifle'" "shift" "covertops" bind "2" "clientClass covertops 1; addchatline '^2Weapon = Sniper Rifle'" "shift" "covertops"
Part 3: Class Selection for Strogg
bind "1" "clientClass aggressor 0; addchatline '^2Class = Aggressor'" "alt" "aggressor" bind "1" "clientClass aggressor 0; addchatline '^2Class = Aggressor'" "alt" "technician" bind "1" "clientClass aggressor 0; addchatline '^2Class = Aggressor'" "alt" "constructor" bind "1" "clientClass aggressor 0; addchatline '^2Class = Aggressor'" "alt" "oppressor" bind "1" "clientClass aggressor 0; addchatline '^2Class = Aggressor'" "alt" "infiltrator" bind "2" "clientClass technician 0; addchatline '^2Class = Technician'" "alt" "aggressor" bind "2" "clientClass technician 0; addchatline '^2Class = Technician'" "alt" "technician" bind "2" "clientClass technician 0; addchatline '^2Class = Technician'" "alt" "constructor" bind "2" "clientClass technician 0; addchatline '^2Class = Technician'" "alt" "oppressor" bind "2" "clientClass technician 0; addchatline '^2Class = Technician'" "alt" "infiltrator" bind "3" "clientClass constructor 0; addchatline '^2Class = Constructor'" "alt" "aggressor" bind "3" "clientClass constructor 0; addchatline '^2Class = Constructor'" "alt" "technician" bind "3" "clientClass constructor 0; addchatline '^2Class = Constructor'" "alt" "constructor" bind "3" "clientClass constructor 0; addchatline '^2Class = Constructor'" "alt" "oppressor" bind "3" "clientClass constructor 0; addchatline '^2Class = Constructor'" "alt" "infiltrator" bind "4" "clientClass oppressor 0; addchatline '^2Class = Oppressor'" "alt" "aggressor" bind "4" "clientClass oppressor 0; addchatline '^2Class = Oppressor'" "alt" "technician" bind "4" "clientClass oppressor 0; addchatline '^2Class = Oppressor'" "alt" "constructor" bind "4" "clientClass oppressor 0; addchatline '^2Class = Oppressor'" "alt" "oppressor" bind "4" "clientClass oppressor 0; addchatline '^2Class = Oppressor'" "alt" "infiltrator" bind "5" "clientClass infiltrator 0; addchatline '^2Class = Infiltrator'" "alt" "aggressor" bind "5" "clientClass infiltrator 0; addchatline '^2Class = Infiltrator'" "alt" "technician" bind "5" "clientClass infiltrator 0; addchatline '^2Class = Infiltrator'" "alt" "constructor" bind "5" "clientClass infiltrator 0; addchatline '^2Class = Infiltrator'" "alt" "oppressor" bind "5" "clientClass infiltrator 0; addchatline '^2Class = Infiltrator'" "alt" "infiltrator"
Part 4: Weapon Selection for Strogg
bind "1" "clientClass aggressor 0; addchatline '^2Weapon = Lacerator'" "shift" "aggressor" bind "2" "clientClass aggressor 1; addchatline '^2Weapon = Obliterator'" "shift" "aggressor" bind "3" "clientClass aggressor 2; addchatline '^2Weapon = Hyperblaster'" "shift" "aggressor" bind "4" "clientClass aggressor 3; addchatline '^2Weapon = Nailgun'" "shift" "aggressor" bind "1" "clientClass technician 0; addchatline '^2Weapon = Lacerator'" "shift" "technician" bind "2" "clientClass technician 1; addchatline '^2Weapon = Nailgun'" "shift" "technician" bind "1" "clientClass constructor 0; addchatline '^2Weapon = Lacerator'" "shift" "constructor" bind "2" "clientClass constructor 1; addchatline '^2Weapon = Nailgun'" "shift" "constructor" bind "3" "clientClass constructor 2; addchatline '^2Weapon = Plasma Launcher'" "shift" "constructor" bind "1" "clientClass oppressor 0; addchatline '^2Weapon = Lacerator'" "shift" "oppressor" bind "2" "clientClass oppressor 1; addchatline '^2Weapon = Accurized Lacerator'" "shift" "oppressor" bind "1" "clientClass infiltrator 0; addchatline '^2Weapon = Accurized Lacerator'" "shift" "infiltrator" bind "2" "clientClass infiltrator 1; addchatline '^2Weapon = Railgun'" "shift" "infiltrator"