Patent ID: 11865464
Assignee: nan
Field: Furniture, games (Other fields)
Classification: CPC A | IPC A

Claim 10:
11. A method of providing hints by a computerized system to solve a puzzle based on the order of execution of steps of solving, wherein,
the computerized system includes at least one computing device or a network of computing devices,
the puzzle has a given configuration of a set of spaces, a given set of distinct characters, and a given set of rules,
the set of spaces includes one or more empty spaces, a space being non-empty if it has a character filled in it,
a step of solving the puzzle comprises filling an empty space of the one or more empty spaces with a character selected from the given set of distinct characters, consistent with the given set of rules and the given one or more non-empty spaces in the set of spaces if the set of spaces includes one or more given non-empty spaces,
the puzzle is solved by one or more steps of filling the one or more empty spaces in the set of spaces,
a solution to the puzzle is complete when all of the one or more empty spaces in the set of spaces are filled by steps of solving the puzzle,
a solution-path is a chain of two or more steps of solving the puzzle which are linked in same sequential order in which the corresponding two or more empty spaces of the one or more empty spaces are filled,
solutions to the puzzle with empty spaces filled in different orders are solutions of the puzzle by distinct and alternative solution-paths,
a first step of a solution-path has no prior step, and at the first step of the solution-path, an empty space of the one or more empty spaces is filled with a character from the given set of distinct characters based on the given set of rules and the given non-empty spaces in the set of spaces,
a second or subsequent step of the solution-path comprises filling an empty space of the one or more empty spaces with a character from the given set of distinct characters based on the given rules, the given non-empty spaces in the set of spaces and a character filled in an empty space of the one or more empty spaces during one or more prior steps of the solution path, and
the method of providing hints from the computerized system to a player comprises the following actions:
(a) providing a sequence of labels, {Label(1), Label(2), Label(I), . . . } with a known sequential order;
(b) receiving a labeling algorithm for associating the labels with the filling of empty spaces in a solution-path, where Label(1) is associated with the first step of the solution-path, and each empty space filled at a second or subsequent step of the solution path is associated with a label based on the known sequential order of labels in the sequence of labels;
(c) receiving by the computerized system, a first step of a first solution-path;
(d) receiving by the computerized system, an association of Label(1) with the empty space filled at the first step of the first solution-path;
(e) recording the association of Label(1) with the empty space filled at said first step of the first solution-path;
(f) receiving by the computerized system a next step in the first solution-path when said next step exists;
(g) receiving an association by said labeling algorithm of a label with the empty space filled at said next step;
(h) recording by the computerized system, the label associated with the empty space filled at said next step;
(i) receiving by the computerized system a first step of a next solution-path when said next solution-path exists;
(j) receiving by the computerized system an association of Label(1) with the empty space filled at said first step of said next solution-path;
(k) receiving by the computerized system, a next step in said next solution-path when said next step exists;
(l) receiving an association by the labeling algorithm of a label with the empty space filled at said next step in said next solution-path;
(m) recording by the computerized system the label associated with the empty space filled at said next step in said next solution-path;
(n) starting a computerized process on the computerized system to verify if label associations for the cells filled in the one or more solution-paths are correct according to logical reasons of the labeling algorithm by checking each label for logical inconsistencies;
(o) receiving a determination by the computerized system if any of the labels associated with filling a given empty space for any of said one or more solution-paths is inconsistent with: (i) a rule in the given set of rules, (ii) a given non-empty space in the set of spaces, or (iii) an empty space filled at any prior step of the solution-path;
(p) identifying by the computerized system from said one or more solution-paths, a first subset of the set of solution-paths for which no label associated with the filling of an empty space is inconsistent;
(q) identifying by the computerized system from said one or more solution-paths, a second subset, of the set of solution-paths for which at least one label associated with the filling of an empty space is inconsistent;
(r) recording in a first database, first information and data associated with each solution-path in the first subset, where the first information and data includes the labels associated with the filling of the corresponding empty spaces;
(s) recording in a second database, second information and data associated with each solution-path in said second subset, where the second information and data includes the labels associated with the filling of its corresponding empty spaces, to save or isolate the solution-path for further process or for removal of the solution-path from further consideration;
(t) providing a sequence of ordered numerical values;
(u) assigning a numerical value from said sequence of ordered numerical values to each label in a sequence of labels for each of the one or more solution paths while maintaining correspondence of order between the sequence of ordered numerical values and the sequence of labels;
(v) receiving, for each of said one or more solution-paths in the first database, the numerical value assigned to each label associated with the filling of each empty space;
(w) receiving from the player, a current location of a current space or an empty space to fill;
(x) receiving from the player, a parameter or parameters to define from the current location bounds of spaces in the given set of spaces within which to locate a next hint;
(y) saving by the computerized system the parameter or parameters; and
(z) providing to the player, based on available previous solutions, as the next hint, a location of a space to fill: (i) within the bounds defined by the parameter or parameters, (ii) which would provide a solution-path to a space within the bounds, or (iii) that is an alternative empty space to fill outside of the bounds if no empty space within said bounds is identified by the computerized system.