Automated Bunnyhop
ultranewb
Pro Bug Hunter Join Date: 2004-07-21 Member: 30026Members
<div class="IPBDescription">Proof of Concept</div> <!--c1--></div><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td><b>CODE</b> </td></tr><tr><td id='CODE'><!--ec1-->
alias 5w "wait; wait; wait; wait; wait"
alias 4w "wait; wait; wait; wait"
alias 3w "wait; wait; wait"
alias 2w "wait; wait"
alias jmp "+jump; wait; -jump"
alias +turn +left
alias -turn -left
alias +strafeturnleft "+moveleft;+left"
alias -strafeturnleft "-moveleft;-left"
alias +strafeturnright "+moveright;+right"
alias -strafeturnright "-moveright;-right"
alias leftturn "alias +turn +strafeturnleft; alias -turn -strafeturnleft; alias switchturn rightturn;"
alias rightturn "alias +turn +strafeturnright; alias -turn -strafeturnright; alias switchturn leftturn;"
alias switchturn leftturn
alias y1 "cl_yawspeed 70"
alias y2 "cl_yawspeed 90"
alias y3 "cl_yawspeed 120"
alias y3a "cl_yawspeed 150"
alias y3b "cl_yawspeed 170"
alias y3c "cl_yawspeed 215"
alias y4 "cl_yawspeed 350"
alias y4a "cl_yawspeed 400"
alias y5 "cl_yawspeed 580"
alias y5a "cl_yawspeed 700"
alias preglide "fps_max 55;wait; y5a; +right;5w;y4;5w; -right"
alias glide "3w;+strafeturnleft; +forward; y2;5w;2w; y2;5w;5w; y3;5w;y3b;4w; y3c;3w;y4a;2w; y5;4w; y4a;2w;y3;2w; -forward;-strafeturnleft"
alias lrstrafe "switchturn; +turn; jmp; y1; 5w; y2;4w;y3;4w; y3a;5w;y3a;2w; y3b;2w; y3c;2w; y3b;2w; y3;5w;y2;5w; -turn"
alias autojump "leftturn; preglide; +duck; glide; lrstrafe; lrstrafe; lrstrafe; lrstrafe;-duck;fps_max 100;"
// Usage: bind [key] autojump
<!--c2--></td></tr></table><div class='postcolor'><!--ec2-->
Just to prove it was possible, yet not very useful, I created an automated bunnyhop script. The script starts out by performing a glide (strafe+forward+turning) for about 400 units of speed and then strafe jumps 4 time to achieve about 500 units of speed.
It requires a long and wide hallway (like ns_bhop) and a system that can consistanly produce 55 frames per second to accurately time the steps. With more trail-and-error, the script could be made to do smaller arcs and accelerate to full speed in 3 jumps.
The most use this script could have would be to show someone, on their system, the pauses and accelerations required in mouse movement to bunny hop and the jump timing. While the script performs perfectly on my system, I suspect it won't perform reliable on others without alteration of fps_max. I'm also unsure if cl_yawspeed is dependant on "sensitivity" for keyboard turning base speed.
alias 5w "wait; wait; wait; wait; wait"
alias 4w "wait; wait; wait; wait"
alias 3w "wait; wait; wait"
alias 2w "wait; wait"
alias jmp "+jump; wait; -jump"
alias +turn +left
alias -turn -left
alias +strafeturnleft "+moveleft;+left"
alias -strafeturnleft "-moveleft;-left"
alias +strafeturnright "+moveright;+right"
alias -strafeturnright "-moveright;-right"
alias leftturn "alias +turn +strafeturnleft; alias -turn -strafeturnleft; alias switchturn rightturn;"
alias rightturn "alias +turn +strafeturnright; alias -turn -strafeturnright; alias switchturn leftturn;"
alias switchturn leftturn
alias y1 "cl_yawspeed 70"
alias y2 "cl_yawspeed 90"
alias y3 "cl_yawspeed 120"
alias y3a "cl_yawspeed 150"
alias y3b "cl_yawspeed 170"
alias y3c "cl_yawspeed 215"
alias y4 "cl_yawspeed 350"
alias y4a "cl_yawspeed 400"
alias y5 "cl_yawspeed 580"
alias y5a "cl_yawspeed 700"
alias preglide "fps_max 55;wait; y5a; +right;5w;y4;5w; -right"
alias glide "3w;+strafeturnleft; +forward; y2;5w;2w; y2;5w;5w; y3;5w;y3b;4w; y3c;3w;y4a;2w; y5;4w; y4a;2w;y3;2w; -forward;-strafeturnleft"
alias lrstrafe "switchturn; +turn; jmp; y1; 5w; y2;4w;y3;4w; y3a;5w;y3a;2w; y3b;2w; y3c;2w; y3b;2w; y3;5w;y2;5w; -turn"
alias autojump "leftturn; preglide; +duck; glide; lrstrafe; lrstrafe; lrstrafe; lrstrafe;-duck;fps_max 100;"
// Usage: bind [key] autojump
<!--c2--></td></tr></table><div class='postcolor'><!--ec2-->
Just to prove it was possible, yet not very useful, I created an automated bunnyhop script. The script starts out by performing a glide (strafe+forward+turning) for about 400 units of speed and then strafe jumps 4 time to achieve about 500 units of speed.
It requires a long and wide hallway (like ns_bhop) and a system that can consistanly produce 55 frames per second to accurately time the steps. With more trail-and-error, the script could be made to do smaller arcs and accelerate to full speed in 3 jumps.
The most use this script could have would be to show someone, on their system, the pauses and accelerations required in mouse movement to bunny hop and the jump timing. While the script performs perfectly on my system, I suspect it won't perform reliable on others without alteration of fps_max. I'm also unsure if cl_yawspeed is dependant on "sensitivity" for keyboard turning base speed.
Comments
<!--QuoteBegin-a civilian+Apr 30 2005, 06:36 PM--></div><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td><b>QUOTE</b> (a civilian @ Apr 30 2005, 06:36 PM)</td></tr><tr><td id='QUOTE'><!--QuoteEBegin--><!--c1--></div><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td><b>CODE</b> </td></tr><tr><td id='CODE'><!--ec1-->alias ds "cs;cs;cs;cs;cs;cs;cs;cs;cs;cs" //decisecond
alias cs "wait" //centisecond
alias testglide "centerview; m_pitch 0; cl_pitchspeed 3000; cl_yawspeed 294; +lookdown; cs; -lookdown; +left; +moveleft; ds; ds; ds; +jump; wait; -jump; -left; -moveleft; cl_pitchspeed 225; cl_yawspeed 210; m_pitch 0.022; centerview"<!--c2--></td></tr></table><div class='postcolor'><!--ec2-->
Gets a 1.52 to 1.54 factor speed increase, or 441 to 447 units of speed, at 100 fps.<!--QuoteEnd--></td></tr></table><div class='postcolor'><!--QuoteEEnd-->
Edit: the script turns 88.2 degrees in .3 seconds while performing the glidejump.