feat(flight): enhance flight model with transonic drag and vortex lift features

This commit is contained in:
richard committed 2026-10-28 23:14:37 +01:00
1 parent 599ecae21f
commit 44a5f7f9bc
12 files changed
+177 -26

No files matched your search

@@ -92,6 +92,37 @@ public final class Config {
"with lift, so this only costs speed. Wings use Warium's 1.0, which also stands in for fuselage drag")
.defineInRange("stabilizerDrag", 0.2D, 0.0D, 2.0D);
public static final ForgeConfigSpec.BooleanValue TRANSONIC_DRAG = BUILDER
.comment("Improved flight model: zero-lift drag rises steeply around the speed of sound, so craft can no longer",
"cruise supersonic without a lot of thrust or a clean shape. Induced and stall drag are not affected")
.define("transonicDrag", true);
public static final ForgeConfigSpec.DoubleValue SPEED_OF_SOUND = BUILDER
.comment("Improved flight model: speed of sound in blocks per second, Mach 1 for the transonic drag")
.defineInRange("speedOfSound", 100.0D, 10.0D, 1000.0D);
public static final ForgeConfigSpec.DoubleValue TRANSONIC_PEAK_DRAG = BUILDER
.comment("Improved flight model: multiplier for zero-lift drag at its peak, at Mach 1.05")
.defineInRange("transonicPeakDrag", 4.0D, 1.0D, 20.0D);
public static final ForgeConfigSpec.DoubleValue SUPERSONIC_DRAG = BUILDER
.comment("Improved flight model: multiplier for zero-lift drag once fully supersonic, from Mach 1.3")
.defineInRange("supersonicDrag", 2.0D, 1.0D, 20.0D);
public static final ForgeConfigSpec.BooleanValue VORTEX_LIFT = BUILDER
.comment("Improved flight model: wings with a low aspect ratio (delta wings) stall later and get extra lift at",
"high angles of attack from leading-edge vortices. Wings with an aspect ratio of 3 or more are not affected")
.define("vortexLift", true);
public static final ForgeConfigSpec.DoubleValue VORTEX_STALL_BONUS = BUILDER
.comment("Improved flight model: extra stall angle of the lowest aspect ratio wings (1 or less) as a fraction of",
"the normal stall angle, 1.0 doubles it, for example from 16 to 32 degrees")
.defineInRange("vortexStallBonus", 1.0D, 0.0D, 3.0D);
public static final ForgeConfigSpec.DoubleValue VORTEX_LIFT_STRENGTH = BUILDER
.comment("Improved flight model: multiplier for the extra lift the vortices make at high angles of attack")
.defineInRange("vortexLiftStrength", 1.0D, 0.0D, 3.0D);
public static final ForgeConfigSpec.DoubleValue TRIM_AUTHORITY = BUILDER
.comment("Auto trim: largest pitch input (fraction of full deflection) the trim may hold")
.defineInRange("trimAuthority", 0.5D, 0.0D, 1.0D);