Gravity does not work well with logic. Whether entering, leaving, switching, or just about anything else, it's a wreck. Here are a few problems I've encountered:
An example of a problem I've been dealing with:
I built a high speed elevator on a space station using several levels of "telescoping" rails (a rail moving on a rail moving on a rail moving on a rail etc. to make it go faster in addition to speed controllers because speed controllers are too weak). The high speed requires the elevator to have its own gravity, and I HATE pressing the gravity every time I get on or off. Activating the gravity when the elevator moves does not allow multiple people on the elevator at a time, so it it not an acceptable solution.
I set up a system that (theoretically) should work fine as long as the player is in the station's gravity beforehand. A set of area triggers surrounds the elevator. When someone walks onto the elevator platform, they walk through a trigger that shuts off the station gravity and one that turns on the elevator gravity, and vice versa for walking off of the platform.
It doesn't work. Half the time one or the other doesn't trigger, leaving the player out of gravity. If the player steps on the elevator activation trigger while out of gravity, the elevator will drop away or phase through the player. In either case, the player is left behind.
I tried covering the entire elevator platform with area triggers, but this just results in the gravity switching off if the player moves around at all. There's not a single reliable way to accomplish gravity switching or enforcement.
- Gravity only toggles. Since the signal cannot go through any gates, this is woefully insufficient for any kind of decent control.
- Area triggers are horrifyingly unreliable. I don't know why they work so badly with even the tiniest bit of lag! If you're trying to enforce a gravity switch on a boundary between areas or vehicles, they are terribly ineffective. The same goes for step triggers.
- THERE. IS. NO. reliable way to enforce gravity activation, deactivation, or switching.
- "Enter gravity trigger" - invisible block that causes a player to enter gravity.
- "Leave gravity trigger" - invisible block that causes a player to leave gravity.
- Optional (and mostly useless): "Toggle gravity trigger" - toggles gravity on or off when a player touches it.
An example of a problem I've been dealing with:
I built a high speed elevator on a space station using several levels of "telescoping" rails (a rail moving on a rail moving on a rail moving on a rail etc. to make it go faster in addition to speed controllers because speed controllers are too weak). The high speed requires the elevator to have its own gravity, and I HATE pressing the gravity every time I get on or off. Activating the gravity when the elevator moves does not allow multiple people on the elevator at a time, so it it not an acceptable solution.
I set up a system that (theoretically) should work fine as long as the player is in the station's gravity beforehand. A set of area triggers surrounds the elevator. When someone walks onto the elevator platform, they walk through a trigger that shuts off the station gravity and one that turns on the elevator gravity, and vice versa for walking off of the platform.
It doesn't work. Half the time one or the other doesn't trigger, leaving the player out of gravity. If the player steps on the elevator activation trigger while out of gravity, the elevator will drop away or phase through the player. In either case, the player is left behind.
I tried covering the entire elevator platform with area triggers, but this just results in the gravity switching off if the player moves around at all. There's not a single reliable way to accomplish gravity switching or enforcement.
Last edited: