I've now uploaded a rough version of my Open Source Python library/helper code for very rapidly prototyping card game images for playtesting, PythonProtoCards.It includes my sample "CodyCards" game and sample use of the code to generate the cards for it.

The PythonProtoCards library provides classes and functions that are useful for rapidly prototyping *printed* card games.

The library makes it possible to programmatically create lots of cards quickly. It helps you divide up work into different steps, so that you can manually create and edit game piece data or automatically generate it programmatically, and then generate printable images for this card and piece data. The data file format is designed to be very easy for humans to edit, but also parsable by code, which can load the data, modify it, and write out newly modified files, almost like a minimalistic database. This makes it easy to programmatically modify or add to existing data files that will also be hand edited.

The focus here is on very rapid prototyping (rather than pixel-perfect laytout control) so you'll find things like functions for automatically scaling text and images to fit within specific regions, text-wrapping, etc.

By interfacing with the Python Imaging Library (PIL), the PythonProtoCards classes can quickly generate large numbers of nice looking card images, and even lay them out for printing on card template sheets.

See the samples/codycards directory for a sample card game and scripts to create cards programmatically, and sample images

Please note this is an early release intended for programmers. I would very much like to extend this work to a full-featured tool for game designers, and even extend it to support online playtesting. If you are interested in seriously funding such work, please get in touch with me.

When prototyping games I have always laid out cards on a portrait page 3x3 as I then get 9 per page rather than 8. Just a thought!

I would dearly love to see a good card prototyping environment developed, and would even lend a hand if I could. I most recently looked at NanDeck, but was quickly turned off as it seemed rather clunky.

That's a much more elegant way to do things than the Quark Express template I once created to do something similar back in my graphic design days.

Ever consider doing a design analysis of how you created your codebase for this, and possibly turn it into a tutorial series or book? Learning something like Python by doing a working project with it would be a nice thing to see. That's always been a problem with most coding instruction IMO. You learn a lot of great stuff. But you're often left wondering what to do with it once you have learned it. Because it's one thing to learn all the the pieces and code small parts. But it's quite another thing to then be able to pull all those pieces together into an actual project or a full blown app. Most coding instruction teaches you how to do something. But it's not too often that it shows you why or where or when to do it.

Who knows? Maybe DC could even start it's own book series. Why should O'Reilly get to have all the fun? (Or make all the nickles?)