Tuesday, December 16, 2008

Notion: Creation-time versus Play-time

In computer programming, there is the difference between compile-time and run-time. To create a program, the author first writes the instructions in a particular programming language. But a computer does not understand those instructions directly; they must be translated into binary machine code relevant to that particular computer hardware. The translation from the author's source code to executable machine code is called compiling. Once an executable program has been compiled, it can then be run. It is during run-time that the program actually does what it was written to do.

While compiling, the compiler can do a lot of error-checking--making sure that the syntax is correct, confirming that the data types for different variables are correct, etc. It can also link in other libraries or modules. It can optimize the program so it runs more efficiently. Generally, the more error-checking done at compile-time, the fewer errors encountered at run-time.

Not all programs are compiled in a separate stage like this, however. Some are interpreted: translated into machine code line-by-line from the source code at run-time. (This is a spectrum, of course: many modern languages compile to an intermediate form and are then interpreted from that form at run-time.)

The point of all this is: there's stuff you can validate at compile/creation time, and then there's stuff you validate at run/play time.

This is the same for RPGs. Something like D&D is like a compiled language: it takes hours to translate levels and skill ranks and equipment lists into all the particular modifiers listed on a character sheet. This is not necessarily a bad thing: character creation and optimization can be a very enjoyable activity, especially for power-gamers. And, as with programming, the more error-checking of modifiers you can do beforehand means fewer errors during play time.

On the other hand, a game like Risus is rather interpreted. There's still some authorship beforehand, but characters are represented as cliches. How those cliches then translate into particular skills or feats is actually determined during game time.

Overall, I'm a fan of compiled over interpreted, both for my programming languages and my RPGs. There's an initial overhead, but things seem to run smoother if as many details as possible are composed and validated beforehand. But this is just a preference.

Hopefully this difference/metaphor proves useful when considering RPG design.

30 Years of Stupid D&D Monsters

While I may not agree with the lameness of every monster listed here (I have a soft spot for owlbears), this author does have a very good point:

Dungeons & Dragons: Celebrating 30 Years Of Very Stupid Monsters (note that there are 2 parts)

Just a humorous reminder to keep your critical evaluative functions engaged while reading your next RPG supplement--even if it does come from a big-name publisher.

Paizo's Pathfinder: The future of d20 3.5 [backlog]

Last week at the bookstore, I stumbled across Pathfinder Chronicles: Classic Monsters Revisited. This book takes 10 of the most common humanoid monsters of D&D--including kobolds, goblins, bugbears, hobgoblins, orcs, trolls, ogres, lizardfolk, gnolls, and minotaurs--and tries to bring a fresh take on each by going back through both D&D's Monstrous Manual history as well as the scraps of original folklore on which these creatures are based. Though I flipped through only casually, I was quite impressed with what I saw. It was all "fluff", rather than "crunch", but very nicely done. I plan to take a closer look next time I'm in, and possibly pick this one up. [Update: And so I did. I didn't agree with all the characterizations, but reading it forced me to clarify my own. And that's the whole point: encounters with different kinds of humanoids should be significantly different, or what's the point of having more 1HD and 2HD humanoid races other than just Orcs?]

I'd never heard of Pathfinder before though. Turns out it's the product of Paizo Publishing, who used to publish the Dragon and Dungeon magazines. They've released a Pathfinder RPG, currently in beta and downloadable as a free PDF (registration required). Pathfinder is based on d20 3.5 OGL rules, so it's basically like playing D&D 3.5. But they've gone through and tweaked a few rules, streamlined others (including some skills), and beefed up some of the standard classes (so you'll think twice about abandoning them for prestige classes). Again, I only skimmed through the PDF, but I liked what I saw. It was like reading through 3.5 when it first came out: mostly small changes from 3.0, but all that tweaked the game to be a little more fun and a little simpler to play.

Some of the things of note that caught my eye were the alternative to having animal companions and familiars; the many bloodlines that characterize sorcerers based on the source of their magic; 0-level spells are now unlimited at-will powers; grapple and other combat maneuvers are simplified; turning undead is more impressive and useful, acting more as a positive energy burst.

Paizo is also releasing a 96-page adventure every month, forming 6-month long campaigns that take characters from 1st to about 15th level.

All-and-all, I got the feeling that Paizo is providing a lot of support and vitality for the 3.5 rules now abandoned by Wizards of the Coast. If you're leery about taking up 4E just yet (or just want to get a little more mileage out of your collection of 3.5 supplements), don't feel like you've been left behind: check out Pathfinder.

On Licenses [backlog]

I've been doing a lot of coding lately. During my run this evening, I got to thinking about licenses and IP rights, and exactly what rights I should be worried about retaining on both my recent software and gaming rules projects. These are the conclusions I came to for me personally (so feel free to hold your own view).

Most licenses concern opening up copyright. As explored earlier, copyright doesn't cover ideas themselves, but only the specific instantiation of those ideas in a document or other physical form (including digital media).

You can protect processes with a patent, though that tends to limit the free exchange of ideas. For that reason, I'm personally not really down with patents--especially outside of physical manufactured devices.

You can cover distinctive and identifying names and images with a trademark. I think that's fair. This is product identity--how people recognize certain producers, companies, and products. Protecting your trademarks prevents others from trying to impersonate you in the marketplace or in the sharing community.

But the bulk of intellectual property is covered by copyright. While I'm opposed to restricting the flow of ideas, I do see that it's fair to protect the work that goes into instantiating that idea into a particular form. (I think that the default copyright duration is too long though, but that's another post.) As soon as you create a physical (or digital) work, it's automatically protected by copyright, and others are not allowed to copy, modify, or redistribute it without your permission. However, various licenses have sprung up to allow you the ability to grant others permission to do some of these things, provided they adhere to certain restrictions. The thing I got to thinking about on my run is: which of those restrictions do I want to enforce for my works?

After visiting Creative Commons again, and reading the new GPLv3, here's what I've been thinking:

Attribution. I like this. I would want credit for the time and effort I put into a work, even if others then go on to build on it or change it. Interestingly, all the CC licenses include this option, so apparently this is a common human response to want credit. For game rules, the OGL does a nice job of ensuring this at a basic level by requiring modifiers to retain the copyright notices of all previous contributors.

For software, I find the GPL to be a little vague on this requirement. Presumably, "publish[ing] on each copy an appropriate copyright notice" refers to the original author's notice. Also, though the "work must carry prominent notices stating that you modified it", it doesn't explain or give examples of how this might best be done. (They give example for new programs, but not for modified ones.) Perhaps modifiers don't merit their own copyright, since they are producing a derivative work? That doesn't seem entirely fair though. Version 3 of the GPL allows certain other licenses to be enforced along with the GPL, so I would consider using CC's Attribution license with it in order to clarify some of these issues.

Non-derivative. For software, this would mean "non-free", since the user wouldn't be able to change and then publish the modified program. Since game rules are always tweaked based on the particular GM, I think those GMs should be free to then post those changes. This allows for an improving evolution of the system as a whole.

Where I could see restricting derivative works is in regards to what the OGL calls Product Identity: particularly, a campaign setting, world, or characters. The temptation is to prevent others from taking your carefully constructed vision and "messing it up". But, I think most people would be motivated to tweak a setting because they're fans of it, and would try to stay true to the basic spirit. I think opening it up would allow a setting of much greater depth (with many hands contributing to fill it out) and greater adoption in the larger community. And who doesn't want their world adopted by others? When combined with attribution, you'd still have some measure of "canon" control as original author. I can see why many would choose non-derivative for product identity, but I think there's some very good reasons to open it up.

Share Alike. This is what is really meant by copyleft: modifications of your IP must be just as available to others as the original material. For software, the source code for any published modifications must be released back to the community. Under CC licenses, it means the other terms of the license must also apply to modifications as well. I think this is very good idea--again, to encourage the exchange of ideas, to keep things open, and to allow evolution to something better. If my material gives someone a head start, I think they should pay it forward by letting their material boost someone else's efforts.

Non-commercial. This one I thought on the most. My first thought was: "If anyone's going to be making money off my work, it should be me!" But if I was really going to make money off of my IP, I probably wouldn't be giving it away free in the first place. Or I'd be making money off of it in different ways--such as associated product identity or support.

So, if I'm making it available for free, but someone else can think of some way of making money off it, it's probably because they've either added something valuable (derivative work) or are providing some extra service around it. Because of attribution, I'm still getting credit for the original idea. And because of their adoption and advertising of it, it's getting more coverage and support. And thanks to Share Alike, I'd be free to take their valuable additions and reincorporate them into the original and make money the same way they are--if I wanted to put in the effort to do so.

So while my gut response was to not allow commercial uses without a separate agreement (probably one involving royalties), I'm thinking now that--as long as I've got attribution (along with retaining any original trademarks or associated product identity) and share alike (with free access to their changes)--I may as well let others freely make money off it if they can figure out how.

Thus, I think the OGL, the CC BY-SA license, and the GPL (possibly with a supplementary CC BY license) are the best for me.

Monday, December 15, 2008


It's been a while. The hiatus was not due to a loss of interest in either RPGs or blogging. Instead, I've just been busy with other things, and so haven't had time for either.

This is a disappointing state of affairs. It seems each semester something gets neglected: usually either my research or my gaming. This semester, it was the latter (which, incidentally, had pretty good consequences for my research--I'm starting to implement Marlinspike now). Hopefully next semester it can be my TAing and grading job that's neglected--I could use some practice getting by with less time on that one.

RPGing has become part of my identity--a key feature of how I define myself. But this makes it all the sadder that I so rarely actually do it.

So it's time to get back to it all!

This evening during my run, I was thinking I might go back to the Monday gaming night at Ward Warehouse and rejoin my old D&D group there. It's been a year. Sometimes it was frustrating how slow things went, but at least it was playing. And lately I've been dragging my feet on things because I want more entertainment and less of the work involved with DMing and designing. I've even been pushing S. to try her hand at DMing.

Zludge still needs work. Getting back into D&D would be good just to index some of the irksome things that Drudge should strive to overcome. (Look for some Notion threads on those!)

But, if I just want to play, I do have a bunch of solitaire lying stagnant on scraps of papers and text files on my hard drive. Lately, I've been in a mood to play something, but RPGing just seems too daunting and time-consuming. Time to overcome that apathy.

So, in the spirit of revival, here are a few backlog posts from this summer that never made it up here.