Terrain Water Breakage: CollisionGroups & Buoyancy

As of today it appears that parts that do not collide with the Default CollisionGroup no longer float. It used to be the case that if a part was in a CollisionGroup that didn’t collide with the default CollisionGroup that it would still float.

image

This was previously used in my game SharkBite to allow for larger boat floats that wouldn’t collide with anything else in the game, therefore keeping the boat upright. Now our Titanic is ironically sinking.

image

There also seems to be a smaller change to water Buoyancy, I’m finding it hard to describe the problem or what is happening exactly. It seems that parts don’t float to the surface as easily as they used to. Our Sharks made of MeshParts used to happily skim across the surface of the water, now they seem to bounce up and down a little more and sink. One of our larger sharks sinks instead of floating.

If there were intentional changes to how water behaves it is vital that developers are informed so we can test and prepare games before updates go live.

I imagine this is just a side effect of a change to CollisionGroups

5 Likes

The change has been reverted.
The intention with was to fix a couple related bugs where parts would collide with water when they shouldn’t.

First, water did not work with collision groups. By setting a part to not collide with terrain via collision groups, it would still collide with water. This was undesirable for other devs, and meant you couldn’t use collision groups to ignore water at all. Obviously in your case this bug worked in your favor, so maybe we should find another solution to this. (Note: the Default group isn’t related to this, you just had Terrain set to the Default group). I am curious, how did your boats handle running into the ground terrain? Wouldn’t they fall through?

The other fix was for a less noticeable bug where a part set to canCollide=false could still collide with water if it listening for a touch event. Maybe you had some non-colliding part that was contributing to the buoyancy of sharks even though it shouldn’t have been. Let me know if that seems like the case, if not I’ll want to take a closer look at the sharks.

Thanks!

3 Likes

Thank you for the update and the revert.

Luckily for our use case the invisible ‘floats’ never needed to interact with anything apart from water, all islands are surrounded by invisible barriers. So the use case of the floats only being able to collide with terrain and not Parts was incredibly useful. I wasn’t aware until now that it would only collide with the water and not grass.

I also wasn’t aware that Terrain could have its collision group changed. The best solution to this might come from the developer’s side, your bug fix makes sense. I’ll try giving terrain its own CollisionGroup and setting the floats to only collide with terrain. I’ll get back to you with results.

As for the CanCollide bug that explains some issues with our sharks not floating as before. We have some larger invisible parts around the mouth detecting if a player has been bitten. Again this fix makes sense and we weren’t aware of the bug.

I want to work quickly this week to try and resolve these two issues in our game, I’ll get back to you when they’re both resolved and hopefully the Roblox update can be introduced again.

Oh ok neat, so it sounds like you just need to assign Terrain to a new group, and set Balasts to not collide with Default, but still collide with Terrain? (going off your first image)

Yup! That’s hopefully the case and Sharks will just need their density values re-balanced to account for the loss of buoyancy from CanCollide False Touch parts.

1 Like

Is there any chance a flag for this update could be turned on for this place so I can test any fixes?
https://www.roblox.com/games/913438182/SharkBite-Development-Branch

@kleptonaut Would it be possible to ask for a specific time that the update will occur? I can’t push a fixed version to SharkBite until the update occurs so want to be prepared when it happens.
Thanks!

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.