@ToeTips afaik the distance between the CoL and control surface doesn't matter
Generally, the further away the wing or control surface is from the CoM, the more rotation is produced. Even though the lift is the same, the rotation moment/torque around the CoM is greater.
@ToeTips abs converts negative numbers to positive. It's not a condition statement
Just find some good values that you can replace 90 with at different speeds, try to fit a curve to it, and write it in FT
Build knob with range 0 to 2. Use a variable for the knob position. In this case 0 is stop, 1 is idle/start, 2 is normal. Make sure that as the knob turns, the value changes.
Optionally, you can use a setter to round the knob position value when the knob is not moving. This will provide a notching effect to your knob (I have code for this).
Add a setter for each variable you want to get out of the knob position. You should use the round function in the comparison. Example setters (your variable names may be different:
No, you cannot set variables inside of an input, including label { } inputs. The = operator in FT compares two values. If LeftEngineMode is currently 1, then LeftEngineMode=1 becomes true.
.
If you want to convert a single numeric variable to multiple true/false variables, you must use one variable setter for each new variable. For example:
Setter of LEngIdle is LeftEngineMode=1
Currently, you can't make string variables, but you can make enumerators by choosing a set of values for your variable, like normal is 1, idle is 2, and stop is 3. You can check against each value in the ternary structure like: EngineMode=1 ? ... : (EngineMode=2 ? ... : ...)
Body and animations are very nice
Not sure if I'm doing something wrong (no control list) but engine curve feels extremely peaky, so it's impossible to drive normally. For example, you can't do a second gear start. Also, negative stability on straights.
Finally, needs control list. Like what does UI Slider 2 do?
I have this method that doesn't need storing data
.
Target XYZ world coordinates
Longitude + TargetDistance * sin(TargetHeading)
Altitude + TargetDistance * sin(TargetElevation)
Latitude + TargetDistance * cos(TargetHeading)
.
Target GS (use above FT without the player coordinates components)
sqrt(pow(rate(TargetX),2) + pow(rate(TargetY),2) + pow(rate(TargetZ),2))
.
Also "storing data" is not descriptive enough to get FT help
@SilverStar TargetHeading gives you world space bearing, but not relative to your nose. Instead, use deltaangle(Heading, TargetHeading) to get the angle from Heading to TargetHeading
Add variables and an optional C# format specifier in { } like:
{Fuel ;P1} or {IAS ;F3}
You cannot have a space between the ; and format code. Also, the decimal and hex format codes don't work.
Delta time system (put at top of variable list) DELTA_TIME = Time - PREV_TIME PREV_TIME = Time
.
Fixed point integrator with clamp. The variable inside clamp(...) MUST match the setter name. PITCH_IN = clamp(PITCH_IN + Pitch * DELTA_TIME * MUL, MIN, MAX) MUL: change per second when Pitch=1 MIN, MAX: clamp limits
No you can't
But if the gear design supports it, you may be able to fine nudge/rotate connected parts manually. Very few custom landing gear is built in a way that allows it.
@AltheimManufactorum try to toggle a label's visibility without animations first. Then add an animation timer and multiple levels of opacity. This should help you learn how it's made
There is a tampermonkey userscript for it
If your browser has a builtin dark mode script, you can use it. You might also be able to find a dark mode browser addon.
PreviousAmmo: Set the previous ammo value to the current ammo at the start or when the activator state changed, so the timer isn't restarted in those scenarios.
CannonActivator: Cannon activation variable. Remember to set the cannon activation group to this variable.
CannonActivatorChanged: 1 if the activator state changed, else 0.
AmmoChanged: 0 if the activator state changed. This prevents the timer from restarting. Else, 1 if the ammo changed. Else 0.
PreviousAmmo: Update the "previous" value for the next frame
PreviousCannonActivator: Update the "previous" value for the next frame
TimeSinceAmmoChanged: The variable you can use in a label
@ToeTips afaik the distance between the CoL and control surface doesn't matter
+1Generally, the further away the wing or control surface is from the CoM, the more rotation is produced. Even though the lift is the same, the rotation moment/torque around the CoM is greater.
@ToeTips abs converts negative numbers to positive. It's not a condition statement
+1Just find some good values that you can replace 90 with at different speeds, try to fit a curve to it, and write it in FT
@LunarEclipseSP interesting, maybe i should read it
+1no anime version sadge
@CR929thenewSPplayer the front references AE86 but is curved like AW11, and the rear brake lights are based on R30
+1Try to make a feature one step at a time:
LeftEngStop
isround(LeftEngSelect)=0
LeftEngStartIdle
isround(LeftEngSelect)=1
No, you cannot set variables inside of an input, including label { } inputs. The = operator in FT compares two values. If LeftEngineMode is currently 1, then LeftEngineMode=1 becomes true.
+1.
If you want to convert a single numeric variable to multiple true/false variables, you must use one variable setter for each new variable. For example:
Setter of LEngIdle is LeftEngineMode=1
Currently, you can't make string variables, but you can make enumerators by choosing a set of values for your variable, like normal is 1, idle is 2, and stop is 3. You can check against each value in the ternary structure like:
+1EngineMode=1 ? ... : (EngineMode=2 ? ... : ...)
Body and animations are very nice
+1Not sure if I'm doing something wrong (no control list) but engine curve feels extremely peaky, so it's impossible to drive normally. For example, you can't do a second gear start. Also, negative stability on straights.
Finally, needs control list. Like what does UI Slider 2 do?
@Mustang51 I can't help unless you have a graph of airbrake over AoA
+1@SheriffHackdogMCPE maybe, the trucks and vans are more different than they look though
+1@CR929thenewSPplayer thanks! I'm not Japanese, I researched to make this
+1yeah as long as it's family friendly
+1Makes a step increase in input
+1AngleOfAttack > TRIGGER_VALUE ? 1 : 0
.
AngleOfAttack<LOW | AngleOfAttack>HIGH ? 1 : 0
Only if you have a formula for it
+1If you can express the airbrake input as a formula, it's easy to convert to FT
I have this method that doesn't need storing data
+1.
Target XYZ world coordinates
Longitude + TargetDistance * sin(TargetHeading)
Altitude + TargetDistance * sin(TargetElevation)
Latitude + TargetDistance * cos(TargetHeading)
.
Target GS (use above FT without the player coordinates components)
sqrt(pow(rate(TargetX),2) + pow(rate(TargetY),2) + pow(rate(TargetZ),2))
.
Also "storing data" is not descriptive enough to get FT help
Look at the TextMeshPro reference, try to find those useful functions that can move text around
+1@Quercon i think there are no more races
+1There is the one on the funny racetrack island
+1@Graingy it's either ww2 dogfight enemy, or i made a mistake and downloaded someone's repaint of the p-51
+1@SilverStar TargetHeading gives you world space bearing, but not relative to your nose. Instead, use deltaangle(Heading, TargetHeading) to get the angle from Heading to TargetHeading
+1@Blueshift it's possible to make a mod that replaces the file automatically after the game starts
+1I poked around the tanker spawn stuff
__aiRefuelTanker__.xml
is always refreshed when you start the game@TheTomatoLover ikr
+1Set firingDelay of all bombs to a suitable number
+1Thumbnail sussy
+1Add variables and an optional C# format specifier in { } like:
+1{Fuel ;P1} or {IAS ;F3}
You cannot have a space between the ; and format code. Also, the decimal and hex format codes don't work.
Delta time system (put at top of variable list)
+1DELTA_TIME
=Time - PREV_TIME
PREV_TIME
=Time
.
Fixed point integrator with clamp. The variable inside clamp(...) MUST match the setter name.
PITCH_IN
=clamp(PITCH_IN + Pitch * DELTA_TIME * MUL, MIN, MAX)
MUL
: change per second when Pitch=1MIN
,MAX
: clamp limits60 degrees vertical fov
+1No C# option smh
+1FT is good enough tho
Brake > 0.01 ? 1 : 0
+1@SimpleStudent a laptop or phone that's not too old can run it
+1@Brololxd @MAPA the website isn't by me, from the url i believe it's by 11qazxc
+1@Falkenwut ok, you can rebuild it
+1Usually, you don't have to ask unless you're using others' parts, or making a copy
Nice
+1densha de go but passengers won't fall over
yeah, they should give an option to remove it
+1@phrongus perhaps
+1Someday i will draw things using simpleplanes as 3d reference
No you can't
+1But if the gear design supports it, you may be able to fine nudge/rotate connected parts manually. Very few custom landing gear is built in a way that allows it.
I use a private discord server
+1Or if the picture is previously uploaded to social media, i take the image link from there
There's no real rotor brake other than using prop pitch/collective
+1@AltheimManufactorum try to toggle a label's visibility without animations first. Then add an animation timer and multiple levels of opacity. This should help you learn how it's made
+1@IceCraftGaming @32 i only (want to) draw anime gril so uhhh
+1Pitch + Roll + (IAS>0.3 ? AngleOfAttack/35 : 0)
+1if you have ground AI enabled, convoys will spawn on krakabloa and maywar
+1There is a tampermonkey userscript for it
+1If your browser has a builtin dark mode script, you can use it. You might also be able to find a dark mode browser addon.
@Sterben214
+1You can use
0.5,0.5
and0,0.5,0.5,0
Or use funky trees:
repeat(Time,1)<0.5 and repeat(Time,1)>0.5
I managed to make one
@Harder258 nice
+1Somehow I haven't really noticed it before but titanfall 2 mech anatomy is quite cartoonish (?)
@Birdman9301 you can't change wheel grip
+1@AegisOP lol
+1Wait until it loads, then click new aircraft
Multiply the engine input by some function of AngleOfSlip
+1If you just want a step increase:
Throttle * (abs(AngleOfSlip)>THRESHOLD ? MULTIPLIER : 1)