Is there a way to use the Layer/Mask functions of [physics.2.0] on other objects?

tldr: Looking for a way to make objects solid for certain characters and not solid for other characters at the same time.

I need to create platforms that are solid for some player controlled characters at the SAME Time as being NOT solid for other player controlled characters (so I cannot simply turn on/off the platform Behavior).

The layer/mask feature of the Physics2.0 behavior seems to be what I need but comes with a large amount physics controls that are unnecessary for this project.

Has someone found a way to get the same Layer/Mask abilities without the physics behavior? Or do people have ideas for other ways to accomplish this same goal?

or does anyone know how to open the pre-packaged behaviors in the functions/behaviors editor screens in gdevelop and I can work backwards from there?

Have you tried turning off the platformer behavior?

IIRC Digital mentioned in discord that both characters can be controlled at same time (something like Fireboy and Watergirl I guess), so disabling will cause one of them to kinda… stop.

It did give me another idea though so thanks.
Digital, continuing from the “jumpthru platform” idea on discord, how about instead making a platform that moves around to be the same X position as the player that can stand on the platform? It’ll be really small just so the platformer character that can stand on it, can stand on it.

As an addition, when the other player (which will fall straight thru the platform) touches the exact same moving platform, move them a few Y coordinates down like usual, then set them to jumping animation and disable jumping again.

To be honest, at some point you may need to create your own platforming code, if you got what I meant and still feeling it’s not good enough.

I made a PR for adding that a few days ago, but 4ian refused it as it used IDs (for knowing Wich platform is ignored) Wich is a dirty behavior.

that’s interesting, can I know why it’s considered “dirty”? I don’t know that much about javascript development yet.

Quote from 4ian:

Risks of overflow, risk of IDs reused, if you delete a platform you still have its ID polluting the “ignored platform” array of all the behaviors that used to ignore it, if you create a new platform and for some reason reuse an ID, you now have a bug, etc…

1 Like