Drunk Sim

Navigate from start to goal, with your arrow keys scrambled.

The game is played on a 5x5 board viewed from above. Tiles on the board either consist of some walkable segment, the goal, or a hole. The player uses the arrow keys to navigate along the walkable path from start to goal, avoiding any hole tiles, with the caveat that the arrow keys are scrambled. Once the player arrives at the goal or falls into a hole, a new random path is generated, the arrow keys are re-scrambled, and the player resets to the start of the path. The game is perpetual, with the player's score determined by how many goals they reach.

Gameplay

Start: At the start of the game, the arrow keys are scrambled, and the player is placed on a board where all tiles are walkable. The intent of this to allow the player to practice playing with the scrambled keys. After 5 seconds, a starting position is chosen randomly among the tiles at the edges of the board, and a path is generated with the goal state at the end of the path. Path generation proceeds by performing DFS until all tiles are visited, ignoring any tiles that were backtracked. The player's position is then reset to the start of the generated path.

Movement: When the arrow keys are pressed the player moves one cell in the indicated direction (post-scrambling). Note that if the player moves in a direction that would bring the player off the board from the start position, the player stays in the same position.

Finish: Once the player lands on the goal, the round is finished and the level is regenerated as described above.

Drawing: The board is drawn with a skewed orthogonal projection so that the walkable segments appear to stick up slightly and the Y axis shears slightly left. Walkable segments should occupy only a portion of the tile as depicted, and should be smoothly shaded and use pastel colors. The flat areas of the walkable tiles, as well as hole tiles, should be colored black. Score should be indicated by drawing goal stars to the left of the board.

Assets

Basic meshes are provided in this drunk_sim.blend. Blend file is based on stickochet.blend