Arrow Puzzle
Inside the generator

How Arrow Puzzle levels are made and verified

Every playable board begins with deterministic inputs, passes measurable challenge checks, and carries a complete solution that is replayed by code. This page documents the real process behind the current Journey and Daily puzzles.

50deterministic Journey boards
1,865individual paths in the stored set
1–2safe opening exits on every board

1. A seed makes the result repeatable

Journey assigns a fixed numeric seed and progression profile to each level. A seeded random function means the same inputs create the same candidate layout. The selected 50 boards are stored as compact path data, so Level 12 today is the same board a returning player sees later.

Daily begins with the UTC date instead. The date is hashed into a seed, then paired with a preselected quality candidate. Everyone receives the same Daily board for that date, while a different date produces a different arrangement.

2. Paths are connected shapes, not decoration

Each arrow is a sequence of orthogonally connected grid cells with one final direction. The generator creates long paths, carves sightline gaps, and builds blocker relationships. Later Journey waves can use rounded, diamond, or blob masks as well as rectangles, changing the meaningful boundary without changing the core rule.

Current stored set

30 Hard levels lead into 20 Nightmare levels. Across all 50 boards there are 36 rectangle, 7 rounded, 3 diamond, and 4 blob silhouettes.

3. Candidate boards compete on challenge quality

A valid layout is only the starting point. Depending on the progression profile, the generator compares dozens or hundreds of deterministic candidates. It scores whether the board keeps several convincing choices visible, uses distant blockers, limits long obvious runs, and stays demanding through the endgame.

The opening Journey arc is deliberately focused: each of the first ten levels starts with exactly one safe exit. Later boards allow one or two. Removing a path may unlock a small number of new choices, but the design avoids turning the rest of the board into an automatic cleanup sequence.

4. The complete solution is replayed

Every board stores a solution order alongside its path data. The verifyLevel routine starts with every path still on the board and checks the order one item at a time. For each item it confirms that the path exists and that the straight ray beyond its arrowhead is clear, then removes the path. Verification succeeds only when the entire order is legal and no paths remain.

  1. Find the next stored path. A missing path makes verification fail.
  2. Apply the real clearance rule. Any occupied cell along the exit ray blocks the move.
  3. Remove the legal path. The next check runs against the updated board.
  4. Require an empty finish. A partial solution is not accepted.

5. What the public level table measures

The level catalog reads the same data used by the game. Board is the grid width and height. Shape is the playable silhouette. Paths and Par report the exact number of pieces in the complete solution. Opening counts the paths that can legally leave before the first tap. Target is a pacing guide, not a timer or requirement.

The numbers on this page were recalculated from the current 50-board Journey set on September 11, 2026. They will be updated if the stored level data changes.

Test the verifier’s rule yourself

Trace one full path, scan its straight exit ray to the boundary, and remove it only when no other path crosses that line.

Play Level 1 →