A Rush Hour game made with Cakelisp
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
Macoy Madson 0d34e29448 Got board loading working 3 years ago
Dependencies Auto-calculate board size 3 years ago
assets Auto-calculate board size 3 years ago
data Auto-calculate board size 3 years ago
src Got board loading working 3 years ago
.gitattributes Added phone specs and dot git files 3 years ago
.gitignore Relocate executable to be in kitty dir 3 years ago
.gitmodules Added phone specs and dot git files 3 years ago
Build.sh Got image rendering set up 3 years ago
COPYING Initial commit 3 years ago
LICENSE Initial commit 3 years ago
ReadMe.org Got Kitty building 3 years ago

ReadMe.org

Kitty Gridlock

This is a project for V. She loves Rush Hour puzzles. For her birthday (April 2021), I have a goal to make a Rush Hour player for her Android phone, using my Cakelisp and GameLib tools.

I am using Michael Fogleman's Rush Hour database (archive.org) in order to provide her tons of puzzles.

Database format

(The following text is copied from Michael Fogleman's Rush Hour database (archive.org), for easier reference)

The database is a simple text file with just a few columns. There is one row for every valid (solvable, minimal) cluster. The columns are: number of moves, board description, and cluster size (number of reachable states).

The board description is a 36-character string representing the state of the unsolved board. It is a 6x6 2D array in row-major order. The characters in the description follow these simple rules:

  • o empty cell

  • x wall (fixed obstacle)

  • A primary piece (red car)

  • B - Z all other pieces

I used lowercase o instead of periods . for the empty cells in the database so that the entire board description can be selected with a double-click.

An example board:

60 IBBxooIooLDDJAALooJoKEEMFFKooMGGHHHM 2332

Target device

V has a OnePlus 6T Android phone with the following specifications (from here):

Thing Value
Display Type Optic AMOLED
Display Size 6.41 inches, 100.9 cm2
Display Resolution 1080 x 2340 pixels, 19.5:9 ratio (~402 ppi density)
CPU Chipset Qualcomm SDM845 Snapdragon 845 (10 nm)
CPU Octa-core (4x2.8 GHz Kryo 385 Gold & 4x1.7 GHz Kryo 385 Silver)
GPU Adreno 630
RAM 8GB
Android Version 10

The two main specs I need to care about are Android Version and Display Resolution. Additionally, AMOLED hints that pure black is going to look nice.