Jump engine mechanics - Angel-125/Blueshift GitHub Wiki

๐Ÿš€ Jump Engine Mechanics โ€“ Overview (WIP)

๐Ÿ”ง Core Concept

๐ŸŒ€ Jump Drives generate short-lived wormholes that instantaneously transport a vessel across space.
They are portable, high-efficiency FTL systems that balance low Graviolium cost with strict operational constraints.

Unlike Warp Drives, which allow continuous travel, or Gates, which are fixed, Jump Drives offer burst-point FTL with risks and tradeoffs.


๐Ÿ•น๏ธ Gameplay Mechanics

Jump Drives operate based on a set of core physical and navigational rules that make jump planning both strategic and cinematic.

  • ๐Ÿ“ก Linear Jump ("Jumpline")
    ๐Ÿ“ When performing a jump, the vessel travels along a straight line โ€” called the Jumpline โ€” up to its maximum jump range.
    โŒ Obstacles WILL block travel, and drift effects apply.
    ๐Ÿงญ Vessels retain their velocity vector after performing the jump- except when grabbed by a Jump Beacon.

  • ๐Ÿ”„ Orbital Jump
    ๐Ÿ“ This is also linear travel, but the vessel ends up in a stable orbit of the targeted celestial body if it is in range.
    โŒ Obstacles WILL block travel, and drift effects apply.
    ๐ŸŒŒ Conservation of gravity must be observed when performing a jump. This will affect the destination orbit.
    ๐Ÿ”ง The vessel's velocity vector will be adjusted to achieve the stable orbit.
    ๐Ÿ’ฐ Cost is increased to make a stable orbit compared to Linear Travel.


  • To enable Orbital Jump, simply target a celestial body. To enable Linear Jump, don't select a target.
  • If linear travel intersects the SOI of a planet or moon, and jumping to planets and moons isn't allowed, then the jump won't activate.
  • If the vessel targets a planet or moon, and jumping to planets and moons isn't allowed, then the jump won't activate.
  • Targeting a Jump Beacon is always allowed.

  • ๐ŸŽš๏ธ Adjustable Jump Range
    A slider (1โ€“100%) lets the player adjust jump distance, allowing for partial-range jumps.

    • Lower percentage = lower ElectricCharge and Graviolium cost
    • Useful for precision insertions or conserving fuel
  • ๐Ÿงฒ Jump Beacon Integration
    If a Jump Beacon is located within a 20โ€“30ยฐ cone along the Jumpline and is within maximum jump range, then the vessel will lock to and arrive at the beaconโ€™s location, overriding manual target and/or distance input.

  • ๐Ÿงญ Velocity Conservation
    During Linear Travel, a ship conserves its velocity vector relative to the source star โ€” maintaining momentum and direction โ€” except when jumping to a Jump Beacon, where the vessel does an orbital rendezvous with the Jump Beacon like what happens with Jump Gates.

  • ๐Ÿ™ˆ Blind Jumps
    If the vessel loses its selected celestial body or Jump Beacon during engine warmup, or the target becomes occluded, then the ship will make a random jump, called a Blind Jump - up to its maximum jump range.

    • Velocity is conserved during the jump.
    • There's an increased chance of a mis-jump when performing a blind jump.
    • The ship can still be snared by a Jump Beacon if the blind jump would leave the ship within range.
  • ๐ŸŒŒ Gravity Consideration (Open Question)
    ๐Ÿšง This mechanic is under evaluation and may depend on player feedback or difficulty settings. ๐Ÿšง
    For Orbital Travel, should gravity be conserved?
    This would affect:

    • Arrival speed near massive bodies
    • Post-jump orbital shape and correction burns
    • Engines are rated for their maximum gravity level.
      • The gravity at the current location, plus the gravity at the destination, must match the engine's rating.
      • Ex: The ship is in a heavy gravity well, and is rated for 1g. It jumps where the gravity is at 0.9g, so its destination orbit must have a gravity level of 0.1g.
      • Put another way, the further away from the current star that the ship jumps away from, the closer to the star the ship can reach.

๐ŸŽฎ Gameplay Impact

Feature Gameplay Effect
โšก Fast Travel Instant transit between stars โ€” no slow buildup like warp
โ›ฝ Efficient Cost ~275 Graviolium/ton/ly โ€” cheaper than Warp, balanced by limitations
๐Ÿ”‹ Charge-Up Time Requires several seconds of uninterrupted power-up before jumping
โŒ Can Be Interrupted Jump fails if engines are damaged or disrupted during charge-up
๐Ÿ›ฐ๏ธ Cannot Target Moons/Planets Must arrive in high stellar orbit and spiral down
๐Ÿ”„ Accuracy Degrades with Distance Long-range jumps suffer from vector drift (Galactica-style)
๐Ÿงญ Beacons or Astrogators Improve Accuracy Precision tools reduce drift and improve jump targeting
๐Ÿงฒ Line-of-Sight Required Must have clear trajectory to destination โ€” cannot jump from occluded or buried positions
โณ Cooldown After Jump Prevents immediate re-jump; encourages commitment to destinations
๐Ÿ‘จโ€๐Ÿš€ Crew Skill Matters Jump-capable ships benefit from trained navigators (Scientists) or special crew traits

๐Ÿ’ฅ Mis-Jump Mechanics

Under certain risky conditions โ€” such as planetary targeting, occluded jumps, or high jump drift โ€” the Jump Drive system may experience a mis-jump. This is a form of controlled failure, adding tension and consequence to aggressive jump usage.

โš ๏ธ Trigger Conditions

Mis-jumps can occur when:

  • The vessel performs a jump with a high jumpRiskMultiplier
  • Jumping to a planet or moon without a beacon
  • Jumping through occlusion or gravitational interference
  • Jumping while damaged or overcharged
  • Performing a blind jump guarantees a mis-jump

๐Ÿ’ฃ Possible Mis-Jump Effects

Type Description
โŒ Jump Failure The jump aborts at the last moment; ElectricCharge is lost, and cooldown still applies
๐Ÿ“ Arrival Offset The vessel arrives far from the target โ€” sometimes thousands of kilometers off
โšก System Damage The jump engine or nearby parts take heat, damage, or temporary failure
๐ŸงŠ Graviolium Discharge A portion of Graviolium is lost due to unstable discharge or containment breach
๐ŸŽฒ Randomized Drift Overrides standard drift with a large offset in a random direction (even backward)

๐Ÿ”Š Warning Messages (Optional UI Feedback)

  • "โš ๏ธ Jump Field Instability Detected โ€” Attempting Correction..."
  • "โš ๏ธ Mis-jump Risk Exceeds Safe Threshold!"
  • "โ€ผ๏ธ Jump Solution Degraded โ€” Emergency Vector Calculated"

๐Ÿ› ๏ธ Mitigation Tools

  • ๐Ÿ›ฐ๏ธ Jump Beacons: Lock vector, eliminate drift and reduce risk
  • ๐Ÿง  Astrogation Computers: Lower the jumpRiskMultiplier
  • ๐Ÿ‘ฉโ€๐Ÿš€ Trained Crew: May apply a passive bonus to reduce failure probability
  • ๐Ÿšฆ Abort Window: If implemented, allow the player to cancel the jump during charge-up

๐Ÿ“š Lore Hook

"Phase instability grows with every variable you fail to control.
The deeper the gravity well, the darker the outcome if you miscalculate.
Most ships reappear. Some... don't."


๐Ÿ“š Jump Drive in Context

FTL Method Grav Cost/ton/ly Portability Precision Setup
Warp Drive 1750 โœ… Mobile โœ… High โš™๏ธ Complex
Jump Drive 275 โœ… Mobile โš ๏ธ Variable (drift) ๐Ÿ”‹ Charge-up
Player-Built Gate 300 โŒ Fixed* โœ… High ๐Ÿงฑ Manual deployment
Alien Gate 250 โŒ Fixed* โœ… High ๐Ÿงญ Must be discovered
  • Technically mobile, but not easily

๐Ÿง  Strategic Role

Jump Drives are ideal for:

  • Frontier expeditions to uncharted stars
  • Emergency jumps to retreat or escape
  • Bridge ships that support beacon placement

They are not ideal for:

  • Combat repositioning
  • Precise orbital insertion
  • Rapid multi-hop navigation

๐Ÿ“– Lore Hook: โ€œRide the Resonanceโ€

The jump drive forms wormholes โ€” momentarily, unpredictably.
For a few seconds, your ship becomes a whisper in a storm of mass and momentum.
Thatโ€™s why you never jump blindโ€ฆ unless youโ€™re ready to miss the target by a star system.

โœ… Locked-In Balance Features for Jump Tech

Mechanic Summary
โณ Cooldown based on cost Prevents chain-jumping; enforces pacing between jumps
๐Ÿงฒ Line-of-sight required Blocks "blind jumps" from inside atmospheres or behind massive bodies
โš ๏ธ Charge-up can be interrupted Adds risk in combat or high-turbulence zones โ€” jump prep is fragile
๐Ÿงฌ Requires skilled crew or Astrogator Encourages crew specialization and tech progression
๐ŸŒ Cannot jump directly to moons/planets Jumps target stellar orbits only โ€” requires post-jump maneuvering
๐Ÿ”„ Jump drift (Galactica-style) Long-range jumps cause accuracy loss โ€” may miss target by km or AU

๐Ÿ“ Note for Single-Star Systems

In installations where only one star exists (e.g., the stock Kerbolar system), Jump Drives will adapt their behavior to remain useful:

  • In-system stellar orbit jumps are enabled
  • Jump Beacons can be deployed to create anchor points
  • Planetary orbit jumps are allowed, but may introduce drift or risk penalties

This fallback mode ensures Jump Drives remain viable even before interstellar exploration is unlocked.


๐Ÿ“– Lore: Field Instability and Phase Reversion

Jump engines rely on creating a brief resonance inversion across the vessel's mass geometry.
The farther the jump, the harder it is to maintain waveform coherence across the jump bubble.

Even minor deviations in field stability result in vector drift โ€” often measured in kilometers or more.
While navigational computers attempt compensation, only quantum-linked Astrogators or Jump Beacons can guarantee precise arrival.


๐Ÿ”ง Jump Engine Models

Feature โš™๏ธ S1/Mk2 "Rigel" Jump Engine ๐Ÿ”ง S2 "Altair" Jump Engine ๐Ÿš€ S3/Mk3 "Deneb" Jump Engine ๐Ÿšง MW-5 โ€œProtostarโ€ Jump Engine
๐Ÿง  Tech Tree Node Miniature Jump Tech Miniature Jump Tech Jump Technologies Gravity Wave Applications
โšก Charge Time ๐Ÿข Slowest โณ Slower โšก Fastest ๐Ÿข Very slow (even with ample power)
๐Ÿ”‹ ElectricCharge Requirement ๐Ÿ”‹ Very Low ๐Ÿ”‹๐Ÿ”‹ Low ๐Ÿ”‹๐Ÿ”‹๐Ÿ”‹ High โš ๏ธ Extreme
๐Ÿ“ Jump Range ๐Ÿ“ Very Short ๐Ÿ“ Short ๐ŸŒŒ Long ๐Ÿ“ Short to Medium (inefficient field geometry)
๐Ÿ” Cooldown Duration ๐Ÿ” Very Short ๐Ÿ” Short ๐Ÿ•’ Long ๐Ÿ•’ Longest
๐Ÿงญ Min Jump Distance ๐Ÿš€ Extremely short ๐Ÿš€ Very small โ›” Cannot jump short distances โ›” Cannot jump under 30% range (field instability)
๐Ÿชจ Gravity Tolerance ๐Ÿชจ High (works near planets) ๐Ÿชจ High ๐Ÿšซ Lower (needs high orbit) ๐Ÿชจ Surprisingly High (designed before proper field theory)
๐ŸŽฏ Drift Without Beacon ๐ŸŽฏ Low ๐ŸŽฏ Low ๐Ÿ“ก High ๐Ÿ’ซ High โ€” must be stabilized with beacon or Astrogator
๐Ÿ’ฅ Failure Severity โš ๏ธ Minimal โš ๏ธ Manageable ๐Ÿ’ฃ Dangerous ๐Ÿ’ฃ๐Ÿ’ฅ Extremely dangerous โ€” may damage ship or glitch jump vector
๐Ÿ›ฐ๏ธ Planetary Orbit Jumps โœ… Allowed โœ… Allowed โŒ Not allowed โŒ Not allowed

๐Ÿ“š Jump Engine Class Lore

  • โš™๏ธ S1/Mk2 "Rigel" Jump Engine
    The smallest and safest jump drive available. Designed for short tactical hops and probes.
    Low power requirements and extremely forgiving โ€” but very limited in range and capacity.

  • ๐Ÿ”ง S2 "Altair" Jump Engine
    A general-purpose system for system-wide navigation. Offers solid performance without excessive risk.
    Can be integrated into mid-sized vessels and benefits from Jump Beacon support.

  • ๐Ÿš€ S3/Mk3 "Deneb" Jump Engine
    Heavy-duty interstellar jump core. Offers unmatched range and charge rate,
    but suffers in planetary environments and is highly dependent on support infrastructure.
    Misuse can lead to catastrophic mis-jumps. Requires high orbit and proper field stabilization.

  • ๐Ÿšง MW-5 โ€œProtostarโ€ Jump Engine One of the only early models that workedโ€ฆ barely. It survived just long enough to get real data. Other prototypes? Disintegrated or disappeared.
    Before quantum field compression was understood, jump engineers tried to brute-force mass into alternate states.
    Consumes Graviolium inefficiently, requiring over 1.5ร— the cost of modern S3-class engines.
    Prone to mis-jumps.
    Large (5m diameter, 15m long), massive (32t), and bulky.


โš™๏ธ 1. Charge-Up System

  • The jump engine requires ElectricCharge & Graviolium to activate.
  • ElectricCharge is generated by Fusion Reactors.
  • The engine absorbs ElectricCharge over time until the required cost is met.
  • Once charged, the engine expends the required Graviolium and rapidly discharges ElectricCharge into it to create the wormhole.
  • Charging is visible in the UI and supports cinematic FX buildup.

๐Ÿ“Š 2. Dynamic Jump Cost Formula

Graviolium jump cost is dynamically calculated based on:

// csharp
totalCost = baseCost
          + (vesselMass ร— massMultiplier)
          + (jumpDistance ร— distanceMultiplier)
          + (gravityModifier ร— gravityStrength ร— gravityPenaltyMultiplier)
Component Description
baseCost Baseline cost for any jump
vesselMass Total mass of the vessel (in tons)
jumpDistance Distance from origin to destination (in meters)
gravityModifier Penalty based on position inside SOI (0.0 at edge, 1.0 near center)
gravityStrength Local gravity strength (computed as GM / rยฒ)
gravityPenaltyMultiplier Tuning constant to scale gravitational penalties

โš›๏ธ Graviolium Reaction Visual FX

Jump engines culminate in a dramatic Graviolium discharge event that visually marks the formation of the wormhole.
This is the moment when massive amounts of stored ElectricCharge are funneled into the Graviolium core, triggering the jump.

๐Ÿ”ฅ Visual & Audio Effects Ideas:

  • Energy surge: Electric arcs dance around the drive coil during charge-up
  • Field collapse: Sudden implosion or warping distortion just before the jump
  • Flashpoint: A sharp visual flash or ripple when the wormhole opens
  • Discharge wave: Shockwave, blue plasma arc, or blackhole-like shimmer
  • Sound FX: Deep pulse or oscillating hum that builds with charge, then snaps or booms

๐Ÿ’ก Optional Variants:

  • Higher-mass vessels = larger discharge effect
  • Failed jump = unstable burst of Graviolium plasma or partial flicker
  • AI-enhanced ships = cleaner, symmetrical vortex formation

๐Ÿ“š Lore Hook:

"Graviolium is inert until catalyzed by high-frequency power harmonics.
At the critical moment, the field collapses, and spacetime folds inward,
leaving behind only a brief ripple โ€” and a long silence."


๐ŸŽฎ Gameplay Summary โ€“ Factors affecting GravityWave cost

Factor Effect on Cost
๐Ÿ›  Heavier ship Increases cost โ€” more mass requires more energy to generate a stable wormhole
๐Ÿ“ Longer jump distance Increases cost โ€” forming a wormhole across greater distances demands more power
๐Ÿงฒ Deeper in a gravity well (closer to a celestial body) Increases cost โ€” strong gravitational curvature disrupts wormhole formation
๐Ÿช Stronger gravity body (like Eve or the Sun) Increases cost โ€” high-gravity environments amplify the gravitational interference
๐ŸŒŒ Near SOI edge or in deep space Decreases cost โ€” optimal conditions for clean and stable wormhole creation
๐Ÿ›ฐ๏ธ At SOI edge of small body (e.g. Minmus) Super cheap โ€” ideal conditions for jump staging and interstellar transit hubs

๐Ÿงฒ 3. Gravity Modifier

  • Calculated based on proximity to the celestial bodyโ€™s center.
  • Uses a quadratic falloff:
    gravityModifier = 1.0 - (distanceFromCenter / SOIRadius)ยฒ
SOI Position Jump Efficiency Gravity Modifier
Center of SOI 0% (worst) 1.0
Middle of SOI ~75% ~0.25
Edge of SOI 100% (best) 0.0

โš ๏ธ 4. Jump Risk Zone

If jump efficiency < 40%, the following risks may occur:

  • Jump misalignment (appearing off-target)
  • System damage (overheat, energy loss)
  • Jump failure (cancellation, partial refund)

Thresholds are configurable per engine or global setting.


โณ 5. Cooldown Mechanic

  • After a successful jump, the engine enters a cooldown period.
  • Cooldown duration scales with the cost:
  • cooldownTime = gravioliumCost ร— cooldownMultiplier

This prevents immediate repeat jumps and supports strategic retreat timing.


๐Ÿ“ก 6. Jump Efficiency Sensor

The GRAVMAX Negative Gravioli Detector has upgraded functionality:

  • Displays Jump Efficiency %
  • Gives a qualitative readiness state: Excellent, Good, Suboptimal, Poor

Uses shared logic from the WBIJumpDriveUtilities class.

Mitigating the Jump Risks & Restrictions

Crew, Jump Beacons, specialized computer systems, and more can help reduce the risks and restrictions placed on jump engines. The Jump Beacon and computer system parts are available in Advanced Jump Tech.

โš–๏ธ Combined Gameplay Flow

Configuration Jump Performance
โŒ No beacon, no computer High drift, long cooldown, must have clear line of sight, cannot jump to moons/planets
๐Ÿง  Astrogator only Moderate drift reduction, reduced cooldown, still requires line of sight, planetary targeting not allowed
๐Ÿ›ฐ๏ธ Beacon only Eliminates drift, precise arrival, still limited by cooldown and line of sight unless override is installed
๐Ÿ›ฐ๏ธ Beacon + ๐Ÿง  Computer High-precision jumps, reduced cooldown, supports fleet-scale logistics and efficient long-range ops
๐ŸŒ Targeting Override Array Allows planetary/moon targeting, but introduces increased jump drift and/or misjump risk
๐Ÿ›ฐ๏ธ Beacon + ๐ŸŒ Override Precision planetary targeting with no drift penalty โ€” beacon eliminates misjump risk
๐Ÿ›ฐ๏ธ Beacon + ๐Ÿง  Computer + ๐Ÿ‘ฉโ€๐Ÿš€ Trained Crew Optimal performance โ€” no drift, minimal cooldown, bypass occlusion (if supported), full planetary precision

๐Ÿ›ฐ๏ธ Jump Beacons โ€“ Drift Elimination & Target Stabilization

Jump Beacons serve as anchor points in space that completely eliminate jump drift and improve jump precision.
They are manually deployed in orbit and must be powered to be effective. The part is 5m in diameter, 20m long, and masses 50t.

Effects:

  • โœ… Eliminates jump drift
  • โœ… Allows jumps to planets & moons
  • โœ… Enables blind jumps (optional)- the ship performing a blind jump may veer towards the Jump Beacon if within range.
  • ๐Ÿ”‹ Requires ElectricCharge and Graviolium to maintain lock
  • โš“ Must be placed and activated in advance
  • โš“ Must be calibrated at destination in advance

๐Ÿง  Computer Systems โ€“ Jump Risks & Restrictions Reduction via Guidance

Specialized computer parts (like Quantum Astrogators or Navigational Cores) improve jump performance.

Effects:

  • ๐Ÿงฉ Configurable โ€” Select the desired effect from the list of options.
  • ๐Ÿ”ฝ Optionally jump drift by a percentage (e.g. 50%)
  • โœ… Optionally improves jump range through superior navigation calculations.
  • โœ… Optionally allows jumping from occluded positions
  • ๐Ÿงฉ Modular โ€” stack multiple assist modules for additive benefit
  • โœ… Jump Beacons cancel the drift penalty if the vessel jumps into range of an active beacon.
  • โœ… Beacons restore full jump accuracy, even when targeting moons or planets.

๐Ÿงฉ Jump Recovery Optimizer

Effects:

  • โณ Reduces cooldown between jumps

๐ŸŒ Targeting Override Array

๐ŸŽฎ Gameplay Effect:

  • โœ… Allows jumps to moons and planetary surfaces
  • โš ๏ธ Introduces positional drift penalty or increased misjump chance
  • ๐Ÿ”ง Best used when Jump Beacons aren't available at the target.
  • ๐Ÿšซ Does not reduce cooldown or eliminate drift on its own

๐Ÿง  Lore:

Normally, jump drives avoid planetary gravity wells due to high field instability.
The Targeting Override Array forcefully synchronizes a jump solution to a planetary body โ€” but at the cost of precision.
When used without proper compensation, the results can be catastrophic.
Skilled pilots and field beacons are strongly recommended.


โš™๏ธ Suggested Mechanics (Optional for Implementation)

If allowsOccludedJump = true, consider applying the following mechanics in your jump engine code:

  • ๐ŸŒ€ Drift Penalty:
    Add a percentage increase to driftRadius:
    driftRadius *= 1.5; // 50% greater inaccuracy
    
    

๐Ÿ’ฃ Jump Risk Multiplier (if you implement failure logic)

Increase the chance of:

  • โŒ Jump failure
  • โšก Energy backlash
  • ๐Ÿ“ Arrival offset far outside the intended target zone

๐Ÿ”Š Warning Messages

Display contextual warnings when attempting risky planetary jumps:

  • "Warning: Jump Lock Degraded โ€” Navigational Drift Expected."
  • "Caution: Planetary Jump Lock Compromised. Engage Beacons or Risk Misjump."

๐Ÿ”ง Module Configuration:

MODULE
{
  name = WBIJumpAssistModule
  driftReductionPercent = 0
  cooldownModifier = 0.75 // Reduces cooldown by 25%
  allowsOccludedJump = false
}