[Update] February 27, 2024
Hey Creators,
As part of our ongoing efforts to improve and enhance the development experience on Roblox, I want to bring your attention to an upcoming change that might impact your experiences.
What We’re Doing:
We are adjusting the allowable minimum part density from the current value of 0.01 to a new value of 0.0001, which may impact user experience.
Why We’re Making This Change:
Our goal is to empower you to fully leverage the new air buoyancy feature. This adjustment will make it possible to create exciting experiences involving lighter-than-air parts, such as balloons, for aerodynamics-enabled gameplay. Currently, the default air density is set to 0.00129, making it impossible to create fully air buoyant parts with a minimum part density of 0.01. With this change, we aim to reduce the minimum part density to work with the current default air density value.
Who This Impacts:
This change will affect those who set any part density to a value less than 0.01 within a script. Currently, values below 0.01 are clamped to 0.01, but with the proposed adjustment, these values will be set between 0.01 and 0.0001 depending on the value used within your script(s).
For example, if you currently have a part’s density set to 0 within a script, then this change will make it so that the density of that part changes from 0.01 to 0.0001, the new minimum part density. However, if you currently have a part’s density set to 0.001 within a script, then this change will make it so that the density of that part changes from 0.01 to 0.001.
Why Should You Care?
If your experience is setting the density of any part to a value lower than 0.01, then this change will cause a change in user experience. For example, if you currently have the density of any part set to 0, then this change will make that part start floating since its density will change from 0.01 to 0.0001, where 0.0001 is lighter than the density of air (0.00129).
When Will This Change be Made:
This change will go live on February 26. Please ensure that you’ve checked your experiences and made any changes needed by then.
Best Practices for a Seamless Transition:
To ensure a smooth transition, we recommend you update your scripts to specify explicit density values within the current allowable bounds. This proactive approach will prevent inadvertent clamping of values during runtime.
It’s a good practice to future-proof your game’s behavior, considering that both minimum and maximum bounds for different physical properties may evolve over time as the fidelity and realism of our physics engine advances. For most creators, setting the density of any clamped parts to 0.01 is the correct fix, aligning with the current minimum density.
Known issues:
If your experience utilizes any Chassis from the toolbox (particularly any A-Chassis) and hasn’t undergone this fix in the associated scripts, you might encounter issues. We encourage you to address this to ensure the continued smooth operation of your experiences.
In the case of the A-Chassis models, we’ve found that most of these models set the Density to 0 via CustomPhysicalProperties under an “Initialize” script found under the ModuleScript “A-Chassis Tune”.
Please note that some A-Chassis models set the density to a value lower than 0.01 in multiple locations and scripts.
We recommend you comb through all your scripts using the Find All function (Command + Shift + F / CTRL + Shift + F) and look for “PhysicalProperties.new” to ensure that all new PhysicalProperties instances set valid density values (first value should be ≥ 0.01).
This “Find All + PhysicalProperties.new” technique should work for all models.
Resources
For more information, please check out the following documentation:
We appreciate your understanding and cooperation as we work together to enhance the Roblox development platform. Feel free to share your thoughts, questions, or suggestions in this thread. Your feedback is invaluable to us!
Happy coding!
M0bsterLobster