Took so long but we finally have it, we will no longer have to suffer the worst implementation of ragdolls in games where they go to the heavens or glitch underground
With how roblox has been doing actully good updates now, it seems like any day now they are going to do a massive update like adding screen space reflections, or something
@@Sleepy_Cattt Screen Space Reflection is a technique for reusing screen space data to calculate reflections. It is commonly used to create more subtle reflections such as on wet floor surfaces or in puddles.
@@Sleepy_Cattt Basically the best alternative to ray tracing reflections (raytracing is extremly intensive on the gpu) Im pretty sure roblox arleady has screen space reflections on the water shader, but basically its just reflections that actully reflect whats on screen, and not just the skybox (like how roblox reflections on parts are currently)
They still haven't added ragdoll support for skinned meshes which surprises me since roblox has created a whole campaign trying to rebrand to skinned mesh characters away from the blocky r15. You're still required to resort to hacky solutions that involves cutting up your mesh which defeats the purpose of a skinned mesh.
The only problem with this it adds a lot of constraints and scripts , I thought before the update release that the animation constraint will do all the work
Constraints aren't a problem, it's just Roblox's workaround way of doing things that requires multiple scripts to function They could've legit just added like a toggle in the workspace for this behavior
@@Paul1Rbi agree with this and want to add that having there be constraints AND an animation constraint makes things less cluttered. if the animation constraint did everything, for one thing it would have WAY too many properties. it would either need to include properties for every single constraint type and many more for controlling how it reacts, or it wouldn’t function enough, forcing you to just deal with it not working exactly how you want it. it may be a lot of constraints, scripts, ect but it allows for more flexibility.
also even if i didnt have everything correct about animation constraints, my general point stands about it just being nicer. maybe you don’t agree, but it seems like it just adds an easier way to keep animations for ragdolls.
now they need to update Roblox's Lighting settings...my God, I didn't remember how dated this is in Roblox, even today they are using lighting and position of sun and moon based on the position of the horizon To this day, Roblox does not have a reflection system for open spaces, added PBR, but forgot to add Emissive maps, something crucial for lighting in games, Roblox's "neon" is extremely limited and annoying to use, it is not possible to change the intensity without having to change the color and we do not have support for both types of skybox, both square and spherical
Oh great, two weeks after I spent hours working on a ragdoll system and Roblox does it themselves, and the update breaks my system. Fun. :D (Even funnier roblox has bugs I fixed in the past, so their system FOR NOW actually has more bugs/glitches than mine, lol)
i just tested it, while it doesnt ragdoll it still has physics (its just that it does the old roblox idle animation that happens when you get flinged) and the gun and hook gun also work
7:00 Where the Humanoid and RootPart is declared, at the end you've got 2 colons and then the type, but whats the difference when you can just put ": TypeOfTheInstance" after the name of the variable?
@@Noon1263 Take this example: local function setWalkspeed(humanoid: Humanoid, walkSpeed: number) humanoid.WalkSpeed = walkSpeed end local humanoid = character:WaitForChild("Humanoid") -- WaitForChild returns the type "Instance", so the type of "humanoid" is inferred to be "Instance" setWalkspeed(humanoid, 0) -- The variable "humanoid" is Instance but the function expects the type "Humanoid", so setWalkspeed(humanoid :: Humanoid, 0) In this case it makes more sense to declare the variable as the "Humanoid" type. In practice I rarily use :: as I personally prefer using : for types. And since Luau does not stop your code from running when you have wrong types it doesn't make a difference. If we were in a language that enforces types then: local humanoid: Humanoid = character:WaitForChild("Humanoid") -- Would be wrong because this is assiging "Instance" to a variable that is "Humanoid", meanwhile local humanoid: Humanoid = character:WaitForChild("Humanoid") :: Humanoid -- Is correct because it's casting "Instance" to "Humanoid". Of course this also means we can skip the ": Humanoid" in our variable as it would infer the type
@@Noon1263 It's just good practice overall and keeps consistency, it'll also allow you to make sure you don't have the wrong type (like string instead of number). You could code without declaring typed but in larger scale work it'll benefit you
The 'var: Type' means that you tell the compiler to know what type the variable is, 'var = something:: Type' forces it to be that type. E.g. there can be instances where you get the HumanoidRootPart of the player: local HRP: BasePart = char:FindFirstChild("HumanoidRootPart") And the compiler might warn you that the instance can be nil, but doing: local HRP = char:FindFirstChild("HumanoidRootPart"):: BasePart will make the compiler think that it'll exist.
This is pretty good! I know this still in beta and will improve a lot with the time, but they will really need to optimize it if they want to keep their game lightweight (thing that I don't think since all that graphical stuff they keep adding such as Future lightning), I can see a lot of low-end pc's and phones burning ONLY watching this video. Imagine the game engine calculating individual physics for EVERY body part of 10, 20 or even 30 avatars at the same time on a low/mid processor, physics are really heavy, so this without proper optimization will lag on almost half of community's devices. They really put effort when it comes to optimizations, but what you can do to reduce cpu usage calculating physics without reducing it's precision? Really not that much.
Can you please tell me how to save the slime character in studio? It breaks whenever I try to save it but works fine beforehand. I have 0 clue as to what could cause such a thing to happen when all I am doing is saving it to studio and suddenly it breaks. The issues also happens if I copy and paste the slime model into the workspace--or you can at least see a visual representation of what happens to the character when you save it to roblox.
@@Paul1Rb I was playing around with it and noticed that if I set the collision for avatar in game settings to Inner box, it suddenly works 80% of the time instead of not at all. Do you know if there are any specific world/avatar game settings you changed? I know for a fact that the bug has nothing to do with smart bones--I believe it is strictly related to game settings since that would be the only thing which changes between the published/saved version and the local copy.
@@timmyw3637 I think the only things I changed were the gravity setting, it might also be happening because the slime is not a proper custom character, since it's missing few components (but fixing it also completely breaks the controller )
@@Paul1RbIt's kinda unclear if in phase 3 it will be optional, it just says it will be on by default in new games and old games will still use Motor6Ds.
not exactly a scripter but this is going to be so useful for me n my girlfriend's game!! this is such a w update thank you for making this video on it :)
7:00 doesn't make a difference if you use while true do or while task.wait() do. Except if for some reason ever, roblox decides to make task.wait() not equal to true, the change wouldn't work anymore.
@@Paul1Rb not really a readability i would say It will run first loop after finishing a yeild wich is dumb plus the only reason it works is becouse task.wait or wait returns number greater than 0 wich LuaU considers as true in statements
@@yarik_superpro 'while true task.wait() do' and 'while task.wait() do' are the same, both execute the code after yielding The scope is not going to yield then check the condition provided in the loop after
@@ryleyw3684 You look like you'd do it ngl I watched the whole video. And sometimes I say something about the video. You didn't even have a comment about the video so? Think first before saying this and I really get mad for an opinion that is literally making me go down
A lot of people are asking "Does it work on R6?".
And the answer is: Absolutely not! (yet) - It'll be supported in the future (11:34)
Ragdoll is now officially added
Took so long but we finally have it, we will no longer have to suffer the worst implementation of ragdolls in games where they go to the heavens or glitch underground
Just noticed it also doesn't bug out crazily when hitting the floor, simply amazing
Imagine calling yourself a 'physics engine' while adding avatar physics 20 years later
@@Paul1Rb they should add soft bodies next(lag x 100)
@@Paul1Rb bro is spitting facts right here 😂
With how roblox has been doing actully good updates now, it seems like any day now they are going to do a massive update like adding screen space reflections, or something
Hope so
Please excuse my ignorance, what's a screen space reflection?
@@Sleepy_Cattt Screen Space Reflection is a technique for reusing screen space data to calculate reflections. It is commonly used to create more subtle reflections such as on wet floor surfaces or in puddles.
@@Sleepy_Cattt Basically the best alternative to ray tracing reflections (raytracing is extremly intensive on the gpu) Im pretty sure roblox arleady has screen space reflections on the water shader, but basically its just reflections that actully reflect whats on screen, and not just the skybox (like how roblox reflections on parts are currently)
Wish for them to add custom shaders support which will so much power to vfx
roblox is slowly becoming the source engine
its basically a quarter of the source engine
real
someday it be a source engine...
The ragdoll was implemented in source 20 years ago
We are turning into ERRORs with this one
Roblox and gmod* both run on Lua too
Of course right when I'm making my own system for it...
It be like that
I have an idea about this. But roblox already made it
They still haven't added ragdoll support for skinned meshes which surprises me since roblox has created a whole campaign trying to rebrand to skinned mesh characters away from the blocky r15. You're still required to resort to hacky solutions that involves cutting up your mesh which defeats the purpose of a skinned mesh.
I kind of don't get what's so hard about adding bone physics
Can't you just tp the bones to a constrained part
@@Paul1Rbyou make it then
@@baconheadhair6938 Yeah sure just let me get hired at roblox rq
You don’t need to cut up your skinned mesh for ragdolls.. just add the physics to the bones
The only problem with this it adds a lot of constraints and scripts , I thought before the update release that the animation constraint will do all the work
Constraints aren't a problem, it's just Roblox's workaround way of doing things that requires multiple scripts to function
They could've legit just added like a toggle in the workspace for this behavior
@@Paul1Rbi agree with this and want to add that having there be constraints AND an animation constraint makes things less cluttered. if the animation constraint did everything, for one thing it would have WAY too many properties. it would either need to include properties for every single constraint type and many more for controlling how it reacts, or it wouldn’t function enough, forcing you to just deal with it not working exactly how you want it. it may be a lot of constraints, scripts, ect but it allows for more flexibility.
also even if i didnt have everything correct about animation constraints, my general point stands about it just being nicer. maybe you don’t agree, but it seems like it just adds an easier way to keep animations for ragdolls.
@goldfishglory I don't see it as a bad update but I think they should make the animation constraint do all the word instead of 3 constraints
@@Krantworld 3 constraints can be annoying. especially since even having only one constraint can get messy.
garrys mod is now posswible in roblox 🤯much love from Togo
been possible for a whilefor example we have rays mod
@@micblox rays mod suks gmod better
@@skinskinner well your spelling also sucks.
@@skinskinner agreed
the gmod cicle
gmod > the cool zone > rays mod
now they need to update Roblox's Lighting settings...my God, I didn't remember how dated this is in Roblox, even today they are using lighting and position of sun and moon based on the position of the horizon
To this day, Roblox does not have a reflection system for open spaces, added PBR, but forgot to add Emissive maps, something crucial for lighting in games, Roblox's "neon" is extremely limited and annoying to use, it is not possible to change the intensity without having to change the color and we do not have support for both types of skybox, both square and spherical
Emmisive maps, custom cube map or real reflection, more lights possiblity (range 60 is just not enough)
emissive maps are on the roadmap
@@a_username_lol uh, no
it only has Roughness map, Metalness map, Normal Map and Color
@@andrededecraf google what a roadmap is
This looks very early stage but hopefully they will fix it up and fully release it soon because it's an amazing feature
this is like, one of those updates that actually really interest me
Roblox pulled a W with this one
bro your content is so useful and amazing, keep going !
Ty!
actually looks really cool
Oh great, two weeks after I spent hours working on a ragdoll system and Roblox does it themselves, and the update breaks my system. Fun. :D
(Even funnier roblox has bugs I fixed in the past, so their system FOR NOW actually has more bugs/glitches than mine, lol)
that sucks 😂
right as I leave for vacation they add something i needed. maan
It means the Studio beta should improve once you're back :D
@@point0947cap
It'll take some time to be fully released since it's in beta now
walking with deathspeaker's legs with these physics oddly feels like walking with chopsticks as legs
A while ago, i worked so hard and spent hours for making a ragdoll game. I never released it. It was really good. But now, its so easy to make
Technically you could still combine its features with the avatar physics, not all is lost
the hack: side note is golden
Does this work for R6? İ personally can't check it right now since I'm on phone
11:34
@@soupstuff1 Thanks!
i just tested it, while it doesnt ragdoll it still has physics (its just that it does the old roblox idle animation that happens when you get flinged) and the gun and hook gun also work
If this is added to R6, reanimate exploits/scripts might stop working
Also rip obbies
@@Testbot379 you can just not use it in own game they are not forcing you to enable this feature
@@yarik_superprowhat if this gets out of beta? and isn’t toggleable but forced, then you’ll have to use it
@@sahibdeep roblox player try not to assume the absolute worst challenge
They will not force you to use it. They know that it will break obbies.
@@sahibdeep we toggling the IsKinematic property with this one
Very cool, but I hope we can turn it off for that “nostalgic” feel
2:24 the selfie stick was always hard to operate.
ABOUT DAMN TIME
7:00 Where the Humanoid and RootPart is declared, at the end you've got 2 colons and then the type, but whats the difference when you can just put ": TypeOfTheInstance" after the name of the variable?
it's called typecasting, and you are just inferring that it's that type of instance used, specifically when passing in parameters to functions
@@uliveulearnandregret ok, im not sure that helps me understand, like what is the general difference? whats it for?
@@Noon1263 Take this example:
local function setWalkspeed(humanoid: Humanoid, walkSpeed: number)
humanoid.WalkSpeed = walkSpeed
end
local humanoid = character:WaitForChild("Humanoid") -- WaitForChild returns the type "Instance", so the type of "humanoid" is inferred to be "Instance"
setWalkspeed(humanoid, 0) -- The variable "humanoid" is Instance but the function expects the type "Humanoid", so
setWalkspeed(humanoid :: Humanoid, 0)
In this case it makes more sense to declare the variable as the "Humanoid" type. In practice I rarily use :: as I personally prefer using : for types. And since Luau does not stop your code from running when you have wrong types it doesn't make a difference. If we were in a language that enforces types then:
local humanoid: Humanoid = character:WaitForChild("Humanoid") -- Would be wrong because this is assiging "Instance" to a variable that is "Humanoid", meanwhile
local humanoid: Humanoid = character:WaitForChild("Humanoid") :: Humanoid -- Is correct because it's casting "Instance" to "Humanoid". Of course this also means we can skip the ": Humanoid" in our variable as it would infer the type
@@Noon1263 It's just good practice overall and keeps consistency, it'll also allow you to make sure you don't have the wrong type (like string instead of number). You could code without declaring typed but in larger scale work it'll benefit you
The 'var: Type' means that you tell the compiler to know what type the variable is, 'var = something:: Type' forces it to be that type.
E.g. there can be instances where you get the HumanoidRootPart of the player:
local HRP: BasePart = char:FindFirstChild("HumanoidRootPart")
And the compiler might warn you that the instance can be nil, but doing:
local HRP = char:FindFirstChild("HumanoidRootPart"):: BasePart
will make the compiler think that it'll exist.
I have no idea what you are saying but it sounds great!!
how about roblox finishes working on the culling occlusion feature instead of making new features all the time!
This is pretty good! I know this still in beta and will improve a lot with the time, but they will really need to optimize it if they want to keep their game lightweight (thing that I don't think since all that graphical stuff they keep adding such as Future lightning), I can see a lot of low-end pc's and phones burning ONLY watching this video. Imagine the game engine calculating individual physics for EVERY body part of 10, 20 or even 30 avatars at the same time on a low/mid processor, physics are really heavy, so this without proper optimization will lag on almost half of community's devices. They really put effort when it comes to optimizations, but what you can do to reduce cpu usage calculating physics without reducing it's precision? Really not that much.
This is so BIG I literally POGGED 😮
They might actually be cooking. Holy cow
As long as you’ll always be able to toggle this, this is really great
Pretty sure that if it wasn't a toggle 90% of games would break, especially those with custom movement
as a guy who likes funny ragdolls i see this as an absolute win
God that great you could make so many games with this one 😍
Can you please tell me how to save the slime character in studio? It breaks whenever I try to save it but works fine beforehand. I have 0 clue as to what could cause such a thing to happen when all I am doing is saving it to studio and suddenly it breaks. The issues also happens if I copy and paste the slime model into the workspace--or you can at least see a visual representation of what happens to the character when you save it to roblox.
No clue, it's an issue that I've struggled with for months and still haven't found a solution
@@Paul1Rb I was playing around with it and noticed that if I set the collision for avatar in game settings to Inner box, it suddenly works 80% of the time instead of not at all. Do you know if there are any specific world/avatar game settings you changed? I know for a fact that the bug has nothing to do with smart bones--I believe it is strictly related to game settings since that would be the only thing which changes between the published/saved version and the local copy.
@@timmyw3637 I think the only things I changed were the gravity setting, it might also be happening because the slime is not a proper custom character, since it's missing few components (but fixing it also completely breaks the controller )
It works only in the studio,if I publish it,it doesnt work can you help?
It's prob a Studio only feature, roblox might'be pointed it somewhere and I prob just missed it
sounds logical, since its Beta feature
this new feature is really interesting
While this is cool, I wish for this to be optional and all old games use the old physics by default. Either optinal or do not release.
11:04
@@Paul1RbIt's kinda unclear if in phase 3 it will be optional, it just says it will be on by default in new games and old games will still use Motor6Ds.
i was testing the game in studio i realize the ragdoll was pretty much gone it does the animations instead
will the ragdolling humanoidstate actually be more useful now?
ragdoll state is deprecated
Something like this was planned in like 2020 hack week right?
Im exited
not exactly a scripter but this is going to be so useful for me n my girlfriend's game!! this is such a w update thank you for making this video on it :)
7:00 doesn't make a difference if you use while true do or while task.wait() do. Except if for some reason ever, roblox decides to make task.wait() not equal to true, the change wouldn't work anymore.
except task.wait() yields the loop
It's for code readability
@@Paul1Rb not really a readability i would say
It will run first loop after finishing a yeild wich is dumb plus the only reason it works is becouse task.wait or wait returns number greater than 0 wich LuaU considers as true in statements
@@yarik_superpro 'while true task.wait() do' and 'while task.wait() do' are the same, both execute the code after yielding
The scope is not going to yield then check the condition provided in the loop after
task.wait() stops the loop from exploding
can it be used alongside r6 ??
if yes.. damn this is massive!!
11:34
@@Paul1Rb tyyyyssssmmmm i was so worried of it not working because roblox hates R6 lolllll
Thats cool that roblox added this feature, but i have a small question: Does it work on r6?
11:34
Wow this is a awsome update
i tried it in studio but it didn't work
Does the beta feature work on R6?
Not yet, 11:34
i was trying to make an active ragdoll for a very long time, but when a tutorial was published in september roblox made this update.....
Does it work for r6? Because my game is a chaotic r6 game where you explode
11:34
Nahhh I spent like 5 hours creating ragdolls for my game a week ago and they drop this update. Dam 😢
Great😊
Now I really want to see those Fall guys recreations make a use of this.
to be frank, i never get why roblox has CanCollide set to true for the humanoidrootpart, it makes no sense.
For basic character collision
Itz only for r15?
Roblox doesn't care about r6 now :(
Does this work for R6
11:34
how does it look on r6
R6 will be supported in the future 11:34
They added Sause physics?
R6 too?
it doesnt work for me...
Ragdoll engine got implemented into roblox itself
Finally built-in ragdoll
You basically the whole video:
"Oh man this code is so messy!", then relocate a random line of code somewhere else
I'll do it again
@Paul1Rb show em the right code those damn roblox devs
Why is roblox treating studio far better than everything else?
Lmao good question, probably because the platform relies on the community to make games
does it work on r6 tho
11:34
does it work with r6?
no, it says at 11:34 that it doesn't
no
i had to turn captions on just to understand him lol
OMG LETS GOO!!!
WAIT SO I CAN FINALLY MAKE MESH RAGDOLLS??
roblox added a new character option that will never be used
are you french?
Roblox golden age when I stopped playing it too much...
cmon, finish half-blox 2 already, roblox is perfect for it!
I think Roblox are kinda encouraging the Unity and Unreal Game developers to invest making the game on Roblox ☺️😂
Until they're fall inlove to the platform and never comback to their original game engine
And source devs
guess what, i found this video around 10-30 days ago
jiggle phisycs... roblox is officially cooked...
I can’t wait for someone to abuse the ragdolls feature.
people with cpu bottleneck after seeing this:
No way.. roblox actually giving R6 a chance?
Ragdolls without the bugs
SOURCE 3 CONFIRMED?!?!??????????!!??????
This one is really nice thanks!
Yw
roblox fucking ruined the obby glitches such as dance clipping and more😭
The future is now
Finally
OMFG YESSAS
bro WHAT are you saying
Freaking finally
Bing chilling🍦
i think he's french
I'm the first comment
edit: thanks to cacobeffeff
ill delete comment so you can be first because im just a chill guy
In my opinion "comments" just just say "first" etc and no actual context related to the video don't count as comments, just spam 😂
That's so awesome
@@ryleyw3684 You look like you'd do it ngl I watched the whole video. And sometimes I say something about the video. You didn't even have a comment about the video so? Think first before saying this and I really get mad for an opinion that is literally making me go down
@@ryleyw3684 spam is more different than a single comment
I can finally create gta 4 in boblox
cool
gta eurphoria is real
who doesnt love hacky solutions amirite
And Roblox is full of them
14 Hours, Lol!
Hello to new reanimation exploits!
Roblox added.. neck
This is CREJZY
jiggle jiggle
PLEASE R6
WHYYYYYYYY