For each CLUE, the thief will either MOVE or WAIT.
(TODO: implement the subway) For each MOVE, the thief will always use the SUBWAY if the thief is on one of the 5 STREET spaces with SUBWAY access, unless the thief has just used the SUBWAY 1 MOVE ago. While using the SUBWAY, the thief cannot be arrested, and a TIP cannot be used. The MOVE after using the SUBWAY is always 1 of the 5 STREET spaces with SUBWAY access (Note: this can be the same STREET space where the thief was 1 MOVE ago.) The next MOVE never uses the SUBWAY (otherwise, the thief would never get away from the subway.).
For each MOVE, if the thief has just moved onto a DOOR or WINDOW, the thief will continue through to the other side.
For each MOVE, the thief can move up to 2 board spaces in any direction (including diagonally) to land on a numbered space. If the thief steps onto the street during a MOVE, the thief will stop on a street space; in other words, the thief cannot leap across the street into the door or window of another building in a single MOVE. This establishes the set of available spaces.
For each MOVE, if there are 1 or more available unused indoor CRIME spaces, the thief will choose randomly from among them and move to it (TODO: don't consider the NEWS STAND an irresistible crime space.). A used indoor CRIME space is considered a FLOOR space until it is restocked, and a used outdoor CRIME space (the NEWS STAND) is considered a STREET space until it is restocked (TODO: currently it's considered a floor space.). Indoor CRIME spaces are restocked when the thief leaves the building (TODO: implement restocking.); the NEWS STAND is restocked after the thief COMPLIES with a CORRECT ARREST.
For each MOVE, the thief will never move into a numbered space where the thief was last turn, a direct U-turn. (But the thief can move into a space where the thief was 2 turns ago, making a triangle.) (Remember that a CRIME space turns into a FLOOR or STREET space until the CRIME space is restocked.)
For each MOVE, if none of the above rules have determined the thief's movement space, the thief will choose one of the available spaces randomly.
(TODO: implement arresting.) After an INCORRECT ARREST, the thief will do nothing.
After a CORRECT ARREST, the thief will either COMPLY or RUN.
(TODO: implement running.) For each RUN, the thief will MOVE 5 or 6 times.
TODO: add styling/formatting so this text doesn't look so atrocious.
TODO: implement TIP.
TODO: show building number where thief is located.
TODO: persist state through refreshes.
TODO: allow starting a new game (without refreshing the page).
Probabilities (TODO: changing these values currently has no effect.):