How to check if a model has been separated into multiple parts?

Given a weld constraint graph:

How can I tell if it has been separated like so?

The goal is to achieve something a mechanic similar to the armored patrol damage system where parts disconnected from the nondestroyable root part goes away as debris:

I believe it’s been done before not only in armored patrol but in other voxel destruction based games like Ace of Spades and Robocraft but I can’t find anything scripting/methodology related in order to achieve it, did they recursively check it from joint to joint? or something like that I just can’t visualize it currently.

Can anyone with more experience on the subject help me, please?

Have you tried BasePart:GetConnectedParts()

3 Likes

Oh wow, I didn’t saw the recursive bool option in the function… that’ll help a lot for the destruction part to check the non-destroyable root part thanks a lot.

1 Like