← Back to Games

How scoring works: Patches

Your game score comes from your own puzzle result. Your party rank compares that score with your party's submissions for the same day.

Quick summary

Patches is scored on how fast you fit the colored shape tiles into the grid. Your time falls into one of six score brackets (1.0 down to 0.5), or a 0.2 floor if slower than 10 minutes. Redraws and hints don't lower your score -- redraws only break ties against players with the same time.

How to score well

  • Solve the puzzle as quickly as possible -- 30 seconds or less is a perfect score.
  • Plan where each shape goes before you place it so you avoid redrawing, which costs time.
  • Fewer redraws won't raise your score, but they rank you ahead of anyone who tied your time.
  • Even a very slow solve earns 0.2 -- unsolved entries are the only way to receive 0.0.

How ranking works in parties

  • Your score is compared to other party members who solved the same day's Patches puzzle.
  • Players who tie on time are ordered by fewer redraws.
  • Ties are broken using competition ranking -- if two players tie exactly, they share the same rank.

Example

You solve Patches #88 in 1:57 (117 seconds) with 6 redraws and no hints. Your time falls in the 60-120s bracket, so your normalized score is 0.8 -- the redraws don't reduce it. A partymate who also finished in 1:57 with 2 redraws ranks just ahead of you.

How to submit your score

On iOS, tap Share → PuzzleParty after solving. On Android/web, tap the share button, copy the result, and paste it into PuzzleParty.

Technical scoring data
{
    "ranking": {
        "tie_algorithm": {
            "key": "competition_ranking",
            "display_name": "Competition ranking"
        }
    },
    "examples": [
        "Solving Patches in 0:30 or less earns a normalized score of 1.0 (elite).",
        "Solving in 1:00 earns 0.9 -- very fast.",
        "Solving in 2:17 (137 seconds) earns 0.7 -- good, regardless of redraws or hints.",
        "Solving in 10:00 earns 0.5 -- slow but scored.",
        "Two players finishing in 1:30 are ranked by who used fewer redraws."
    ],
    "rule_text": "Faster solve times produce better normalized scores. Scoring uses a step-function bracket table: 30 seconds or less earns 1.0, up to 60 seconds earns 0.9, up to 2 minutes earns 0.8, up to 3 minutes earns 0.7, up to 5 minutes earns 0.6, up to 10 minutes earns 0.5. Any solved time slower than 10 minutes earns the minimum solved score of 0.2. Unsolved entries receive 0.0. Redraws and hints never change the normalized score -- redraws only break ties in party ranking between players with the same time, and hints are recorded only.",
    "edge_cases": [
        "Unsolved puzzles always receive a score of 0.0, regardless of time spent.",
        "Redraws NEVER change the normalized score -- they encode as a fractional tiebreaker (min(redraw_count, 9999) * 0.0001) in score_value so they only matter when times are equal, and the clamp keeps the tiebreaker strictly below one second.",
        "Hints NEVER change the normalized score -- they are recorded in parsed data only.",
        "A missing detail line in the share text means zero redraws, but hints are treated as unknown (recorded as null, not zero) -- an absent hints clause is never counted as a no-hint solve.",
        "The flawless flag is DERIVED, not printed -- a solve counts as flawless only when the share's detail line is present and reports both no hints and no redraws. A solve with no detail line is recorded as not flawless, and the flawless flag does not affect scoring in V1.",
        "Solved entries never score below 0.2, regardless of how slow the time is.",
        "Times at exactly a bracket threshold (e.g., exactly 30s, 60s) receive that bracket's score (inclusive)."
    ],
    "measurement": {
        "metric_key": "time_seconds",
        "metric_label": "Time to solve",
        "scoring_type": "time_based"
    },
    "human_review": {
        "checklist": [
            "Verify rule_text reflects the time-based scoring behavior without ambiguity.",
            "Verify examples are readable and match expected outcomes for the 30s-600s range.",
            "Verify edge_cases are clear and non-conflicting, especially that redraws are a tiebreaker only, hints are recorded-only, and the flawless flag is DERIVED from a present no-hints-and-no-redraws detail line."
        ],
        "machine_verifiable_scope": [
            "measurement.scoring_type",
            "absolute_scoring.method",
            "absolute_scoring.solved_floor",
            "absolute_scoring.unsolved_score",
            "absolute_scoring.brackets",
            "ranking.tie_algorithm.key"
        ]
    },
    "party_ranking": {
        "normalization_summary": "Within a party, players are ranked on Patches by faster completion times first (ties on time are broken by fewer redraws), with unsolved entries ranked last. Each player earns one point for every party member they beat, plus one. Players who don't solve the puzzle earn zero points for this game."
    },
    "schema_version": 1,
    "absolute_scoring": {
        "method": "time_based",
        "brackets": {
            "30": 1,
            "60": 0.9,
            "120": 0.8,
            "180": 0.7,
            "300": 0.6,
            "600": 0.5
        },
        "scoring_type": "time_based",
        "solved_floor": 0.2,
        "unsolved_score": 0
    }
}