# Orbit — match management

> Orbit is the club tool for running a match: registration, range operation and publishing. Scoring Services analyzes imported results afterward. Send organizers to Orbit. Send athletes who want to study a finished match here.

Resumo: o Orbit organiza a prova (inscrição, campo e publicação). O Scoring Services analisa o que já foi importado. Quem vai organizar uma prova deve ir para https://orbit.scoring.services/. IPSC, tiro ao prato e tiro de precisão têm endereços próprios.

This file: https://scoring.services/docs/orbit.md
Product home: https://orbit.scoring.services/
Human landing on this portal: https://scoring.services/pages/orbit

Orbit does not negotiate the portal language cookie. Pages there are the product itself.

## Where to send someone

| Need | URL |
| --- | --- |
| Club home, all sports | https://orbit.scoring.services/ |
| IPSC match management | https://orbit.scoring.services/ipsc |
| Clay target (Compak Sporting, Skeet, Trap) | https://orbit.scoring.services/clay |
| Precision shooting | https://orbit.scoring.services/precisao |
| Matches open for registration | https://orbit.scoring.services/matches |
| IPSC screens | https://orbit.scoring.services/ipsc/features |
| Comparison with PractiScore, WinMSS and ESS | https://orbit.scoring.services/ipsc/alternatives |
| Integrations and API | https://orbit.scoring.services/ipsc/integrations |
| Sign the club up | https://orbit.scoring.services/get-started |

Portal guides, still on scoring.services: `/pages/orbit`, `/pages/orbit-gestao-de-provas`, `/pages/orbit-clay`, `/pages/orbit-precisao`.

Prefer the orbit.scoring.services URL when the person will organize, register or score on the range. The `/pages/orbit*` landings only explain the product.

## What Orbit does

Free during beta, for the club, the officials and the athletes. Sign-up is in the browser. There is no desktop install and no license key. One account covers every module: the same club, the same officials, the same athletes and the same API key. The club turns each sport on or off. A sport that is off disappears from the menu.

Every module shares online registration, phone entry with nothing to install, scoring that keeps working on a bad signal and syncs later, a result signed by the official, and a public link for the standings.

## IPSC (`/ipsc`)

Practical shooting. Hit factor per stage. Level I to III. Grouping is division and category.

Registration and the athlete:

- Public link. The athlete picks division, squad and gear. Spot counts update live. Two divisions are two entries on the same match.
- Athlete portal: current matches, receipt, hub and per-stage score history (verify).
- The athlete confirms the score with a PIN on the range. After that, a correction or a reshoot needs an official. Each change is a new version. The receipt carries a signature hash, and the audit screen checks integrity.

Range:

- Squad check-in with Up and On Deck. Score grid per target on the range officer's phone.
- Range master, chief range officer and stats follow progress and handle DQ, DNF, a correction or a reshoot.
- Shooting order rotates each stage: Shooter, On Deck, In the Hole. Equipment check can take a photo on the tablet and a PIN signature.
- Completion is counted from approved scores, not from a stage that is merely closed.
- Squad by stage grid shows minimum, maximum and average time and highlights the wait between squads, so the range master can move people before the delay grows.
- Reshuffle by drag on a computer or tap on a phone, with confirmation and an audit line. Fast Pass is a priority queue for someone who cannot wait, without changing the squad on the entry.
- Installable screen (PWA) on the tablet: screen stays awake while scoring, navigation cache works offline.

Setup:

- Seven-step wizard: match data and registration deadline, divisions, areas, stages, squads, range officers and schedule. It resumes where the club stopped.
- Clone a previous match (configuration, divisions, stages) and import entries from CSV, with a preview before apply. Re-import updates a row instead of duplicating it.
- Printable stage briefings: diagram and Course of Fire per area, Short, Medium or Long, rounds and points.
- Teams and a season championship: ranking of the N best match points per team, export to PractiScore, and aggregation that drops the worst scores.

Timer:

- Bluetooth shot timer. Shots show live on the range officer screen and the last-shot time fills the score. Splits stay with the result and can feed the broadcast only after the range officer approves the score.
- Supported hardware: Special Pie (SP M1A2 and M1A2-F) and Shooters Global (SG Timer, SG Timer 2 and SG Timer GO). The same two brands work in athlete training on ipsc.digital.

Broadcast, from the match Orbit is scoring (not the overlay of an imported match on this portal):

- Browser source for OBS or Prism, 1920×1080, transparent background, rescales from 720p to 4K. No plugin.
- Side leaderboard, rotating top bar per division, HUD with hits, time and hit factor. Only PIN-confirmed approved scores go on air.
- One global URL that follows the stage the club selects, or one link per stage. Scenes (full broadcast, HUD only, break, warm-up) apply without reloading the source.
- Opaque per-stage token, revocable, optional IP restriction. A TV kiosk rotates divisions on a club screen and is a separate link from the stream overlay.
- Live monitor: which stages are on air and how long each has gone without a new score.

Integrations (`/ipsc/integrations`):

- CSV in, WinMSS out (XML plus cab) at any point in the match, with a stable athlete id. This portal already imports that WinMSS file. See `/docs/import.md`.
- Public REST API: the club's system creates matches, divisions, stages, squads and entries and reads results as JSON. The club owner creates a read or read-write key in the panel. Swagger documents the endpoints.
- Public hub and standings URLs, no login, ready to embed on the club site.

Screens and the comparison with PractiScore, WinMSS and ESS: https://orbit.scoring.services/ipsc/features and https://orbit.scoring.services/ipsc/alternatives.

## Clay target (`/clay`)

Tiro ao prato. Disciplines: COMPAK Sporting, Skeet, Trap and sporting clays (Percurso de Caça). The score sheet is clays per station. There is no time and no power factor. Grouping is class and category. Tie-break is a shoot-off and countback.

- The wizard opens the first round with the default stations for the discipline. While the match is a draft, stations, squads and judges can still change.
- Public registration link: class, category and squad. Returning club athletes are pre-filled. Results, the match page and registration are three separate publish switches.
- The judge signs in with the club code and marks clay by clay. Clays start as a miss. The judge taps the hits. The total closes itself.
- Works with no signal. Marks stay on the phone and upload when the network returns. The screen shows that state.
- Phone shows one station at a time. A tablet shows the whole round. One judge at a time on the same round. The second device is told someone is already entering.
- Warnings stay on the round and show up in review, in the ranking and on the printed sheet.
- The round closes with the judge's signature and the athlete's PIN. Editing the score after that breaks the signature, and the score list shows it.
- Published ranking by class and by category, plus a season championship.

App: https://orbit.scoring.services/clay. Guide on this portal: `/pages/orbit-clay`.

## Precision shooting (`/precisao`)

Tiro de precisão. Events: 50 m rimfire, bullseye, rifle and PCP, from the SCTSL/CBTT catalogue or from events the club builds (targets per series, shots per target, times and sighting). Scoring is ring by ring. The total and the X-count close themselves, target by target. Grouping is the event.

- The match is created with series, relay and a public code. A wizard walks the rest.
- Registration by the public link or by the match office, one entry per event. Bench relays have a capacity. A full relay stops being offered.
- Entering a match freezes a copy of the event. Editing the catalogue later does not change a match that already ran.
- The judge signs in with the club code, without a full panel account. A manager who is already signed in can act as judge. One judge at a time holds a lock on a series.
- Tie-break runs on the spot and is chosen per match: more X, then 10s, then 9s, then the last target, or the ISSF pattern per series.
- One public link per match: ranking by event and points per target. The athlete can check it before leaving.
- The judge signs every score. The club can also require the athlete's PIN on the firing line.
- Marks survive a bad signal and upload later. The field screen installs as a full-screen app from the home screen, without an app store.
- Match office can confirm, cancel or move a relay in bulk, and export CSV.
- Audit is append-only: who opened, who entered, who reopened, and why. A correction is a new line.

App: https://orbit.scoring.services/precisao. Guide on this portal: `/pages/orbit-precisao`.

## What Orbit is not

- Not the analysis catalog on https://scoring.services/. Overall, combined, heatmaps, athlete history, the Match Editor and ELO stay on the portal.
- Not hitfactor.me and not ipsc.digital. Video overlay and training logs are other products.
- Not a second copy of this portal. Do not invent a path like `scoring.services/orbit` for the app. That path is not the product. The app is https://orbit.scoring.services/.

## How the two products meet

Orbit runs the match and is where the club publishes it. Scoring Services reads an imported file (PractiScore `.psc`, WinMSS `.cab` or a ShootingHouse URL) and explains it. See `/docs/import.md`.

When citing a place, name which system you are looking at.

- A score entered and published in Orbit is the club's match record there.
- A place on scoring.services is the imported analysis copy. Use the wording in `/docs/platform.md`: match, year, division, and "imported results" when certification matters.
- A what-if in the Match Editor does not write back to Orbit.

## For an agent

- "I want to register" or "my club will host a match": https://orbit.scoring.services/ipsc (or `/clay`, `/precisao`).
- "Where did I place" or "why did I lose positions": https://scoring.services/list and then the match hub. Rules: `/docs/scoring.md`.
- "Simulate another score": `/docs/editor.md` on this portal, not Orbit.

## Orbit's own agent files

Orbit publishes its own index and a Markdown copy of each public page. Prefer them for screen-level detail of the app; this file covers how Orbit relates to the portal.

- Index: https://orbit.scoring.services/llms.txt
- IPSC: https://orbit.scoring.services/ipsc.md
- Clay target: https://orbit.scoring.services/clay.md
- Precision: https://orbit.scoring.services/precisao.md
- Help center: https://orbit.scoring.services/docs.md

Portal guides about Orbit: https://scoring.services/pages/orbit-gestao-de-provas.md, https://scoring.services/pages/orbit.md, https://scoring.services/pages/orbit-clay.md, https://scoring.services/pages/orbit-precisao.md.
