Scoring Methods
Reference documentation for every scoring method used in Virtual CP Series.
Max Flare
Scores the largest altitude gain from a flare manoeuvre.
Versioning policy
Minor refinements become new versions; fundamentally different measurements become new scorer methods.
The scorer finds all flare events within the scoring window and reports the largest altitude gain in metres. A flare begins when the canopy starts climbing, and ends the first time altitude returns to the level where the climb started. Altitude may oscillate freely during the climb — only the maximum altitude and the start altitude matter.
Flare measurement
Score = max altitude − climb start altitude, taken across all flares detected in the scoring window. The altitude may oscillate during the flare; the window stays open until altitude first returns to the climb-start level.
Scoring window
Default window: 8 000 – 4 000 ft MSL (≈ 2 438 – 1 219 m). Adjustable per competition via scorer config params.
Algorithm
- 1.Skip the plane ride. Scan for 3 consecutive samples where
velD> 25 m/s (freefall). Everything before that point is discarded. If no freefall is found (canopy-only file), start from the highest-altitude point. - 2.Clip to window. Keep only points whose altitude falls within the scoring window.
- 3.Detect flares. Scan for the transition from descending to ascending. Record climbStartAlt. Advance forward while altitude stays above climbStartAlt, tracking the maximum. The flare ends at the first point where altitude ≤ climbStartAlt. Flares < 0.5 m are discarded as noise.
- 4.Score. Return the maximum (maxAlt − climbStartAlt) in metres.
Parameters
| Parameter | Default | Description |
|---|---|---|
| window_hi_ft | 8 000 | Top of the scoring window in feet MSL. |
| window_lo_ft | 4 000 | Bottom of the scoring window in feet MSL. |
| freefall_threshold_ms | 25 m/s | velD threshold used to locate freefall start and skip the plane ride. |
| min_flare_m | 0.5 m | Minimum altitude gain for a candidate event to be counted. Smaller events are GPS noise. |
Score breakdown
| Field | Description |
|---|---|
| window_hi_m / window_lo_m | Scoring window bounds converted to metres. |
| freefall_start_t | Time (s from track start) where freefall was detected. |
| points_in_window | GPS samples within the scoring window. |
| flares[].climb_start_alt_m | Altitude at the start of each flare (m MSL). |
| flares[].max_alt_m | Peak altitude reached during each flare (m MSL). |
| flares[].gain_m | Altitude gain for each flare (m). |
| flares[].climb_start_t / end_t | Start and end times of each flare (s from track start). |