lostcities: An implementation of an adictive two-player card game

[ game, program ] [ Propose Tags ]

Based on the card game designed by Reiner Knizia. In this implementation you play against the computer.

[Skip to Readme]


Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees


  • No Candidates
Versions [RSS] 0.1, 0.2
Dependencies array, base (>=3 && <4), containers, haskell98, mtl, wx (>=0.11), wxcore (>=0.11) [details]
License LicenseRef-GPL
Copyright (c) 2009 Pedro Vasconcelos
Author Pedro Vasconcelos
Maintainer pbv@ncc.up.pt
Category Game
Home page http://www.ncc.up.pt/~pbv/stuff/lostcities
Uploaded by PedroVasconcelos at 2009-11-21T23:38:03Z
Reverse Dependencies 1 direct, 0 indirect [details]
Executables lostcities
Downloads 1863 total (2 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs not available [build log]
All reported builds failed as of 2016-12-30 [all 7 reports]

Readme for lostcities-0.2

[back to package description]
Lost Cities

This is an implementation of a short two-player card game
in Haskell using the wxWidgets GUI toolkit.
This program allows you to play against a computer AI using
a minimax algorithm with alpha-beta prunning (based on
Bird and Wadler's presentation in the "Introduction
to Functional Programming"). 

The game is played with a deck of cards numbered from 2 to 10
in 5 colors plus 3 "investment" cards for each color (marked with a 
multiplication sign). The game progressed by playing cards
in columns of same colors of increasing value ("expeditions"); 
starting a new expedition costs -20 points and the played
cards are summed; the investment cards multiply the result
(positive or negative).

Crucially, the computer AI does not "cheat": unknown information
(i.e., the opponents hand and draw deck) is hidden
by considering possible scenarios that are compatible
with the known information. It seems to play only moderately well,
but still better than some online AI opponents I tried.

For more details check the Boardgamegeek page:

If you have any comments please drop me a line,

Pedro Vasconcelos
Department of Computer Science
Faculty of Science, University of Porto, Portugal