![]() | This article was nominated for deletion on 11 May 2007. The result of the discussion was no consensus. |
Strafe jumping is the single most useful skill in Quake other than the ability to aim. As such, I would have hoped that a person writing about it would actually know HOW to strafe jump and, assuming they did know, at least read over what they had written to make sure it was right. One or both of these was not the case. When strafe jumping you turn in the same direction you are strafing not the opposite direction. - [unsigned]
why the HELL is this on wikipedia?! --mojo
It would be nice to have a real explanation, one that doesn't make it look like a black art. Perhaps WP:OR (at least I couldn't find anything), but then we can base it on the source, like the Quake III Arena article does as well at some points. Try code/game/bg_pmove.c, PM_Accelerate in particular. My observations follow.
There are two versions, one of which is #ifed out with the comment “proper way (avoids strafe jump maxspeed bug), but feels bad”. The other version measures the current speed by taking the dot product of the current velocity and the direction the player wishes to accelerate in. Due to that dot product, the game will measure a smaller portion of the top speed being used when attempting to accelerate in a different direction. Because the game thinks there's headroom, it grants acceleration in the direction the player chose, even if that means accelerating beyond what would be the top speed.
There is quite literally a side effect (what else would you expect when partly accelerating to the side?), but it's small compared to the high speeds and small at low speeds, and bounded between no and normal acceleration.
Regarding common practices:
I hope this provides a nice starting point to expand on (there is a lot more to add, and in a more encyclopedia-friendly format). Keep in mind that constants and other things might be different in other games using this engine or a related one, where strafe-jumping might work as well. It could also be good to check my claims against the source, as I may have overlooked something. --Jonathanvt 03:50, 28 October 2006 (UTC)
I dont know much about what should be added to the wiki, and what shouldent, but maybe this link will be usefull: http://www.funender.com/quake/articles/strafing_theory.html It explains the theory beheind strafe-jumping. argh, forgot to sign. --Ismetteren (talk) 18:27, 9 May 2009 (UTC)
I disagree in how the article is classifying things and some of the statements made in it.
Bunny hopping describes all movements in all games that makes you look like a rabbit with a railgun. It is another word for strafe jumping.. We called it bunny jumping because when players first started hopping around the game it was funny looking. If you read the articles on Bunny Hopping and Strafe jumping you will immediately see that the "strafe key" is mentioned in the execution of all techniques. Therefore what we really have is how to strafe jump in Quake 1, Quake 2 and Quake 3. This is the classification that things should be broken down as. It is obvious to any old time quaker that they mean one and the same. Most new players probably heard both and tried to classify them separately.
Bunny hopping (strafe jumping) where you can change direction in air describes how to strafe jump in Quake 1.
Strafe Jumping would most likely describe how to strafe jump in Quake 2. (though ramp physics seemed to be used in many cases to start this)
Circle strafing is how to strafe jump in Q3.
I would describe the concept of the bunny jump or bunny hopping as the following:
Bunny Hopping refers to what is properly known as strafe jumping in FPS games. It can be used to describe any ridiculous movement by in game characters which involves them jumping consecutively in order to gain speed or to avoid weapons fire. Just like a rabbit that hops as its primary form of movement, any FPS game player who chooses to jump more then run can be described as bunny hopping.
I strongly suggest merging the bunny jumping/hopping and strafe jumping articles and eliminating this concept that they are different.
Oldschoolquaker (talk) 04:58, 13 February 2011 (UTC)
Strafe Jumping was a bug that was kept
Description - Talking about the strafe jumping as a bug that was kept URL - http://planetquake.gamespy.com/View.php?view=Editorials.Detail&id=115 Description - the battle for keeping strafe jumping URL - <http://planetquake.gamespy.com/View.php?view=Articles.Detail&id=735
Strafe jumping exists in Warsaw
http://www.warsow.net/forum/offtopic/topic-17312/
Origins or strafe jumping could start with Doom
http://doom.wikia.com/wiki/Straferunning
Strafe jumping in Quake 1
Title - Quake 1: Guide to bunny jump URL - http://www.youtube.com/watch?v=v6jm9iGW2Co BY - IloveFPS1 Description - Tutorial on how to strafe jump in Q1 Title - The Speed of Quakeworld URL - http://www.youtube.com/watch?v=nPtDtPz5m-A&feature=related By - DonPhrostByte Description - shows off how fast one can achieve speeds in Quake 1 type games
Strafe Jumping in Quake 2
Title - Quake 2 Jump - stubbsyjump39 - asha URl - http://www.youtube.com/watch?v=XEbNWMT5hok&NR=1 By - q2jumparchive Description - an amazing display of trick jumping Title - Quake 2 Jump - ddrace - Israfel URL - http://www.youtube.com/watch?v=JhsnnrMg-Bo&NR=1 By - q2jumparchive Decription - shows off the ramp jump physics and strafe jumping acceleration
Quake 3 strafe jumping (circle jumping)
Title - Quake Live Tricks - Strafe Jumps URL - http://www.youtube.com/watch?v=kfpaEAh3geM Description - This is a great example as one can see the spaces between the block platforms gets wider and wider Title - Steve's StrafeJump Tutorial for Quake 3 URL - http://www.youtube.com/watch?v=1g24fe4bwu0 BY - Neillithan Description - the basis for the circle jumping tutorial as one can clearly see how to execute the technique
Strafe-jumping Physics visualized — Preceding unsigned comment added by Mach-AVelosity (talk • contribs) 08:23, 30 August 2020 (UTC)
Title - Strafe-jumping physics explained
URL - http://www.youtube.com/watch?v=rTsXO6Zicls
By - Matt's Ramblinngs
Description - This a general example of how the physics of Strafe-jumping can be visualized. Note that the difference between other
Id tech and Source based games don't use the forward movement directional input as the velocity vector is projected outside of the
"wish direction" vector which stops the gain in speed, the only games that use the forward directional inputs are Quake 3 and
Quake Live. — Preceding unsigned comment added by Mach-AVelosity (talk • contribs) 08:20, 30 August 2020 (UTC)
Bunny hopping is strafe jumping:
Title - Quake 3 strafe jump (FOR BEGINNERS) URL - http://www.youtube.com/watch?v=2A1yaxc5MbU&feature=related By - jaboae2 Description - the title of the post and all the posters are ok with the idea that this is strafe jumping, and the video text declares this as bunny hopping. Title - Carmack on weapons and strafe jumping URL - http://www.firingsquad.com/news/newsarticle.asp?searchid=417&filterLevel=&up=2&pnum=2 By - posted by Bob CalBear Colayco on Thursday June 03, 1999 - 03:01 PM Description - Carmack is quoted as saying that jumping around like rabbits is silly. (strafe jumping article)
References that the community treats bunny hopping as another word for strafe jumping can be found in the following links:
URL - http://www.youtube.com/watch?v=kfpaEAh3geM Description - look around page 7 of the comments URL - http://www.youtube.com/watch?v=1g24fe4bwu0 Description - More comments that this is also called bunny hopping
Possible origin of bunny hopping being misclassified
http://www.warsow.net/wiki/index.php?title=Movement This document and the document called Bunny Hopping
Oldschoolquaker (talk) 04:48, 13 February 2011 (UTC)
uses strafe-jumping as well. since every other game that makes use of it is mentioned, it should be added to the list --92.193.38.87 (talk) 15:48, 17 August 2014 (UTC)
Hello fellow Wikipedians,
I have just added archive links to one external link on Strafe-jumping. Please take a moment to review my edit. If necessary, add ((cbignore))
after the link to keep me from modifying it. Alternatively, you can add ((nobots|deny=InternetArchiveBot))
to keep me off the page altogether. I made the following changes:
When you have finished reviewing my changes, please set the checked parameter below to true to let others know.
This message was posted before February 2018. After February 2018, "External links modified" talk page sections are no longer generated or monitored by InternetArchiveBot. No special action is required regarding these talk page notices, other than regular verification using the archive tool instructions below. Editors have permission to delete these "External links modified" talk page sections if they want to de-clutter talk pages, but see the RfC before doing mass systematic removals. This message is updated dynamically through the template ((source check))
(last update: 5 June 2024).
Cheers.—cyberbot IITalk to my owner:Online 01:23, 13 February 2016 (UTC)
Considering that most wikipedia articles on the alike topics include equations and stuff, this page could add the mathematical equations involved. The physics used to bunnyhop and strafe jump are essentially the same, although the physics used in games where players typically use the bunnyhop technique has a small speed limit and high acceleration. Quake 3 strafe jumps will eventually turn into a slow bunnyhop style if the user does not want to "jerk" the camera too much
I'm not good at explaining stuff in text nor speaking, and a good source for explanations from the funender website is now down but I'll paste the lua code (since it is somewhat more easier to read than the original quake code) that I put into my TremNS2 mod (a tremulous based [[[natural selection 2 mod]]) and the bunnyhop mod:
Quake 2/3 style: TremNS2: Marine.lua file on Github
local lAirAcceleration = self:GetMaxSpeed() --accelerate to maximum speed in one second
local wishDir = self:GetViewCoords():TransformVector(input.move) --this is a unit vector
wishDir.y = 0 --Remove vertical component
wishDir:Normalize()
local wishDircurrentspeed = velocity:DotProduct(wishDir) --current velocity along wishdir axis
local addspeedlimit = lAirAcceleration - wishDircurrentspeed
if addspeedlimit <= 0 then return end
accelerationIncrement = deltaTime * lAirAcceleration --multiply by the time interval between frames
if accelerationIncrement > addspeedlimit then accelerationIncrement = addspeedlimit end
velocity:Add(wishDir * accelerationIncrement)
The code can be modified a little bit to transform it into quake 1 style used for bunnyhopping by multiplying accelerationIncrement or setting it to a high value, and setting lAirAcceleration to a low value. Example from my bhop mod for NS2:
local laccelmod = 70--acceleration modifier
local lAirAcceleration = self:GetMaxSpeed() --accelerate to maximum speed in one second
local wishDir = self:GetViewCoords():TransformVector(input.move) --this is a unit vector
wishDir.y = 0
wishDir:Normalize()
local wishDircurrentspeed = velocity:DotProduct(wishDir) --current velocity along wishdir axis
lAirAcceleration = lAirAcceleration * 0.1
local addspeedlimit = lAirAcceleration - wishDircurrentspeed
if addspeedlimit <= 0 then return end
accelerationIncrement = laccelmod * deltaTime * lAirAcceleration
if accelerationIncrement > addspeedlimit then
accelerationIncrement = addspeedlimit
end
velocity:Add(wishDir * accelerationIncrement)
The end result from the above code is that the user is able to accelerate in the air about 7 times faster than on ground, but is limited to a speed limit of 10% of their maximum speed limit. The high acceleration value and the small speed limit means that the user is not able to accelerate much compared to the vanilla Q3 style physics.
The speed limit modification has to do with the fact that the code uses dot products. I am not good at explaining it, but here is a rough image to represent what I want to explain: http://i.imgur.com/hLRkTRv.png --ZdrytchX (talk) 19:42, 24 February 2017 (UTC)
___
I have created a simple calculator to determine the maximum speed and the acceleration at a particular acceleration input angle to the particular movement angle.[1] It is no where as advanced and descriptive as the old funender web. It does not include things like FPS limitations and differentiated functions to demonstrate the optimum angles and acceleration. I could use a person with higher mathematical knowledge here to help me, I'm lazy.
Also, does Wikipedia support spreadsheet functions or spreadsheet embedding? It would look nice if we could remove the non-satisfactory ambiguous non-mathematical "tutorial" on how to strafe jump as seen on this web page, or at least to improve it. --ZdrytchX (talk) 19:05, 2 June 2017 (UTC)
Regarding this change: https://en.wikipedia.org/w/index.php?title=Strafe-jumping&type=revision&diff=776880960&oldid=776694510 done by The1337gamer:
If that is what someone thinks best, we probably should remove the list that features bunnyhopping. Some of those games don't specifically only feature bunnyhopping air physics (high acceleration, low speed limit of 30 ups) such as those that make use of combined Q3/Q1 bunnyhop and unreal air control style physics. I like to specifically clal them CPM physics since that seems to be the oriign of the combined air physics, even though it's called turbo physics in quake live and has differnet names in other games.
If we are going to keep them, the old list of quake 3 physics supported games should be brought back.
Also the "how to" and tihngs like the circle jump section needs redoing since it's rather unprofessional. They do not teach the actual physics mechanics and/or explain how it works, only a vague tutorial on how to gain an apparent gain in speed. The page needs cleaning up.
It also should probably be mentioned in the bunnyhopping section that: 1. the mathematical equations are essentially the same. 2. The acceleration is typically an increased modifier value ranging from (but not the smallest value) like 10 (source engine default values, like csgo) up to 150 in other games with a value like 3000 for surf mod servers. 3. The speed limit is almost always a raw vlaue of 30 units per second weather it be inches per seocnd (hammer units in source engine) or 30/32s of a meter per second (quake/goldsrc). Refer to the above section in regards to the mathematics. — Preceding unsigned comment added by ZdrytchX (talk • contribs) 06:07, 14 July 2017 (UTC)
Update: In the event that my dropbox link goes, down, I have an updated version of the calculator: here. I have yet to do the calculations of Call of Duty games, and to calculate the errors (if you want to call it that) or lack of efficiency due to low framerates. I need some time and motivation to draw up a chart or sometihng to get the maths equations for that out (to determine the optimum acceleration rates especially for bunnyhop phyics, which are highly influenced by framerate).
Hello fellow Wikipedians,
I have just modified one external link on Strafe-jumping. Please take a moment to review my edit. If you have any questions, or need the bot to ignore the links, or the page altogether, please visit this simple FaQ for additional information. I made the following changes:
When you have finished reviewing my changes, you may follow the instructions on the template below to fix any issues with the URLs.
This message was posted before February 2018. After February 2018, "External links modified" talk page sections are no longer generated or monitored by InternetArchiveBot. No special action is required regarding these talk page notices, other than regular verification using the archive tool instructions below. Editors have permission to delete these "External links modified" talk page sections if they want to de-clutter talk pages, but see the RfC before doing mass systematic removals. This message is updated dynamically through the template ((source check))
(last update: 5 June 2024).
Cheers.—InternetArchiveBot (Report bug) 17:20, 30 December 2017 (UTC)