Hello everyone, I hope you’re doing well.
I’m opening this topic to request a new feature for the Platformer behavior: an inverse gravity option similar to what can be seen in some Mega Man games.
This feature would allow the gravity direction to be reversed while still working correctly with diagonal platforms. Ideally, it could be implemented in two possible ways:
- As a built-in option – Adding a checkbox in the Platformer behavior settings for a given sprite to enable/disable inverse gravity.
- As an extension – Allowing developers to trigger inverse gravity when a certain condition is met, without requiring manual adjustments each time.
In addition, it should be possible to switch gravity by inverting jump values from positive to negative, provided this can be done in an action that is continuously active rather than only once. This is important for platform games where gravity changes frequently between low, normal, and high settings—similar to how it works in various Mega Man stages.
The goal is to let developers reverse gravity via a key press, a timed interval, a collision event, or other triggers, regardless of whether the player is on the ground or in mid-air.
Currently, GDevelop does not provide native inverse gravity for the Platformer behavior. If you try to change gravity values from positive to negative in events, the player moves upward but cannot jump while on the ceiling. At some point, the player may even shoot upwards through collisions. Also, when reversing jump values, the change only takes effect after touching the ground, which defeats the purpose of having gravity changes in mid-air.
I’m aware of the existing Flip Gravity extension made by VegeTato, but it has several limitations:
- It only works as a one-time action, making constant gravity switching difficult or impossible.
- Jumping feels imprecise compared to the default jump.
- It depends on a specific key press to work, and modifications to trigger it via collisions or automated events don’t function correctly.
- It only works with backdrops and not with tilemaps for some reason.
- It does not support diagonal platforms, even if the maximum slope angle is modified.
- If activated in mid-air, it works only once instead of allowing multiple activations as needed in games with frequent gravity changes.
For reference, I’ve attached a GIF from the Mega Man engine by N64Mario made in Multimedia Fusion, which demonstrates the kind of inverse gravity I’m requesting (including collisions, diagonal platforms, and key activation). Another good example can be seen in Mega Man 5, specifically in Gravity Man’s stage, where gravity is reversed by collision triggers, and during the boss fight, gravity changes at intervals.
I hope this request will be considered for future versions of GDevelop.
Thank you.







