Skip to content

Add fire-control lock-on lead targeting overlay#1463

Draft
Kronyxxx wants to merge 2 commits intoHardLightSector:masterfrom
Kronyxxx:pr/fire-control-lock-lead-only
Draft

Add fire-control lock-on lead targeting overlay#1463
Kronyxxx wants to merge 2 commits intoHardLightSector:masterfrom
Kronyxxx:pr/fire-control-lock-lead-only

Conversation

@Kronyxxx
Copy link
Copy Markdown
Collaborator

About the PR

Adds a lock-on / lead indicator pass to the fire control console so gunnery has a proper "shoot here" UI instead of pure eyeballing.

Right-clicking a radar target now locks it, draws a red diamond over the locked target, and shows a predicted intercept marker based on the currently selected weapons' projectile speeds. If you lock a tagged blip, it tracks that specific target; otherwise it can fall back to locking the enemy grid under the cursor. The fire control window also gets a simple lock status readout so it's obvious whether you're actually locked or not.

This is all client-side presentation / targeting assistance. It doesn't change projectile stats, gun behavior, or server-side hit logic.

Why / Balance

This is mainly a usability / readability improvement.

Ship combat already expects players to estimate lead manually, but the current fire control UI doesn't give much feedback beyond "there is a target somewhere over there." That makes gunnery feel mushy and makes it harder to intentionally focus specific systems or blips when the radar is busy.

This keeps the underlying combat balance intact while making the console communicate a firing solution in a way that's actually readable under pressure.

Technical details

• adds a new FireControlLeadSolver helper to compute a predicted intercept point from gun position, target position/velocity, platform velocity, and projectile speed
• adds right-click lock handling in FireControlNavControl
• supports locking either a tagged radar blip or an enemy grid under the cursor
• clears lock when switching consoles or when the locked target becomes invalid / leaves the map context
• draws a red diamond reticle over the locked target and a second marker at the averaged predicted intercept point for the currently selected weapons
• treats hitscan weapons as instant and uses the target's current position for their contribution
• adds a LockStatus label to the fire control window and updates it from the nav radar lock state

How to test

  1. Open a fire control console on a ship with mounted weapons.
  2. Make sure there is at least one hostile ship / radar target in range.
  3. Right-click a visible radar blip.
  4. Confirm the console shows Locked On, a red diamond appears over the target, and a lead marker appears ahead of it.
  5. Change selected weapons and confirm the lead point updates based on the selected battery.
  6. Right-click empty space and confirm the lock clears and the UI returns to Not Locked.
  7. Switch to another console / disconnect from the current one and confirm the old lock state does not persist incorrectly.
  8. Fire at a moving target and confirm the marker is directionally sensible and useful for manual gunnery.

Media

N/A

Breaking changes

None.

No prototype renames, no network schema changes, and no server-side behavior changes.

Changelog
🆑

  • add: Added fire control target lock-on with a visible lock reticle and lead indicator for selected ship weapons.
  • tweak: Fire control consoles now show whether a target is currently locked.

@github-actions github-actions Bot added the FTL label Apr 26, 2026
@Kronyxxx Kronyxxx marked this pull request as draft April 26, 2026 21:10
@fenndragon
Copy link
Copy Markdown
Collaborator

is this still intended to be a draft?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants