[Suggestion] Accessibility option for trick controls
While tricks not executing as soon as a turn/look button is pressed is welcome for some, I feel like the game wasn't originally designed with this control scheme in mind, and it feels weird having to release acceleration before holding it again just to perform a trick.
I'm thinking that there could be an accessibilty option to cycle through different behaviors for it. I'm thinking of the following:
-
Immediate
: Trick is executed as soon as a direction is pressed. This used to be the trick behavior in2.1
and earlier. -
While accelerating
: Trick can only be executed if acceleration is being held. -
While not accelerating
: The opposite of the previous option. -
Latched
: Trick can only be executed if acceleration is being held, but it can't be the same held button prior to the trick. This is the default behavior since2.2
.
Personally, since acceleration is used to move forwards, I feel it is significantly more intuitive for the common player to have to release it to be able to turn in the air. While accelerating
sounds like a more natural mechanic to me, being the middle ground between what it used to be and what it is now.
The While not accelerating
one was not exactly thought out in full. I figured that since some accesibility options translate into player flags, there would be one remaining permutation available in a potential 2-bit setting. So, hey, here's a fourth.
Thinking about it a bit further, it's just as intuitive as the opposite version. It might prevent players from accidentally executing a trick due to holding acceleration just as with the current scheme, but this one just requires releasing acceleration to perform a trick instead of releasing and pressing it again.
There's also a separate problem regarding accesibility options and storage thereof - Adding more accesibility options is now troublesome due to there being no more available bits for player flags! I believe that accesibility flags should exist in their own player field instead of being smuggled in pflags
. But that's something for a different issue.