Skip to content

Splashdown awards on crash-speed water impact #2

@nickdavies

Description

@nickdavies

Symptom

Player crashes into the ocean at high speed and receives "Kerbin Splashdown" credit.

Root Cause

MissionTracker.cs:615-617 triggers splashdown on Vessel.Situations.SPLASHED with no speed check:

if (data.to == Vessel.Situations.SPLASHED && body == "Kerbin" && !v.isEVA)
    ReportLocation("Kerbin Splashdown", grantScience: true);

KSP transitions to SPLASHED even during a destructive water impact. A 327 m/s ocean hit fires both SPLASHED (awarding splashdown) and onCrashSplashdown (awarding first crash) simultaneously.

Fix

Add a speed threshold to the splashdown check. KSP's survivable water landing speed is roughly 6 m/s for most pods. Check v.srfSpeed or v.verticalSpeed against a reasonable threshold (e.g., < 10 m/s) before awarding splashdown.

Alternatively, skip the splashdown award if onCrashSplashdown fires in the same frame for the same vessel.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions