My suggestion is straight from the C++ guidelines by Bjarne Stroustrup and Herb Sutter (ES.102: Use signed types for arithmetic), for reasons that you don't seem to grasp.
I would suggest to never use unsigned int for values that will involve any sort of calculations on them (health, damage, speed). This is considered bad practice due to overflow and should be avoided, with the exception of values that are used for UIDs, indexes, bitfields, mask and flags.
By "dual input system" I was referring to the fact that both pilots can apply input into their sticks or trim wheels simultaneously resulting into inputs cancelling each other out or de-synchronizing.
I don't want to minimize pilot errors but I can't stop thinking this dual inputs system easily ranks in the top 5 of the worst design ideas in history.