The units are a 32 bit integer (0 to 4294967295) which represent 0 to 360 degrees. To set a 45 degree angle, for example, set the value to 4294967295 / 8.

  1. int32 max size is 2147483647 so it must mean -2147483647 to +2147483647

so I made a slider control with that range … and when it changes (value) I trigger

TransmitEvent(EventEnum.KEY_TUG_HEADING, iValue);

and it sort of works, but isn’t going to the heading, seems to be relative to the starting position of the spawn …

so I can make heading from SOUTH through EAST to NORTH , but not to 359 and to WEST

BUT , if I swing the slider in the opposite direction (that I started) it crosses 0 to 359 etc.

I don’t understand what it is doing … the heading must be passing through a direction that then needs negative number to continue the turn.

any help or examples greatly appreciated

(I can divide the iValue by 5,965,232.35 to get the range within +360 and -360

also 2147483647 / 16 does turn 90 degrees but the other (multiple) divisors don’t produce the expected result

2147483647 / 48 turns 90 degrees the other direction

I solved it by brute force … I turned the aircraft in a 360 degree turn and captured all the TUG HEADING values…
then I shift them all to match the original direction and it works … have to make adjustment at the 2147483647 value as it wraps around -2147483647 etc.