Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Newer
Older
100644 101 lines (71 sloc) 3.142 kb
30fa3c3 @masak added README and LICENSE
authored
1 Druid is a connection-oriented board game created by Cameron Browne.
2
44f9727 @masak [README] updated
authored
3 This is how a typical board might look:
4
5 A B C D E
6 +-----+-----+-----+-----+-----+
7 5 | | 5
8 |+-----+ +-----+ |
9 /| h h | + /| v v | +
10 4 || h h | || v v | | 4
11 |+-----+-----+ |+-----+ |
12 /-----/| v v | /-----/ +
13 3 | || v v | | 3
14 | |+-----+ +-----+ |
15 + /-----/ /| v v | +
16 2 | +-----+-----+-----+
17 | +-----/| h h h h h h |
18 + /| v v || h h h h h h |
19 1 | || v v |+-----+-----+-----+
20 | |+-----/-----/-----/-----/
21 +-----/-----/-----/-----/-----/
22 A B C D E
23
30fa3c3 @masak added README and LICENSE
authored
24 Rules and a bit of strategy can be found at
25 <http://www.cameronius.com/games/druid/>.
26
44f9727 @masak [README] updated
authored
27 Druid presently only runs with the old branch of Rakudo, known as 'alpha'. It
28 is recommended to install the 'alpha' branch (or the January 2010 release)
29 and to make sure the installed executable is called 'alpha'.
30
0279aa0 @masak added new instructions in README
authored
31 Instructions on getting Druid running:
32
33 * Get Rakudo.
34 * Set some environment variables.
44f9727 @masak [README] updated
authored
35 * Call 'alpha druid'.
0279aa0 @masak added new instructions in README
authored
36
b741e23 @masak [README] added proto install instructions
authored
37 There's also a an installer called 'proto' that you can use to install druid;
38 see 'Installing via proto' below.
39
0279aa0 @masak added new instructions in README
authored
40 == Get Rakudo
41
42 You need Rakudo to run the Perl 6 code in Druid -- instructions
43 here: <http://www.perlfoundation.org/perl6/index.cgi?rakudo>.
44
04d5735 @masak fixed typo in README
authored
45 == Set some environment variables
0279aa0 @masak added new instructions in README
authored
46
47 export PERL6LIB=/your/path/to/druid/lib
48
49 == Call 'perl6 druid'
50
51 Yup, you're ready to go.
9ac7869 @masak [README] added running instructions
authored
52
44f9727 @masak [README] updated
authored
53 % alpha druid
54 % alpha druid --size=10 --computer=1
55 % alpha druid --help
0279aa0 @masak added new instructions in README
authored
56
8918eb5 @masak enabled build of the modules in lib/
authored
57 == For those who want to compile things
58
b948462 @masak added a little more text to README
authored
59 (After all, compilation does make startup a little faster.)
60
44f9727 @masak [README] updated
authored
61 % ufo
8918eb5 @masak enabled build of the modules in lib/
authored
62 % make
63
b741e23 @masak [README] added proto install instructions
authored
64 == Installing via proto
65
ddab24d @masak [README] more about installing via proto
authored
66 Proto is a no-fuss installer of Perl 6 projects. One of the advantages of this
67 way of installing Druid is that if you don't already have Rakudo Perl 6, proto
68 installs it for you.
69
b741e23 @masak [README] added proto install instructions
authored
70 1. Get proto from <https://github.com/masak/proto>
71 2. Run './proto' and optionally review the settings in the created config file
72 3. Run './proto install druid'
ddab24d @masak [README] more about installing via proto
authored
73 4. 'export PERL6LIB=`pwd`/projects/druid/lib'
74 5. 'cd projects/druid'
b741e23 @masak [README] added proto install instructions
authored
75
ddab24d @masak [README] more about installing via proto
authored
76 ...and you're ready to run. See "Call 'perl6 druid'" above.
b741e23 @masak [README] added proto install instructions
authored
77
637c4c5 @masak [README] added list of future plans
authored
78 == Future plans
79
80 * Add an SVG renderer.
81
82 * Work on the machine play. (It's currently random, but I have some fairly
83 nice ideas lying around in a local branch.)
84
3480edc @masak [README] added some more plans
authored
85 * Put in a few optimizations to make Druid::Game::possible-moves O(1)
86 instad of O($n**2) ($n being the size of the board), as it is presently.
87 In another language, the difference might not actually be noticeable, but
88 Rakudo Perl 6 is very "speed-sensitive" right now.
89
90 * Make the web app do POST requests instead of GET requests. This is more in
91 line with the idea of making a move, a non-idempotent action.
92
2c02e2a @masak [README] one more plan
authored
93 * Make the web app handle different simultaneous games, played by distinct
94 users. This will likely require a real databse instead of the short-term
95 file solution used now.
96
0279aa0 @masak added new instructions in README
authored
97 == License
9ac7869 @masak [README] added running instructions
authored
98
30fa3c3 @masak added README and LICENSE
authored
99 This Druid implementation is released under Artistic 2.0. See LICENSE.
100 Permission to release the game graciously given by the game author.
Something went wrong with that request. Please try again.