It IS Rocket Science! The Physics of Rocket League Detailed

In this 2018 GDC talk, Psyonix's Jared Cone takes viewers through an inside look at the specific game design decisions and implementation details that made the networked physics of Rocket League so successful.

Пікірлер: 105

  • @Jambax
    @Jambax5 жыл бұрын

    This is awesome. It shows just how much you *can't* rely on a complex physics engine when making any kind of physics-based multiplayer game that needs to be stable. Simplicity and smoke and mirrors are the key - whodathought.

  • @hellfishazeroth
    @hellfishazeroth6 жыл бұрын

    I love that you have a slide called "Rocket League Goals"

  • @seP4
    @seP4 Жыл бұрын

    underrated talk 🙏 5 years later and many AAA car/racing game devs can still take notes from this

  • @Kokuyous3ki

    @Kokuyous3ki

    Жыл бұрын

    Logic is universal. As an example, Quake is borderline the oldest actually 3d fps yet its engine code still hides inside here and there. Hell, Call of Duty has been using quake3 engine last time I checked. Even the newest ones. They did change things in there obviously but some of it remains... If you look at it like that, 5 years is not a long time.

  • @seP4

    @seP4

    Жыл бұрын

    @@Kokuyous3ki i mean in terms of determinism and netcode many racing games are still years behind this

  • @JosephR225
    @JosephR2256 жыл бұрын

    What a save!

  • @SilentS0lid

    @SilentS0lid

    6 жыл бұрын

    wow!

  • @thomasjansen5921

    @thomasjansen5921

    6 жыл бұрын

    Thanks!

  • @turuff7114

    @turuff7114

    3 жыл бұрын

    Nice shot Nice shot

  • @gamergreat9505

    @gamergreat9505

    3 жыл бұрын

    Centering.

  • @Bleeglesplotch

    @Bleeglesplotch

    2 жыл бұрын

    Savage!

  • @thuraoo2295
    @thuraoo229510 ай бұрын

    I've been making a networking game and struggling with client side prediction and this guy's talk solves a lot of my problems.

  • @lucbloom

    @lucbloom

    Ай бұрын

    Cool

  • @ZeroZ30o
    @ZeroZ30o6 жыл бұрын

    good talk especially on networking

  • @abalorias333
    @abalorias3335 жыл бұрын

    Awesome talk, thanks Jared!

  • @Narc0YT
    @Narc0YT6 жыл бұрын

    Good shout to Rocket Science.

  • @felenov
    @felenov2 жыл бұрын

    Actually some very interesting stuff. Very appreciated.

  • @demonblade04
    @demonblade046 жыл бұрын

    Wow! Nice Shot!

  • @Dewey-yu7gc
    @Dewey-yu7gc6 жыл бұрын

    You blown my mind

  • @1N2345
    @1N23453 жыл бұрын

    Great talk. Amazing game.

  • @falxie_
    @falxie_3 жыл бұрын

    Fascinating stuff

  • @Sashik
    @Sashik6 жыл бұрын

    A hour just passed like nothing. Decent talk, decent game! Nice shot!

  • @stevesan
    @stevesan6 жыл бұрын

    another question: it seems that, while it helps, 100% deterministic physics isn't actually necessary here. since you're doing corrections anyway. i guess if the physics was REALLY non-det, then you'd get a lot more corrections, but it doesn't seem like a hard requirement (vs. deterministic lockstep, for example) Edit: ah I see it is indeed not perfectly deterministic! But the corrections take care of it. Cool :)

  • @jcdentonunatco

    @jcdentonunatco

    2 жыл бұрын

    you are right, a deterministic simulation is not required, but it certainly makes things easier!

  • @lucbloom
    @lucbloomАй бұрын

    Amazing

  • @nomadcrossfire
    @nomadcrossfire6 жыл бұрын

    Hey it's full length this time!

  • @ty_teynium
    @ty_teynium6 жыл бұрын

    This is going to be random but what's the follow up on star citizen? Love this by the way ✌

  • @weirdsciencetv4999
    @weirdsciencetv49992 ай бұрын

    Instead of increasing update rate, you could internally back up the collision to the point of contact after it is detected.

  • @alaharon1233
    @alaharon12336 жыл бұрын

    The last video on this subject was much more detailed. In an hour you can't possibly have the amount of detail in a concise, under a minute video

  • @informant09

    @informant09

    6 жыл бұрын

    ;)

  • @vrhyrsh

    @vrhyrsh

    6 жыл бұрын

    Do you mind letting us know which video you're referring to?

  • @alaharon1233

    @alaharon1233

    6 жыл бұрын

    Andreas Ertelt They've since taken it down, but they had put up a video with this title that was just the gdc logo and tye person saying the title of his talk

  • @nosenose338
    @nosenose3384 жыл бұрын

    39:25 how fast do you apply a correction to catch up with frame you were?

  • @fartmerchant

    @fartmerchant

    2 ай бұрын

    if I understand it correctly, they do the (rollback + simulate to the frame you were) all within one frame

  • @beastdrummer555
    @beastdrummer5556 жыл бұрын

    I'd really like to get my hands on, or have Psyonix release a build of the game with more "realistic" physics. See how much more difficullt it coiuld be

  • @falxie_
    @falxie_3 жыл бұрын

    I hope that the the devs are contributing back to the Bullet source with the fixes

  • @donloder1
    @donloder15 жыл бұрын

    2:38 i know that feel often

  • @donloder1

    @donloder1

    5 жыл бұрын

    in the case of laggy player, i wonder who made the more prediction the computer/server, the player. or the high blood pressure.

  • @noninvasive_rectal_probe8990
    @noninvasive_rectal_probe89903 жыл бұрын

    Could they use varying tick rate based on speed of objects?

  • @uHaveNiceKeys

    @uHaveNiceKeys

    Жыл бұрын

    I believe that's a benefit of multi-threaded processing they decided to go without, or a feature that was overlooked during development. Cone did describe the launch as stressful, so I'm gonna roll with overlook as why.

  • @Kokuyous3ki
    @Kokuyous3ki Жыл бұрын

    As someone who is suffering through simply physics replication currently... yea, Rocket League is terrifying me :)

  • @jekmoha3
    @jekmoha35 жыл бұрын

    Hmmm. Heavy car bug is probably that client prediction getting messed up or simply stops working for that client.

  • @dola8305
    @dola8305 Жыл бұрын

    This is Rocket League!

  • @cosminvoinopol705
    @cosminvoinopol7056 жыл бұрын

    Last one had too many details so this one is a simplified version

  • @sherlockli4439

    @sherlockli4439

    5 жыл бұрын

    Hi, do you know where we can watch the more detailed video? Thanks.

  • @robosergTV

    @robosergTV

    4 жыл бұрын

    Hi, do you know where we can watch the more detailed video? Thanks.

  • @chadfranklin47

    @chadfranklin47

    4 жыл бұрын

    Hi, do you know where we can watch the more detailed video? Thanks.

  • @ckskydives

    @ckskydives

    3 жыл бұрын

    Hi, do you know where we can watch the more detailed video? Thanks.

  • @Bleeglesplotch

    @Bleeglesplotch

    2 жыл бұрын

    Hi, do you know where we can watch the more detailed video? Thanks.

  • @AntonKozikowski
    @AntonKozikowski6 жыл бұрын

    rocket league 11 yrs.

  • @jayantbarthwal4470
    @jayantbarthwal44703 жыл бұрын

    did they used photon networking for this???

  • @samochreno

    @samochreno

    2 жыл бұрын

    what bro

  • @AndrewRiggs-zp3rv
    @AndrewRiggs-zp3rv Жыл бұрын

    Gc2 thanks amazing game

  • @edgeribble

    @edgeribble

    3 ай бұрын

    I think they should add the ability to cancel side flips to the game. It would add new mechanics, make recoveries faster and raise the skill ceiling of the game plus it wouldn't detract anything from the game because there are no mechanics that rely on sideflips not being cancelled

  • @edgeribble

    @edgeribble

    3 ай бұрын

    do u think chaining wall dashes would be harder if u could cancel sideflips

  • @einfachConny
    @einfachConny6 жыл бұрын

    how could you possible give us more info than you already gave us in the first video?

  • @sherlockli4439

    @sherlockli4439

    5 жыл бұрын

    Hi, do you know where we can watch the first video? Thanks.

  • @robosergTV

    @robosergTV

    4 жыл бұрын

    Hi, do you know where we can watch the more detailed video? Thanks.

  • @chadfranklin47

    @chadfranklin47

    4 жыл бұрын

    Hi, do you know where we can watch the first video? Thanks.

  • @Bleeglesplotch

    @Bleeglesplotch

    2 жыл бұрын

    Hi, do you know where we can watch the first video? Thanks.

  • @stevesan
    @stevesan6 жыл бұрын

    this is an **awesome** talk! thanks so much. i had a question: was the 120hz only chosen for consistency? could it be argued that the game would probably work just fine at 60hz? maaayyybe the most expert players would notice in very specific situations (like kick off), but is it fair to say vast majority would not?

  • @f0kes32

    @f0kes32

    2 жыл бұрын

    as far as i know tickrate is actually 60hz

  • @skiplogicgg

    @skiplogicgg

    9 ай бұрын

    @@f0kes32 you can measure the tick rate with some external tools and it's 8.33ms per tick as far as i can tell. i think that's 120hz?

  • @cody.onewheel
    @cody.onewheel3 жыл бұрын

    would you agree there is no randomness at all when talking about the way the ball reacts?

  • @DigitalJedi

    @DigitalJedi

    2 жыл бұрын

    RL is deterministic. The same exact inputs will always produce the same exact outputs.

  • @Sypower94
    @Sypower946 жыл бұрын

    Has rocket league always ran on a 120Hz physics tick rate? Or was that changed in one of the patches? I feel like I would have noticed something like that but I've never heard of it.

  • @half.step.

    @half.step.

    6 жыл бұрын

    Sounds like that's what they started with

  • @AntonKozikowski
    @AntonKozikowski6 жыл бұрын

    cars love to play soccer

  • @PeterSvP
    @PeterSvP Жыл бұрын

    When hackers know more than you :D

  • @yellowmonkee0
    @yellowmonkee04 жыл бұрын

    It's just beautiful how this android made such a great game.

  • @yoeymeme

    @yoeymeme

    2 жыл бұрын

    Android?

  • @VincentVanGirth
    @VincentVanGirth3 ай бұрын

    I wonder if I could hire this genius to help me fix my FPS dips on my new PC, I'd prefer not to have to learn all of this XD

  • @Eirenband
    @Eirenband6 ай бұрын

    I appreciate this talk, but I'm also so disappointed in the developers. They simplified and simplified and simplified until all the cars were the same, and all the maps were the same, removed voice chat, removed trading. They got so good at simplifying that they only know how to take away.

  • @edgeribble

    @edgeribble

    3 ай бұрын

    voice chat is back and i think trading could come back in ue5. I think they should add the ability to cancel side flips to the game. It would add new mechanics, make recoveries faster and raise the skill ceiling of the game plus it wouldn't detract anything from the game because there are no mechanics that rely on sideflips not being cancelled

  • @GewoonEenNick

    @GewoonEenNick

    7 күн бұрын

    ​​@@edgeribbleTrading wont come back. People get scammed, and epic games dont wanna fix that

  • @edgeribble

    @edgeribble

    7 күн бұрын

    @@GewoonEenNick I heard the reason they removed trading is because it was illegal in some countries

  • @jekmoha3
    @jekmoha35 жыл бұрын

    "Input delay is not an option" :D This is the only game where I experience major input delay.

  • @lavanaut

    @lavanaut

    5 жыл бұрын

    That's not input delay, that's your deadzone settings.

  • @DjTinnio
    @DjTinnio3 жыл бұрын

    Having the game at capped 240 fps, makes my inputs randomly react different. Having the game at 120 fps, everything is normal. I heard the physics tick rate is 120. Is there a way to increase that to 240 ? A dynamic tickrate , syncing along with the fps would be a solution i guess ? I can easily pull 240 fps at max settings. And it is sad, that it is unplayable then. Also, i noticed, that the sensitivity of my mouse is lower, the higher the fps are. Oh and, the walls sucking the cars towards them is kind of , disturbing. And when releasing the throttle, the car accellerates, when shifting down. In realtiy a car slows down when downshifting, because of the engine brake. Ideal would be the car getting slower in a linear smooth way, without speed changes, in Rocket League, because of course, you have to calculate the distance to a ball. The sound effect of changing gears , should only be a sound effect. Accellerating is completely linear, so , decellerating should be linear too then, especially if you have an automatic gear change, wich is only happening at predefined rev ranges, so there is not even a revving up happening. Why is the game acting like someone is hitting the clutch at decellerating, taking the gear out, so it can roll easier, and decellerates less ? The thing is, you can't get a feeling for , when the automatic gear will switch a gear down on its own. You can't predict, when the car is making that push forward. And it does the push forward, because you guys, implemented the effect of an engine brake, in the complete oposit way, than what it is in reality. I guess you thought, a higher revving motor, means being faster, wich is just wrong, at decellerating. What is true is, the car , wanting to roll on forward, because of its weight, is revving the motor up, if a lower gear is put in MANUALLY, because it is a lower transition, than the higher gear. It is then harder for the wheels, to transfer energy into the motor through the transmission, and that's why it is slowing the car down. The energy transfer between transmission and the engine, flips, when releasing the throttle. Not the engine spins the tires anymore, the ground is spinning the tires, and they spin the transmission, wich spins the motor. The energy for that comes only from the rolling forward momentum. If you switch to a lower gear then, the transition is lower, wich forces the engine to revv higher, but the energy for that , is coming from the road that is spinning the tires. Spinning up the motor that way, costs energy, and that's why the car is braked by that process. But in Rocket Leage, again, the car accellerates, when it shifts a gear down. It needs to be fixed. And since it is an automatic transmission, which changes gears at ideal revv ranges, without causing these weird engine revving, the so called engine brake is also reduced, to put less stress on the engine and transmission. This means you could simply change it into a linear decelleration, when releasing the throttle button. Tnx. And why the heck is accelleration spelled with 2 c's , but decelleration with one c ... ? I am german, sry :-p .

  • @christianhagberg5417
    @christianhagberg54176 жыл бұрын

    Hey look this one's more than a minute long...

  • @AaronVoegele
    @AaronVoegele3 жыл бұрын

    Great part is how everything he says pretty much is antithesis to online sim racing games.... lol.

  • @Madash023
    @Madash0236 жыл бұрын

    I've been struggling with tuning vehicle parameters for a while. It was a great talk, but as someone who loves simulations and realism, it's disappointing to hear that the answer is "Cheat and don't use physics."

  • @ZoidbergForPresident

    @ZoidbergForPresident

    6 жыл бұрын

    Of course, because it's better. For games that is. Read about some simulation being made for a racing game and nobody could play it except for professional pilots.

  • @cartridgeinside

    @cartridgeinside

    6 жыл бұрын

    ZoidbergForPresident that is so false lol

  • @ZoidbergForPresident

    @ZoidbergForPresident

    6 жыл бұрын

    You must be read, I must have read that book in my dreams. I yield to your all powerful argument.

  • @1forgiven2

    @1forgiven2

    6 жыл бұрын

    Realistic vehicle physics becomes very complex very fast though. In racing simulators there is not really a way around it without making it feel arcade-like. If you can find something on iRacing car physics for example you'll see that they simulate things such as drivetrain and body flex. And of course the tire interaction with the car and the road surface.

  • @maljamin
    @maljamin4 жыл бұрын

    They have bots.. I wonder why for other-player prediction they don't just run whatever the bot algorithm is. It's got to be at least as good as just sort of decaying inputs (as if the player just slowly lost muscle function or something). You'd think even a dumb bot would get closer to what a real player does, bots know where the ball is and where other players are, and they pursue reasonable goals (sorta). He talked about using machine learning but.. why, you've already got bots. And definitely from there, you've got a ton of training data if you ever want to involve ML in improving the bots. Just keep comparing predicted inputs to real inputs, given the known physics state at that moment. Seems really ripe for ML... I bet you it's on the horizon with lots of games... killer bots and improved player input prediction. Which would help for the both prediction on the client side and on server.

  • @clonkex

    @clonkex

    3 жыл бұрын

    He only talks about ML because he realised that's what the question-asker was meaning by "prediction". In reality it's not prediction, it's just simulating the world from the last known server state onwards ("speculative execution" would be a better term than prediction). The problem with using the bot AI would be that a) it might not be stateless so it would be hard to implement, and b) what if the bots _don't_ actually do what the player does? What if every frame, the bot tries to turn right, but the player continues turning left? For any ticks where there's no server input, the car would turn right, but then would be corrected to turning left for one tick, then continue turning right. It would look terrible. I also can't imagine how it would be more likely that the bot would correctly predict the player's next move than simply repeating the player's last inputs. Like unless the bot predicted the player's move within one tick of accuracy it would be actively detrimental to the experience, not beneficial.

  • @MrADEL84
    @MrADEL844 жыл бұрын

    They gave all the power to the server and they put in a crappy servers in game, screw this crap

  • @jiro4559
    @jiro45592 жыл бұрын

    Why every speaker thinks that he's a comedian

  • @samochreno

    @samochreno

    2 жыл бұрын

    ?

  • @__________Troll__________

    @__________Troll__________

    Жыл бұрын

    *It's crazy to have a hateboner for opening jokes*

  • @flaming7488
    @flaming74883 жыл бұрын

    This games physics suck

  • @RevJ7
    @RevJ73 жыл бұрын

    A whole hour to explain how the physics are nonsensical garbage? wow. I did it in just a few seconds.

  • @FilipeCSR
    @FilipeCSR3 жыл бұрын

    Now I know why this game sucks... lazy game design.