I have written and released software for running games of Flamme
Rouge by
forum.
It's a very good game for play-by-forum, because there's only one
round-trip per turn (and round-trips from player to moderator are the
thing that slows down PBF games): player sees their hands, player
makes their plays, once all plays are in the riders are moved and
start again. (I have made a small optimisation which relies on the
players to follow the rules: the messages to the players show both
their riders' hands, hidden separately, and they need to remember to
choose one rider, look at their hand, choose a card, and only then
look at the other.)
Some people expect this kind of game assistance software to be one
great monolithic block, as it would be if it were designed to be
played in real-time. That's not the way I work; this is more of a
bunch of little programs flying in close formation (with some shared
code). The Linux command line is where I spend most of my time
already…
So for example there's one program that has the specific job of "take
the cards played by a single player, verify that they're valid, and
record them". That's all it does; then it dumps me back to a command
prompt.
Another program produces an image of the current state of the track,
using an internal vector system to produce a bitmap at whatever scale
is wanted. (I'd have done them in SVG, but it's painfully hard to
merge one SVG file into another with exact placement.) The curved
sections are drawn with straight edges, because it was easier to get
up and running quickly – but also because the correct placement of a
rectangular marker on a small curved space to minimise overlap with
other spaces is not at all obvious.
This part actually produced most of the potential complications: I'm
using icons for weather (from the excellent game-icons.net) which are
CC-licenced, but because it's not always obvious just where a section
of special terrain begins or ends (because, for clarity, my rider
images take up most of the space in which they're placed) I also used
some British road signs. I thought I'd have to replace them for the
release. But it turns out that the Highways Agency document "Know Your
Traffic Signs" (which has all these signs in vector format, so I can
trivially pull them out in Inkscape) is released under the Open
Government Licence, so I can use them in public too.
All the game state is stored in YAML files (I like YAML, at least the
sane parts without the encoded-object extensions), and every change in
state produces a new file, so I have a full history of the game to
look through.
All the rules are supported, including the weather from the Meteo
expansion. (Probably the most complicated rule, certainly the bit that
had most bugs, is slipstreaming, which is rather simpler on the
table.) The unofficial Grand Tour rules are also in play, so you can
run multiple races in a row and get intermediate and final standings.
Doing this also meant coding up all the courses I could find,
including some promo courses of which I don't have physical copies. If
I'm missing any, let me know. But you can design your own too; the
software uses the same notation as the course cards.
There's no support for bot players yet, nor any for Time Trial mode
(which I've never played). Some time soon maybe.
The code is on Github.
Comments on this post are now closed. If you have particular grounds for adding a late comment, comment on a more recent post quoting the URL of this one.