Game-RoyalUr The Royal Game of Ur: a race for two players on a board of twenty squares, about 4,600 years old. Each side has seven pieces, throws a handful of two-sided dice, and moves one piece that many squares along a route that crosses the other side's. This distribution is the game, an opponent for it, and a program to play it in a terminal. use Game::RoyalUr; my $game = Game::RoyalUr->new(seed => 'any bytes at all'); until ($game->is_over) { my @moves = $game->legal; $game->play($moves[0]); } print $game->result->winner, " wins\n"; Or, from a shell: royalur royalur --rules masters --level 2 The rules of the game are lost and every set is a modern reconstruction. Two are played here by name: finkel, proposed by Irving Finkel of the British Museum, and masters, proposed by James Masters. Every throw of the dice follows from a seed, so a game can be recorded and played again exactly. The engine is C, with no floating point in it; the opponent looks ahead through the dice and is bounded by the number of positions it may look at, never by the clock, so it makes the same move on every machine. INSTALLATION A C compiler is needed. To install this module, run the following commands: perl Makefile.PL make make test make install It requires Object::Proto::Sugar. Term::ReadKey is recommended: with it the terminal program is played with the arrow keys, and without it by typing. SUPPORT AND DOCUMENTATION After installing, you can find documentation for this module with the perldoc command. perldoc Game::RoyalUr perldoc royalur You can also look for information at: RT, CPAN's request tracker (report bugs here) https://rt.cpan.org/NoAuth/Bugs.html?Dist=Game-RoyalUr Search CPAN https://metacpan.org/release/Game-RoyalUr LICENSE AND COPYRIGHT This software is Copyright (c) 2026 by LNATION . This is free software, licensed under: The Artistic License 2.0 (GPL Compatible)