Wormhole Signal Bridge

RealAntennas wormhole relay extension: auto-links KEX-Wormhole mouths.

License: MIT

Game Version: 1.12.5

Downloads: 275

Author: Aebestach

Mod Website: Forum Thread

Followers: 1

Wormhole Signal Bridge

English | 中文

In saves like Kcalbeloh System, a familiar scene plays out: a relay orbits Jool at WH3141A, while a probe circles WH3141B on the far side—KEX wormholes let craft shuttle between mouths A and B, but RealAntennas still treats interstellar separation as real RF path length. Commands and science from Kerbin often fall short on link budget; CommNet does not cross the throat on its own.

Wormhole Signal Bridge (v2) runs after RA’s normal network rebuild, discovers every KEX wormhole pair from Kopernicus config, and injects a tunnel link between directional relays at each mouth. Multi-hop routing stays in RealAntennas, e.g. Kerbin probe → Jool (WH3141A) relay → [tunnel] → Kcalbeloh (WH3141B) relay → destination.

How it works

WSB hooks RealAntennas network events:

  1. On network pre-update — refresh the KEX wormhole registry and sync invisible mouth proxy nodes (one per wormhole celestial body). Each proxy is a ground-station-style RACommNode parked at the mouth’s Body Lat/Lon/Alt, carrying a high-gain digital antenna on every RA band so Precompute can build normal relay ↔ mouth link budgets.
  2. On network update complete — scan orbiting relays, then inject mouth A ↔ mouth B tunnel hops for qualifying antenna pairs.

A relay qualifies when it orbits the wormhole body, has comm power, passes orbit constraints, carries at least one online directional RealAntennaDigital, and that antenna is physically aimed at the local mouth within RA’s max pointing loss. The configured RA target should be the surveyed Body Lat/Lon/Alt on that CB (set manually or via Wormhole Mouth Targeting).

Tunnel data rate per direction is the minimum of the two relay ↔ mouth Precompute rates on that side (source relay → its mouth, destination mouth → destination relay). Tunnel metric takes the weaker of those mouth-leg metrics, then applies insertion loss and orbit-quality penalties. If either mouth leg has no Precompute budget, no tunnel is injected for that pair.

Before a mouth is surveyed, proxy nodes use a provisional parent-facing lat/lon estimate; after GRAVMAX discovery, coordinates are cached in the save and stay fixed.

Requirements

Optional: Kerbalism with FeatureScience — adds a Kerbalism experiment entry on GRAVMAX alongside the stock WSB scan. Not required for tunnel links or stock science.

Relay setup

Each wormhole mouth (each celestial body in a KEX body / partner pair) needs one powered relay in orbit with:

  • At least one enabled directional RA antenna (ModuleRealAntenna) aimed at the local wormhole Mouth using RA’s Body Lat/Lon/Alt targeting (enter lat, lon, alt for the wormhole CB, or use Wormhole Mouth Targeting after survey). Omni antennas cannot form the tunnel.
  • The dish must be physically pointed at the mouth (within RA max pointing loss), not merely configured with coordinates.
  • The same RFBand on both mouths, with compatible symbol-rate ranges
  • Additional antennas recommended for KSC / in-system backbone backhaul

The tunnel exists only between mouth A ↔ mouth B relays. Other craft join via normal RA pathfinding:

  • To the far side: Kerbin probe → … → mouth A relay → [tunnel] → mouth B relay → … → destination
  • Back to Kerbol: Kcalbeloh probe → mouth B relay → [tunnel] → mouth A relay → … → KSC

Local hops (craft ↔ relay, relay ↔ backbone) still use normal RA physics—real distance, occlusion, and pointing. An omni on mouth B does not reach mouth A; both ends need compatible directional dishes aimed at their local wormhole Mouth.

Mouth Directional (tunnel) Other antennas (local/backhaul)
A (e.g. WH3141A, orbiting Jool) Mouth on WH3141A (Body Lat/Lon/Alt) KSC / Kerbol deep-space network
B (e.g. WH3141B, orbiting Kcalbeloh’s host star) Mouth on WH3141B (Body Lat/Lon/Alt) In-system relays / planetary network

All KEX wormholes are discovered automatically—no manual wormhole list configuration.

Discovering wormhole mouths (GRAVMAX)

WSB adds a second science experiment to the stock GRAVMAX (sensorGravimeter) part: Wormhole Mouth Gravioli Resonance Scan. The original Log Gravity Data / Kerbalism gravityScan experiment is unchanged.

  1. Orbit the wormhole celestial body (e.g. WH3141A) within the relay altitude band (above KEX influence altitude, below the jump zone ceiling).
  2. Run the WSB resonance scan on GRAVMAX (stock science UI, or Kerbalism experiment UI when FeatureScience is enabled).
  3. When data collection completes, WSB permanently registers that mouth’s Body Lat/Lon/Alt coordinates in the save (cached; they do not drift with orbit or time), and awards a 75 000 funds bonus on first discovery per mouth. On first survey, the horizontal position is usually on the side of the wormhole CB facing its parent (referenceBody), e.g. the side of WH3141A facing Jool—that lat/lon then stays fixed for the save.
  4. On each directional ModuleRealAntenna part, use Wormhole Mouth Targeting in the RealAntennas PAW group (same place as Antenna Targeting). This button appears only after at least one mouth has been surveyed. It opens a WSB window styled like RA’s target UI, listing discovered mouths (e.g. WH3141A Mouth). Select one to aim this antenna only—nothing is auto-aimed. The chosen mouth is remembered on the part. Each mouth must be surveyed separately; you can only select a mouth while your relay orbits that wormhole body, with RA comm online and an acceptable orbit. Entries show relay ↔ mouth link rate when Precompute budgets exist.

These actions set the same Body Fixed Point target RA already uses internally. Repeat scans on an already-discovered mouth still yield science (subject depletion rules apply) but do not re-register the mouth.

Configuration

Per-save options in Difficulty Settings → Wormhole Signal Bridge. Choosing a game difficulty preset (Easy / Normal / Moderate / Hard) loads the values below; individual fields remain editable.

Below Enable wormhole signal bridge, four Wormhole Signal Bridge preset controls (Easy / Normal / Moderate / Hard) apply WSB values only. They are independent of the global game difficulty buttons at the top of the page—for example, you can run global Hard while keeping WSB on Easy.

Difficulty presets

Easy Normal Moderate Hard
Advanced orbit constraints Off On On On
Effective distance (m) 500 1,000 1,500 2,500
Insertion loss (dB) 0 0 2 4
Max mouth altitude (m) 1,000,000 500,000 400,000 350,000
Optimal max altitude (m) 300,000 200,000 180,000 170,000
Strict Pe/Ap bounds No Yes Yes
Max ApA (m) 1,000,000 500,000 400,000 350,000
Strict inclination No No Yes (5°–175°)
Preferred inclination 10°–170° 15°–165°
Strict eccentricity No No Yes (≤ 0.45)
Ideal max eccentricity 0.3 0.2 0.15
Orbit loss scale 0.75 1.0 1.5

All presets share the same hard floor: altitude must stay above each wormhole’s KEX influence altitude (minimum safe relay height). That floor is per wormhole, not a difficulty setting.

Ideal relay orbit (quality = 1)

Let Hinf = that wormhole’s influence altitude (km). “Perfect” means full orbit quality, no extra orbit penalty. Use a circular orbit and aim the directional antenna at the local Mouth via RA Body Lat/Lon/Alt on the wormhole CB.

Preset Ideal orbit
Easy Any orbit above Hinf (advanced constraints off)
Normal Circular, Hinf200 km, any inclination, e ≤ 0.3
Moderate Circular, Hinf180 km, inclination 10°–170°, e ≤ 0.2, PeA ≥ Hinf, ApA ≤ 400 km
Hard Circular, Hinf170 km, inclination 15°–165°, e ≤ 0.15, PeA ≥ Hinf, ApA ≤ 350 km

Mouth altitude is about (KEX jump zone ceiling + Hinf) / 2 (both in km). Latitude/longitude are set from the parent-facing side at GRAVMAX survey completion and saved in the scenario; afterward, aim the directional antenna at those registered Body Lat/Lon/Alt coordinates—no re-aiming as the wormhole orbits.

Key parameters

Parameter Role
Effective distance Nominal RF path length (m) stored on the injected wormhole hop. The tunnel still requires current RA Precompute budgets for both relay ↔ Mouth legs; if either mouth budget is unavailable, no tunnel link is injected for that antenna pair.
Insertion loss Extra throat attenuation (dB). Scales link metric (connection quality), not dataRate (transfer rate) directly.
Advanced orbit constraints When on, applies altitude ceiling, orbit-quality scoring, and optional strict Pe/Ap, inclination, and eccentricity rules on top of Hinf.
Max mouth altitude Instant reject above this height (advanced mode).
Optimal max altitude Top of the preferred altitude band (quality = 1 inside Hinf … this value).
Edge quality Quality score at the edge of an allowed range (lower = harsher falloff).
Strict Pe/Ap bounds Reject if PeA < Hinf or ApA > max ApA.
Preferred / strict inclination Soft or hard limits on relay inclination.
Ideal / max eccentricity Full quality below ideal; soft or hard limits above.
Min usable orbit quality Combined orbit score must stay above this or the link is rejected.
Orbit loss scale Multiplier for the orbit-quality penalty applied to the injected tunnel metric when orbit quality < 1. It does not directly reduce dataRate; the relay ↔ Mouth rates remain RA Precompute results.
Key Default (Normal) Meaning
enabled true Global on/off
debugLogging false Log mouth nodes, relay candidates, pointing checks, and injected links to KSP.log

Build

Set environment variable KSPDIR to your KSP install. Build RealAntennas and KEX-Wormholes first, then:

msbuild src\WormholeSignalBridge\WormholeSignalBridge.sln /p:Configuration=Release

Output: GameData/WormholeSignalBridge/Plugins/WormholeSignalBridge.dll

Copy the GameData/WormholeSignalBridge folder into your KSP GameData directory.

Notes

  • CommNet map lines may still draw across normal space; link quality uses RA budgets plus wormhole distance/loss and optional orbit quality.
  • Third-party parts that still use stock ModuleDataTransmitter without an RA patch are ignored for tunnel hops.
  • Enable debug logging in difficulty settings to see why a relay pair failed (orbit, pointing, band mismatch, missing mouth budget, etc.).
  • Mouth proxy nodes are invisible and exist only for RA Precompute; players interact with surveyed coordinates via GRAVMAX and Wormhole Mouth Targeting.
Loading changelog...

Stats for Wormhole Signal Bridge

Downloads over time

Downloads per version

New followers per day

Top Referrers

  1. spacedock.info
  2. forum.kerbalspaceprogram.com
  3. www.google.com
  4. sd1b.52k.de
  5. sd-prod-live.52k.de
  6. sd1a.52k.de
  7. sd-prod-stage.52k.de
  8. duckduckgo.com
  9. br.search.yahoo.com
  10. www.perplexity.ai

Export Raw Stats

Export Downloads

Export Followers

Export Referrals

Raw stats are from the beginning of time until now. Each follower and download entry represents one hour of data. Uneventful hours are omitted.