Bool BasePart.IsDebris

Probably needs a better name, since this implies a relation to the debris service.

A part with this set to true would not be able to physically affect humanoids. If it’s on top of the humanoid, they can still jump as usual and it be tossed up in the air. If it’s in front of them, they just kick it forward (they don’t step up onto it). If they land on it, it gets pushed out from under the humanoid.

Currently if you want to have a cool affect like a building blowing up and debris flying everywhere, you have to be very careful with it to avoid having your characters get stuck under the debris, having their path blocked off, etc… No one likes getting stuck under debris or having their path blocked off, and this is the solution I’m proposing.

This almost sounds like a whole nother class in general.

I would prefer it not be. Seems like an unnecessary complication to me.

Physically it doesnt really act as a BasePart anymore

It acts normally when interacting with anything except a humanoid. Maybe I explained it poorly, this behavior would only take place when a humanoid tries to interact with a part where the part’s IsDebris is true.

Another thing I would like is Debris:AddTimeToItem(Object, time)

explosion.Hit:connect(function(part, distance)
  if part.Anchored or game.Players:GetPlayerFromCharacter(part.Parent) then
  part.CanCollide = false

[quote] explosion.Hit:connect(function(part, distance) if part.Anchored or game.Players:GetPlayerFromCharacter(part.Parent) then return end part.CanCollide = false end) [/quote]

You misunderstand the goal. The goal is to allow humanoids to move freely throughout the debris parts. The debris parts would act as expected when they hit non-humanoid parts.

You solution prevents blockades and stuck players, but it sacrifices the atmosphere by allowing the parts to just fall through the ground. What’s even the point of making parts fly everywhere in an awesome way if they just go through walls and ruin the immersion?

So you want really light-weight parts?

In a sense, kinda. I want parts that can’t physically act on humanoids, but the humanoids can physically act on them. It would allow humanoids to easily break through any barricades caused by non-choreographed debris in a level.

I feel that this is an overly specific feature with a very niche use. You want blocks to behave in a weird way that defies physics so humanoids can push them around.

This should be achievable using a BodyForce object to reduce the gravity of a part, so that it doesn’t apply so much force against humanoids it may touch. You might also need to tweak the friction and elasticity of parts to make them slide around more easily, if that’s what you’re trying to achieve.

I disagree about it being niche. Plenty of games have debris flying around and blockades, while they don’t happen often, are still a problem that should have a solution.

This isn’t achievable with bodymovers because humanoids would still be able to stand on the parts, which they shouldn’t. The humanoid should be behaving as though the parts aren’t even there.

I suppose if you want to have more support for something like this, you’ll need more cases where it’ll be useful.

For example, if we wanted to make a physic’s based machine or something and didn’t want anyone to be able to stand on the machine to stop it, this would be a good use for it.
Can still interact with other parts, but not humanoids.

Could also be used for NPCs and Enemies.
Even other Humanoids/Players to prevent people from blocking paths and such.

From there though, Im not sure where the uses would be. I’m sure there are a few others.