Building a Hamiltonian Path Puzzle
a day ago
- #Web Development
- #Hamiltonian Path
- #Puzzle Game
- Number Trail is a path-filling puzzle built entirely in plain HTML, CSS, and JavaScript without frameworks or bundlers, where players draw a continuous Hamiltonian path visiting every cell exactly once and touching numbered clues in ascending order.
- The implementation includes puzzle parsing from a simple text format, board rendering with CSS grid and dynamic styling, path visualization using line arms and dots, drag-and-click interaction with backtracking, and path validation for solving.
- Random puzzle generation utilizes Warnsdorff's heuristic to create Hamiltonian paths on grids, placing clues evenly along the path and walls only on non-solution edges to guarantee solvability, with fallback to snake traversal if needed.
- Puzzle files are generated via a script that produces 100 puzzles of increasing complexity across grid sizes from 5x5 to 10x10, with scores persisted in localStorage for stable puzzle IDs.