PyRisk 0.1

Python Risk engine with assorted player interfaces
PyRisk is a Python engine and interface for building games similar to the 1957 La ConquĂȘte du Monde by Albert Lamorisse (of "Le Ballon rouge / The Red Balloon" fame). The game is perhaps better known as Risk, and is produced by Parker Brothers (now a division of Hasbro).

Benefits over other open source implementations:

- simple, extensible implementation
- play-by-email

Getting PyRisk

PyRisk is available as a Git repository:

git clone http://www.physics.drexel.edu/~wking/code/git/pyrisk.git

The most recent commit is also available as a gzipped tarball at:

http://www.physics.drexel.edu/~wking/code/tar/pyrisk.tgz

Once you get the source, installation is via Docutils:

pyrisk$ python setup.py build
pyrisk$ python setup.py install


Getting started

To setup play-by-email, you'll have to have some method to redirect appropriate messages into a named pipe. With procmail, that will look something like:

:0
* ^Subject:.*\[PyRisk.*
{
 :0 wc
 /path/to/named/pipe

 :0
 | /bin/echo -e '\000' >> /path/to/named/pipe
}


The echo command appends a NULL byte to the FIFO, which (I think), helps the read() in _get_msg break at the appropriate point.

Once you have the procmail rule setup, just add your EmailPlayers to your game and go:

from pyrisk.base import generate_earth, Player, Engine
from pyrisk.player.email import IncomingEmailDispatcher, \
 OutgoingEmailDispatcher, EmailPlayer
from pyrisk.graphics import WorldRenderer
world = generate_earth()
ied = IncomingEmailDispatcher(fifo_path='/tmp/pyrisk.in')
oed = OutgoingEmailDispatcher(return_address='server@example.com')
wr = WorldRenderer()
players = [EmailPlayer('Alice', 'alice@big.edu', ied, oed, wr),
 EmailPlayer('Bob', 'bob@fish.net', ied, oed, wr),
 Player('Charlie')]
e = Engine(world, players)
e.run()
ied.close()

last updated on:
April 27th, 2011, 13:54 GMT
price:
FREE!
developed by:
W. Trevor King
license type:
GPL (GNU General Public License) 
category:
ROOT \ Games \ TBS

FREE!

In a hurry? Add it to your Download Basket!

user rating

UNRATED
0.0/5
 

0/5

Add your review!

SUBMIT