Queah is an iOS app that lets you play the Liberian game of Queah against another player or the computer. The code consists of two top-level components:
- QueahEngine contains the core game logic and an AI capable of perfect play.
- QueahApp implements the iOS app.
The Queah engine is implemented in C++ and is accessed via a C API declared in QueahEngine.h. The engine was developed under Xcode on MacOS. However, the code is completely standards-compliant and should be easily ported to other platforms.
The API exposes two objects:
- QueahGame tracks game state and implements the game rules.
- QueahAI returns the best move for any game state.
There is a sample demonstrating how to call the API.
The AI relies on a precomputed solution file queah.dat that must be bundled along with the engine. The solution file is created offline by QueahSolver.
The Queah iOS app is implemented in Swift using SwiftUI and SpriteKit. For more information about the app, see the app store listing.