masak / druid
- Source
- Commits
- Network (1)
- Issues (0)
- Downloads (0)
- Wiki (1)
- Graphs
-
Branch:
master
druid /
| name | age | message | |
|---|---|---|---|
| |
.gitignore | Thu Jan 29 07:29:28 -0800 2009 | |
| |
Configure | Mon Apr 06 01:22:50 -0700 2009 | |
| |
LICENSE | Mon Dec 22 04:06:05 -0800 2008 | |
| |
Makefile.in | Sun Apr 12 14:49:04 -0700 2009 | |
| |
README | Sat Oct 24 01:28:01 -0700 2009 | |
| |
bin/ | Sun Sep 06 14:38:43 -0700 2009 | |
| |
deps.proto | Sun Apr 12 02:50:39 -0700 2009 | |
| |
druid | Sat Apr 04 09:58:07 -0700 2009 | |
| |
lib/ | Mon Oct 12 07:53:35 -0700 2009 | |
| |
t/ | Thu Apr 02 14:44:16 -0700 2009 |
README
Druid is a connection-oriented board game created by Cameron Browne. Rules and a bit of strategy can be found at <http://www.cameronius.com/games/druid/>. Instructions on getting Druid running: * Get Rakudo. * Set some environment variables. * Call 'perl6 druid'. There's also a an installer called 'proto' that you can use to install druid; see 'Installing via proto' below. == Get Rakudo You need Rakudo to run the Perl 6 code in Druid -- instructions here: <http://www.perlfoundation.org/perl6/index.cgi?rakudo>. == Set some environment variables Put something like this in your ~/.bash_profile analogue: export PERL6LIB=/your/path/to/druid/lib export PARROT_DIR=/your/path/to/parrot alias perl6="$PARROT_DIR/languages/perl6/perl6" Remember to start a new bash process (terminal window, tab, whatever) or to re-source ~/.bash_profile: % . ~/.bash_profile == Call 'perl6 druid' Yup, you're ready to go. % perl6 druid % perl6 druid --size=10 --computer=1 % perl6 druid --help == For those who want to compile things (After all, compilation does make startup a little faster.) % perl6 configure % make Remember that you still need to set $PERL6LIB and $PARROT_DIR as above. The configure script will complain if you don't. == Installing via proto Proto is a no-fuss installer of Perl 6 projects. One of the advantages of this way of installing Druid is that if you don't already have Rakudo Perl 6, proto installs it for you. 1. Get proto from <https://github.com/masak/proto> 2. Run './proto' and optionally review the settings in the created config file 3. Run './proto install druid' 4. 'export PERL6LIB=`pwd`/projects/druid/lib' 5. 'cd projects/druid' ...and you're ready to run. See "Call 'perl6 druid'" above. == Future plans * Add an SVG renderer. * Work on the machine play. (It's currently random, but I have some fairly nice ideas lying around in a local branch.) * Put in a few optimizations to make Druid::Game::possible-moves O(1) instad of O($n**2) ($n being the size of the board), as it is presently. In another language, the difference might not actually be noticeable, but Rakudo Perl 6 is very "speed-sensitive" right now. * Make the web app do POST requests instead of GET requests. This is more in line with the idea of making a move, a non-idempotent action. * Make the web app handle different simultaneous games, played by distinct users. This will likely require a real databse instead of the short-term file solution used now. == License This Druid implementation is released under Artistic 2.0. See LICENSE. Permission to release the game graciously given by the game author.
