GoldSrc scripts

This page will store all the scripts used or useful for GoldSrc game speedruns. If you want to use any script, simply copy-paste it to your userconfig.cfg file using a text-editor like Notepad. While in-game, use the exec userconfig.cfg command to load the scripts.

NOTE: Since the Half-Life Beta Update (2013-05-16), the _special command has been removed. Scripts using this command will no longer work on Steam client. Consider using Bunnymod XT alternatives instead. For WON versions of the game, you'll need different kinds of scripts. Get them here.

Bunnyhopping script

alias bh1 "+jump;alias bh@ bh2;special"
alias bh2 "wait;alias bh@ bh3;special"
alias bh3 "-jump;alias bh@ bh4;special"
alias bh4 "wait;alias bh@ bh1;special"
alias +bhop "alias _special bh@;bh1"
alias -bhop "alias _special;-jump"
bind SPACE +bhop

A script that allows you to autojump by making +jump commands every other frame.

It is important to know that this script will only provide seamless bunnyhopping at certain fps_max values due to loopscripts working at different speeds on different framerates.

NOTE: If using Bunnymod XT, use bxt_autojump 1 instead as it will only do perfect +jump inputs the moment you touch the ground, rather than executing a +jump every other frame which can be inconsistent due to the script's dependency on the game's framerate.

Duckroll script

alias +duckroll "alias _special duckroll;duckroll"
alias -duckroll "alias _special"
alias duckroll "+duck;wait;-duck;wait;special"

A script that makes continuous double-ducks (small pseudo-jumps that elevate you mid-air by ~32 units) extremely fast. It is mainly used to control your speed when moving at a very high velocity, and to maintain speed when moving towards a staircase. It also can be used to maintain speed when playing in a version of Half-Life that has limited Bunnyhopping speed due to ducking not being capped. See Duckroll.

Usage: bind <key> +duckroll

NOTE: If using Bunnymod XT, an alternative to this script, +bxt-tas-ducktap (Ducktap) can be used, which only executes +duck as the player touches the ground, eliminating the unnecessary ducks in the air (resulting in a slight speedloss while airstrafing) while achieving the same effect as duckrolling.

Double-Duck script

alias +dd "-duck;wait;+duck;wait;-duck;wait;+duck"
alias -dd -duck

A simple script that makes a double-duck, works best when performing the "Count-Jump" technique or climbing up boxes quickly.

Usage: bind <key> +dd

Jumpbug script

alias _jumpbug
alias _jumpbugfunc "-duck;+jump;w5;-jump"
alias +jumpbug "+duck; alias _jumpbug _jumpbugfunc"
alias -jumpbug "_jumpbug; alias _jumpbug"

This will help you when trying to perform a Jumpbug. Simply hold the key to crouch and let go of it to instantly uncrouch and jump. Remember, this does not make performing the jumpbug any easier. This is merely a bind that will help you.

Usage: bind <key> +jumpbug

Usespam script

alias +usespam "alias _special usespam;usespam"
alias -usespam "alias _special"
alias usespam "+use;wait;-use;wait;special"

A script that spams the +use command very quickly, it's commonly used to press buttons as soon as possible, but with certain technique it can be used to make pseudo-object boosts that bring the object you're manipulating with you.

Usage: bind <key> +usespam

Quick-use script

alias quse "-use;wait;+use;wait;-use"

A simple script that executes an one-frame +use, perfect for pressing buttons as you Bunnyhop right beside them. This helps to avoid situations where holding the use key for too long would slow you down as you hit the ground.

Usage: bind <key> quse

Gauss boost script

alias _taubo
alias _taubofunc "cl_pitchup 180;cl_pitchdown -180;-attack2;wait;cl_pitchup -12;cl_pitchdown 12;wait;cl_pitchup 89.999;cl_pitchdown 89.999"
alias +tau "+attack2; alias _taubo _taubofunc"
alias -tau "_taubo; alias _taubo"

This script does perfect 180 degree gaussboosts.

Multiplayer-friendly alternative

alias +tau "weapon_gauss;wait;+attack2"
alias -tau "cl_pitchup 270;cl_pitchspeed 21500;fps_max 60;wait;+lookup;wait;-lookup;-attack2;wait;+lookdown;wait;-lookdown;cl_pitchup 89.999;fps_max 111.111111111"

The main difference is that it boosts you towards the direction your aiming to, to take advantage of the fact that you are capable of Gauss-boosting vertically.

Usage: bind <key> +tau

Object Boosting scripts

alias obbo2000 "+use;w11;-use;+jump;w;-jump"
alias obbo1500 "+use;w10;-use;+jump;w;-jump"
alias obbo1300 "+use;w9;-use;+jump;w;-jump"
alias obbo1000 "+use;w8;-use;+jump;w;-jump"
alias obbo800 "+use;w7;-use;+jump;w;-jump"
alias obbo600 "+use;w6;-use;+jump;w;-jump"
alias obbo500 "+use;w5;-use;+jump;w;-jump"

Scripts that help performing an Object Boost. The number represents the speed (in units per second) you will have if you execute them in 100FPS. Note that you might have different results at different FPS values because of the increased Object-boosting acceleration.

Usage: bind <key> obbo

Wait table

NOTE: If you're using Bunnymod XT, the wait table is not necessary and can be replaced by the equivalent command w <number> (note the space between them). This has the advantage of being able to use an arbitrary number of waits in one command like w 3528, rather than w1000;w1000;w1000;w500;w28 had a wait table been used.

If you're not using Bunnymod XT, the following wait table can be a poor man's replacement of w. This alias table generates a total of 110 wait aliases, excellent for easy creation of complex scripts.

//wait table
alias    "w"              "wait"
alias    "w1"             "wait"
alias    "w2"             "w;w"
alias    "w3"             "w2;w"
alias    "w4"             "w2;w2"
alias    "w5"             "w4;w"
alias    "w6"             "w3;w3"
alias    "w7"             "w6;w"
alias    "w8"             "w4;w4"
alias    "w9"             "w7;w2"
alias    "w10"            "w5;w5"
alias    "w11"            "w9;w2"
alias    "w12"            "w6;w6"
alias    "w13"            "w9;w4"
alias    "w14"            "w9;w5"
alias    "w15"            "w9;w6"
alias    "w16"            "w9;w7"
alias    "w17"            "w9;w8"
alias    "w18"            "w9;w9"
alias    "w19"            "w9;w10"
alias    "w20"            "w9;w11"
alias    "w21"            "w9;w12"
alias    "w22"            "w9;w13"
alias    "w23"            "w9;w14"
alias    "w24"            "w9;w15"
alias    "w25"            "w9;w16"
alias    "w26"            "w9;w17"
alias    "w27"            "w9;w18"
alias    "w28"            "w9;w19"
alias    "w29"            "w9;w20"
alias    "w30"            "w9;w21"
alias    "w31"            "w9;w22"
alias    "w32"            "w9;w23"
alias    "w33"            "w9;w24"
alias    "w34"            "w9;w25"
alias    "w35"            "w9;w26"
alias    "w36"            "w9;w27"
alias    "w37"            "w9;w28"
alias    "w38"            "w9;w29"
alias    "w39"            "w9;w30"
alias    "w40"            "w9;w31"
alias    "w41"            "w9;w32"
alias    "w42"            "w9;w33"
alias    "w43"            "w9;w34"
alias    "w44"            "w9;w35"
alias    "w45"            "w9;w36"
alias    "w46"            "w9;w37"
alias    "w47"            "w9;w38"
alias    "w48"            "w9;w39"
alias    "w49"            "w9;w40"
alias    "w50"            "w9;w41"
alias    "w51"            "w50;w1"
alias    "w52"            "w50;w2"
alias    "w53"            "w50;w3"
alias    "w54"            "w50;w4"
alias    "w55"            "w50;w5"
alias    "w56"            "w50;w6"
alias    "w57"            "w50;w7"
alias    "w58"            "w50;w8"
alias    "w59"            "w50;w9"
alias    "w60"            "w50;w10"
alias    "w61"            "w50;w11"
alias    "w62"            "w50;w12"
alias    "w63"            "w50;w13"
alias    "w64"            "w50;w14"
alias    "w65"            "w50;w15"
alias    "w66"            "w50;w16"
alias    "w67"            "w50;w17"
alias    "w68"            "w50;w18"
alias    "w69"            "w50;w19"
alias    "w70"            "w50;w20"
alias    "w71"            "w50;w21"
alias    "w72"            "w50;w22"
alias    "w73"            "w50;w23"
alias    "w74"            "w50;w24"
alias    "w75"            "w50;w25"
alias    "w76"            "w50;w26"
alias    "w77"            "w50;w27"
alias    "w78"            "w50;w28"
alias    "w79"            "w50;w29"
alias    "w80"            "w50;w30"
alias    "w81"            "w50;w31"
alias    "w82"            "w50;w32"
alias    "w83"            "w50;w33"
alias    "w84"            "w50;w34"
alias    "w85"            "w50;w35"
alias    "w86"            "w50;w36"
alias    "w87"            "w50;w37"
alias    "w88"            "w50;w38"
alias    "w89"            "w50;w39"
alias    "w90"            "w50;w40"
alias    "w91"            "w50;w41"
alias    "w92"            "w50;w42"
alias    "w93"            "w50;w43"
alias    "w94"            "w50;w44"
alias    "w95"            "w50;w45"
alias    "w96"            "w50;w46"
alias    "w97"            "w50;w47"
alias    "w98"            "w50;w48"
alias    "w99"            "w50;w49"
alias    "w100"           "w50;w50"
alias    "w200"           "w100;w100"
alias    "w300"           "w200;w100"
alias    "w400"           "w200;w200"
alias    "w500"           "w400;w100"
alias    "w600"           "w300;w300"
alias    "w700"           "w600;w100"
alias    "w800"           "w400;w400"
alias    "w900"           "w700;w200"
alias    "w1000"          "w500;w500"

Last updated