Make parts not apply forces to each other

I am working on a game that is kinda similar to the Blocks n Props game
I have made a script that autogenerates a tower which is made of objects stacked on top of each other
The problem is that after a while the tower starts to split and cracks start to form because of the objects that are on top compress the lower ones and then the whole tower can even start trembling
I have tried making the objects massless and I have decreased their density as much as possible but the problem is still there
You can also kinda see it in this image:
image

3 Likes

Could you not simply anchor the objects or am I missing something here

1 Like

I didnt mention that there is a player that has to destroy the tower
The tower has to be unanchored so it can be destructible

1 Like

Adjust the collision fidelity of your parts. For complex shapes, setting the collision fidelity to ‘Box’ can simplify the physics calculations and reduce the chances of instability[2]([Improved] How to Actually Improve Performance in Your Games
or constraints

1 Like

but the parts of the tower are not meshparts or unions
Should i turn them into meshes?

1 Like

Pros of converting to meshes:

  • Collision accuracy: Meshes can have more precise collision than some basic building blocks, which can help prevent objects from clipping through each other and causing instability.
  • Potential performance improvements: In some cases, using optimized meshes can be more performant than using many simple parts.

Cons of converting to meshes:

  • Complexity: Converting parts to meshes can add complexity to your project, especially if you have a large number of unique parts.
  • Deformation: Meshes typically can’t deform or break realistically the way some building blocks can.
1 Like

I will try using meshes instead of normal objects and update you if it works

1 Like

ye if it doesnt there some considerations then

1 Like

I think using meshes instead of objects made the problem worse
Now the parts are slightly mispositioned

1 Like

Well. You would need to increase the physics accuracy by increasing the physics FPS, but sadly Roblox doesn’t allow you to do that. The only way would be to make the gravity lower. values between 75-90 should work fine as Roblox default gravity is already very high.

1 Like

Yea when i changed the gravity to a lower value i did not have that problem but i dont want to make everything else also have low gravity
Is it possible to make the gravity lower for some specific objects
and also if it is i dont want the parts to fall in low gravity

1 Like

But the default gravity is already high. A gravity around 90 looks more realistic. Just the Roblox Character physics wasn’t made for it. You could add a VectorForce pointing downward to every part of Roblox Character to make it have higher gravity. But if you really want to stick to the Roblox’s default one, you could check if there is a part under a part, and if there is, you could make a VectorForce for this part pointing upwards, which will fight with the gravity making it look like it has less gravity (which means more stability), and if there is nothing under the part, then you can disable the VectorForce.

1 Like

You could create an AlignPosition for each pair of touching parts. Then try to find such a MaxForce that the building doesn’t break by itself but can still be broken by the player.

2 Likes