ROBLOX Vehicle

How ROBLOX Is Improving Its Network Physics

ROBLOX VehicleIf you drive a real-life car into a brick wall, the car doesn’t simply bounce back. With enough speed, it causes the brick wall to come crashing down in a destructive display of physics. (Just trust us on this.)

To make sure these kinds of things happen in ROBLOX, as in the real world, ROBLOX Senior Game Engine Developer Kevin He has made some improvements to ROBLOX’s distributed physics engine. Today, he’ll show us the improvements with a number of video demos.

Simulating Physics

Simulating physics – like a car colliding with a wall or a player character getting hit by a car – in a ROBLOX game with multiple players poses unique challenges. ROBLOX uses a distributed physics (DPhysics) engine, which divides the processing load among in-game players and the server hosting the game. The DPhysics engine scales well and keeps every player in sync with the action.

Each player has a “buffer zone” that determines the physics their computer processes. While this helps spread the processing load, we have recognized the room for improvement: for example, if a player “owns” some piece of a level within their buffer zone – let’s say they’re standing on a simple block – you might, in some cases, not be able to knock it over with a vehicle. The same holds true for a vehicle colliding with a player character. Instead of entering a “ragdoll” state, there are cases where the character remains standing.

Buffer Zones

Buffering Zones Before Fixes

The red balls indicate where players' simulation zones overlap.

This image shows an area we’re improving. There are four players clustered in the center of the level. Only the red balls are shared between the blue player and the other three players, and they’re far away. That means the other players can’t affect the objects in the blue player’s immediate vicinity.

This video shows the inconsistency in action. The vehicle can’t knock down the block “owned” by the other player or knock down the player. This is the result of an overly thin buffer zone between the players.

The Fixes

Buffering Zones After Fixes

Note the much larger shared buffer zones after the tweaks.

Our fixes tweak the buffer zones to create a softer edge; an overlap in who-controls-what. In other words, they make physics happen the way you’d expect.

This image shows the tweaked buffer zones for the purple player at the bottom. The number of red balls has dramatically increased, meaning much of the territory – most importantly, the common territory in the middle – is shared between all four players.

See It In Action

Watch this video to see how vehicles and characters respond under the tweaked DPhysics engine.

[do action=”youtube-iframe” videoid=”nISvYnB9NbE”/]

As this video shows, we’re also working on a new “ragdoll” state for the player character in ROBLOX. The ragdoll state simulates realistic body physics during an event like a car collision. It also works for projectiles, as previewed in this video:

[do action=”youtube-iframe” videoid=”WzI4eOojhJg”/]

The above is still work in progress. We’re interested in your feedback on the DPhysics and ragdoll changes we’re making to ROBLOX.

About Kevin He

Technical Director of Physics and Distributed Simulation at ROBLOX. @GongfuTiger on Twitter.

365 thoughts on “How ROBLOX Is Improving Its Network Physics

  1. asphaltdevil7

    i could totally see a car with the bricks and stuff, thats realistic. but a ball, ehh.. not really. but i could see it if the character only moved -not falling over,moved- like an inch. then it would look good

    p.s i think they put this in cause when im swordfighting i randomly tip over all the time

  2. Kingoftheroad64

    In all those videos demonstrating the new physics. I noticed you have the dynamic lighting system running. It looks so cool. I want it to come out for the general public really soon! Also, I think that view distance and not rendering objects not in players’ views will really help reduce lag.

  3. StealthKing95

    Amazing work with the Dphysics, but i agree that you should take advantage of the openGL features. It really shouldnt render parts that arent in the player’s view.
    And I think humanoids should have a ragdollenabled boolean so we could enable it anytime ;)

    1. testedelite67

      the physics where it realistic or what? cause if the realism update is what bothers i disagree

  4. B3nblox148

    Hey, admins, Make the physics better, cause in ro-soccer, when i play soccer in real life I dont fall over every time the ball touches me, this is BY FAR the WORST update on ANY online game. In History. Please, for the sake of about 3/4 of the people on ROBLOX, remove it.

  5. Terminator666

    I HATE the new physics. Its one thing to fall over because of a vehicle, but a ball? NO WAY! And I fall down enough as it is on the new terrain. Now its even worse. I cant even play a single game without falling over SOMETHING! I shouldnt be tripping while I go up a ramp. Horrible Idea. It needs to be more selective of when you fall down. How about tweaking the vehicles to produce the effect, not the players.

  6. LuckyHawk

    Please make it to where there is a script or some type of option to remove this new physics.
    It has ruined may Ro-Sports and we wish this could be taken away. Thank you.

    1. KirkyTurky12

      I also agree, but you should have a RagdollEnabled property in the humanoid and it should be automatically set to false.

  7. Dave Chetien (XboxMaster24)

    I like everything but for the projectiles you shouldint bounce as much

  8. Thunderx10

    This could hinder the development of many scripts. I often make Suits, with blocks welded to your character to make them look different. Some of the parts are spinning for effect. If someone were to touch the part that is spinning it could fling them back. I think it would be better to work on water physics.

  9. Camerono3

    Old ROBLOX is nasty bad graphics bad animation everything is fine the way it is we need more water physics and when we get hit by cars we fly backwards a bit and being hit by projectiles at a certain distance it should have you fall but like a slip and make the death a rag doll one and every time we say say something in the chat-bar our character’s mouths open,and don’t forget the reflection it’s good for swords when you don’t know who’s behind you then your sword reflects the image of the player behind you that is suggested for Telamon’s “Sword Fight On the Heights” because many “Noobs” like to sneak up on others and when you are behind a wall names should not show up because it just ruins the point of hiding from someone in a game. ROBLOX physics should be more realistic like death i recommend rag-doll and falling off of heights rag-doll fall and make the sword lunges not be so jumpy because people cheat in sword fighting games with the jumpy sword lunges the sword lunges should be more like a side dodge but you have your sword go towards the opponent. I suggest releasing the physics little by little make the updates frequent like everyday there is a new update and i recommend making a separate
    ROBLOX for exploiters so that site incident won’t happen again like make hack.roblox.com/default.aspx and make a realistic run if you double tap w you move faster but in a animation.

    1. v12dudeguy

      does anyone comment on these any more? or they care about making gameplay look more awesome?

  10. Riverrattick

    Down with this too. I don’t mean to be a hater but, like some one said, this can affect roblox in a destructive and negative way. ex. exploiters.

  11. Gome123abcd

    We could have easier scripting like we type “Walk” then “Left” and it would walk of for
    gender type “Boy” if catcch my drift.

    And ROBLOXian 2.0 should be for everyone because its more “human” BUT for 1000 T$ or 100 R$

    By the way epic grammar for my age

  12. Gome123abcd

    We could have easier scripting like we type “Walk” then “Left” and it would walk of for
    gender type “Boy” if catcch my drift.

    By the way epic grammar for my age

  13. FastHedgehogSonic

    Hmmmm…..its kinda good…..Who thinks they should also make a reflective motion?…

  14. twainprice

    Yeah, well it is pretty good- apart from the fact I’ll fall over al of the time.

  15. 0123Red

    Hey, I like most of these ideas, they sound neat. I also think, all of what you showed, I can script. If you were to hit somebody hard enough, they wouldn’t platform plank it on the ground, they would turn to a literal rag doll state. I do not think these updates are necessary, or at least not defaultly, add an option or something, so if I do not want these to be automatic(as they would annoy me in many a game), they don’t have to show up. Thank you.

  16. Luigitim

    You want to make more realistic? Were children get to witness what happen’s when you do bad things?
    Not such a good idea,and you should make it were the head’s have a second joint were you can move your head.That would be awesome and very cool.”Already in paintball games” also you could add were your arms can move like a human’s last but not least make it were a robloxian can move there mouths. That would also be awesome enough said by the epical programmer “Luigitim” im also making my own website. called TrueLife. Base upon the real world like rules and regulation’s mostly real life situations.

  17. MechaWaffle

    I wouldnt like it, this would be so annoying falling over all the time. It might also affect gameplay in several games making them hard to play, maybe even impossible to play correctly.

  18. starwill99

    looks cool but again, i agree i dont like getting hit with a ball then spazing out. People will abuse that so much, i like every thing else

    oh and one more thing..

    BRING 08 ROBLOX BACK! only for like a day D: please roblox

    LOOK UP STARWILL!

  19. zapzing303

    Vehicles Ragdoll? Good Idea. The only problem I see is a troll annoying you with a jeep.

    Projectiles Ragdoll? NO. This would simply ruin the combat on ROBLOX.

    1. zapzing303

      To add, the ragdoll is to far. If you get hit by a ball, you may fall. You do not fly 10 feet out of the area.

  20. GameNuke753

    This is a suggustion:you should make it more realistic so when they die they get bruises and cuts and bleed out

  21. kylerazor1050

    I really love it. But I don’t know when this is going to happen. I am really excited!

  22. Speed

    This WILL cause a lot of lag. I think, and many others, you should actually fix all of the little holes in the game that allows anyone to exploit the game and gaining admin commands. Literately every game I went to, had at least one exploiter, ruining the whole game. For this reason and others, I quit Roblox.

    1. N1310

      It’s not the updates that lag, it’s the servers, after physics, they need a better server boxes.

    1. Besthappygirl

      The new update hurts my eyes. O_O

      But i love it!

      I’m gettin’ obc on my birthday!!!!!!!
      :P

  23. sebstar2011

    I think personally this is a perfect idea of ROBLOX’s as it will keep players interested and intrigued for more additional updates and ways to experiment. Keeping ROBLOX popular, and also meaning less people quitting ROBLOX!

  24. Kyle51

    Ehh… Dont really find this that cool… What would be amazing is if you made the site back like it was in 08. ;D

  25. Greg

    The only problem I could see in the projectile one would be how if it would react statically, regardless of the size/speed of the object (for instance, hitting someone with a 1/1 bullet from 50 yards away would be the same as hitting them with the big ball in the video from 10 yards away). I have no idea if that’s going to be a problem because the video only showed one instance, and in it it looked pretty static regardless of how far away the player was who shot the ball.

Comments are closed.