Why a made ball does not tell the whole story — and how PerformStars measures the margin for error in a billiards position.
Two shots can end with exactly the same result: the object ball drops into the pocket. But one may allow a generous aiming error while the other requires an exceptionally precise contact.
At PerformStars, we wanted a measure of that difference which did not depend on a player's reputation or historical potting percentage. Instead, we asked a geometric question: how many initial cue-ball directions would still allow a direct pot?
That question leads to a reproducible shot-difficulty score. Here is the intuition, a few examples, and the limitations of what the number actually means.
A shot has a window, not just a line
A pocket is not a single point. It has an entrance of finite width, and the object ball itself has a nonzero radius. Consequently, several nearby outgoing object-ball directions can still lead to the pocket.
But the player does not aim the object ball directly. The cue ball must first contact it at a feasible location. Translating the object ball's permitted paths into initial cue-ball directions can produce a much narrower range.
We call the width of that resulting interval w, measured in radians:
w = βmax − βmin
Here βmin and βmax are the extreme initial cue-ball directions compatible with the modeled direct pot and approaching first contact. Smaller w means less geometric room for aiming error.
Our displayed score is an inverse scaling of this range:
D = 0.10 / w
The constant 0.10 sets the scale. It is not a probability or an experimentally learned measure of a player's skill. Before rounding, a doubling of D corresponds to half the angular tolerance in this model.
Figure 1. Conceptual illustration of the two different angular windows. The schematic is explanatory, not a numerical reconstruction of a particular example.
Why a thinner cut can be much harder
Consider two pool shots with the same cue-to-object centre distance (0.50 m) and object-to-pocket entrance distance (0.30 m). Only the cue ball's starting position changes, producing a thinner cut.
Figure 2. Positions based on two numerical examples in our research. The paths illustrate their geometry; the illustrated line segments are not an animation of physical ball motion.
| Quantity | Straight shot | Thinner cut |
|---|---|---|
| Object-ball angular window, W | 0.29794 rad | 0.29794 rad |
| Initial cue-ball angular window, w | 0.038248 rad | 0.014596 rad |
| Difficulty score, D | 2.61 | 6.85 |
The pocket is equally open to the object ball in both cases. Yet the initial cue-ball directional tolerance is much smaller in the cut shot. This distinction is why pocket width or shot distance alone cannot describe the whole geometry.
How PerformStars obtains the inputs
The score is not produced directly by a neural network. We first reconstruct an initial billiards position from video: detect the playing surface, map its coordinates into the table plane, detect and track balls, and identify a candidate object-ball/pocket combination. We then use physical equipment dimensions, including ball radius and pocket opening, in the geometric calculation.
The video-based coordinates carry measurement uncertainty. A score displayed to two decimal places should not be mistaken for a claim of equivalent physical measurement precision.
The underlying model uses the initial cue-ball centre C, object-ball centre O, pocket-entrance midpoint P, entrance orientation, ball radius R, and pocket width. It checks both pocket clearance and whether the chosen object-ball direction is reachable by an approaching first contact.
Same equations, different equipment
The model does not apply an arbitrary “snooker is harder” coefficient. It uses specified equipment dimensions instead. With the same 0.50 m and 0.30 m separations as above, the straight-shot example gives 2.61 for pool and 6.83 for snooker, using the article's respective ball and pocket settings.
A second comparison preserves the relative ball positions on a pool table and a larger snooker table. The pool example scores 43.56; the snooker example scores 185.91. Here, longer physical travel distances combine with different ball and pocket dimensions.
Figure 3. Four published example scores. These comparisons refer to specified positions and equipment settings; they do not establish a universal ratio between games.
The pocket widths used here are model parameters, not universal dimensions for every pool or snooker table. Real pocket facings are curved, while our calculation simplifies the entrance to a straight segment. The same geometric framework can also accept measured dimensions from other cue-sport equipment.
What the score means — and what it does not
In PerformStars, the difficulty value is stored with the shot and displayed alongside its diagram and outcome. It also helps summarize demanding attempts and provides context for coaching reports.
But this is deliberately a geometric score. It does not yet represent execution consistency, spin, speed control, cloth friction, intervening balls, cushion-first shots, bank shots, pocket-facing rebounds or position for the next shot.
It also does not predict a universal potting probability. A difficult shot can be made; an easy shot can be missed. The value describes the modeled aiming tolerance of the position, not the quality of any particular stroke.
Toward more meaningful sports analytics
Simply counting made and missed shots treats very different situations as equivalent. A geometric difficulty score gives us another dimension: how demanding was the opportunity in the first place?
That opens a path toward more informative player comparisons, practice planning and AI-assisted coaching — provided we keep the geometric model separate from observed performance and validate any future predictive claims against real data.
The full research article includes the complete equations, six annotated examples, equipment parameters, downloadable inputs and a reference JavaScript implementation so readers can reproduce the numbers:



Top comments (0)