In Quake 1, on ground movement keys can accelerate you up to 320 in the direction the keys points. What is happening in the code is that firstly the speed(called "currentspeed") in the direction the movement keys are pointing(this direction(as a 1 unit long vector) is called "wishdir") is calculated. Code : currentspeed = DotProduct (velocity, wishdir); // "velocity" is simply a vector of the player velocity If you don't know what a "dot product" is, basically what is happening is : currentspeed = (velocity.x*wishdir.x)+(velocity.y*wishdir.y)+(velocity.z*wishdir.z) Doing a simple example : if velocity.x=300 and wishdir.x=1(wishdir vector pointing entirely into the games x direction) currentspeed is simply 300(Velocity.y is simply ignored in this scenario (and also z(up down direction) as wishdir.z is always 0 when on ground or in air)). So yeah the code have the "currentspeed" now... Next the code calculates "addspeed"(the maximum speed(In wishdir direction) the player movement can add this frame). Code : addspeed = wishspeed - currentspeed; // wishspeed is 320(when on ground) So to continue the previous example if currentspeed=300 you get 320-300 which is 20, so the player movement can add 20 speed in the wishdir direction. If the "accelspeed"(the actual amount of speed(In wishdir direction) to add to the player this frame) that is calculated in the following(Not going to show this code) "per frame acceleration code" is more than addspeed it is clipped to addspeed(which is 20 in this instance). After that the "accelspeed" is simply added to the velocity vector in the direction of wishdir. Code : velocity.x += accelspeed*wishdir.x velocity.y += accelspeed*wishdir.y So yeah, by turning your wishdir you can add speed in directions were your currentspeed is less than your wishspeed that is simply how the player acceleration works in Quake... "But why the heck is the air movement different brah?!" In air the wishpeed is 30 not 320 as on the ground (The amount of possible acceleration per frame is the same though), meaning you need to point your wishdir way more degrees from where your velocity vector is pointing than on ground to accelerate. In Q2 and 3 wishspeed is the same in air as on ground but the acceleration amount is a tenth of the on the ground one leading to that more acceleration forwards is possible but with way less snappy in air turns possible. Man my brain is toast after typing this... XD (I can explain how wallstrafing and power bunnyhopping works in the future though... maybe... XD)
@tovcАй бұрын
For those reading this and gawking at the complexity, there's a great video by Matt's Ramblings with visualizations that might be more to your taste. Bunny.bunbob also has a couple of videos that are more specific to quake 3, that goes into more detail on the topic, for those interested in that.
@Dondlo46 Жыл бұрын
Why doesn't this work in real life? Developers should fix that bug
@QuakeDude73Ай бұрын
Wym? I bunny-hop almost everywhere and I find it to be quite useful.
@MrDavidRosca Жыл бұрын
Cut my teeth with Quake mp back in the day. It's the game that forced to me learn WASD + Mouse. And by golly was it a steep learning curve. Great video mate!
@zizzleberriesАй бұрын
5:13 HALF-SIDEWAYS MENTIONED!!!!!!!!!!!
@mopeybloke Жыл бұрын
I don't know whether it was a big or not that air control only truly works if you strafe, but it's good that you have the power to look at different directions while you jump without changing the trajectory of the jump.
@ibtarnine11 ай бұрын
something you missed around the 1 minute mark is how you can take advantage of the brief speed boost from turning while still flat on the ground and not wall hugging. in your cfg you can make a simple macro that allows strafe left to activate while still holding strafe right. what this allows you to do is hold forward, left or right strafe, and tap the opposite strafe key that you're holding, pushing your constant straight line speed to around 400 ups. it's not a major difference, but it can help in a duel where you need to move straight quietly and aren't in an area you can wall hug. autorun doesn't have to be off for that initial 500 ups jump btw, and i hit about 520 on my first jump in my old zjumps video. qw also has autohop which is pretty convenient.
@Nomadnetic2 ай бұрын
Great vid!
@hotmultimedia Жыл бұрын
I can gain speed with bunnyjumping easily in ezquake by moving mouse to the strafe direction. I then tried it on WinQuake and it was obviously impossible. But after that I got the original qwcl and server, and was surprised that I couldn't do it in there either.
@stuntzpt10 ай бұрын
1k!
@haikidsboy310211 ай бұрын
Very cool video :). Btw witch engine do u use ?
@Asocial-Canine3 ай бұрын
5:06 admin he doing it sideways
@cutchyuz630 Жыл бұрын
I like bunnies
@MattProud2 ай бұрын
The U/I element that reports your velocity: is that implemented in QuakeC or a custom engine or a combination of the two? Can you give me a pointer to how I can get this display mechanism working at home?
@SleepyAdam2 ай бұрын
It's unfortunately not QuakeC and dependent on the source port you're using. The one's I know of that have it are JoeQuake, FTE, and ezQuake. Typically activated by typing "show_speed 1" in console or something of the sort. Once again, different from engine to engine. Some just have an option in the options menu.
@Aleteos8 ай бұрын
Is there a mod that shows speed in ui, like in the video, or shows if I've succesfully bunny hopped? Also, can this be done at all in Ironwail?
@SleepyAdam6 ай бұрын
Sorry for the late response. It really depends on the source port you're using. Both JoeQuake and FTE have speedometers like the ones seen in the video as far as I know. Not sure about Ironwail.
@kered13 Жыл бұрын
7:55 This explanation is essentially correct. You gain speed for the same reason that turning on the ground gains speed, which is caused by the difference between your desired movement direction and your current movement direction. You stop gaining speed whenever your desired movement direction is the same as your current movement direction. Constantly turning prevents this from happening. Having a wall in your way also prevents this.
@liamblack3001 Жыл бұрын
so this is why I'm loosing Death Match
@liamblack3001 Жыл бұрын
loosing
@SleepyAdam Жыл бұрын
Strategy is more important than movement, but damn if it doesn't help.
@BrunoSirilo4 ай бұрын
In Quakeworld in maps like Ztricks u have to power bunny hop?
@SleepyAdam3 ай бұрын
Not in QuakeWorld. QuakeWorld patched the floor slowing you down while repeatedly jumping which made power hops necessary.
@sharx20024 ай бұрын
what's bonkers to me is i feel like i discovered circlejumping almost independently when i first played through quake. lacking a sprint button to just go fast on command, your brain can clock that tiny boost in speed from turning and the lack of friction in the air and start doing it all the time to go faster. of course i had heard about bunnyhopping and stuff, but i never looked up how to do it in quake or anything