Seed: Fourth World revisited

LogoWhen I last published this hack of Dungeon World to the Earthdawn setting, I claimed that it was as complete as I intended to make it. Apparently, that was a lie.

This version (1.3) remains much like the previous version, with the following changes:

  • Bonds have been replaced with flags, an idea from Rob Donoghue. This necessitates changing some other things, such as the Aid and End of Session moves. Disciplines now have a “suggested flags” section rather than a bonds section. All references to Dungeon World-style bonds removed and moves that mentioned them changed. (This turns out to solve a problem: version 1.2 also used the word “bond” to refer to weaving a thread into someone or some place. It still means that in 1.3, but is no longer ambiguous.)
  • A lot of people wondered what happened to the idea of karma from Earthdawn. It actually was there in version 1.2, it was just called what Dungeon World calls it: “preparation”. I gave in and switched to calling it karma in this version, even though the term as used in Earthdawn bears little resemblance to what the word actually means. Still, this change should help Earthdawn players who are looking for it. Also, it has always been the intent to make preparation/karma significantly more useful and present than it is in standard Dungeon World (where it is so useless that, I’d wager, most players aren’t even aware it exists), so this change should differentiate it even more.
  • Most of the disciplines were tinkered with a bit. This is particularly true of the air sailor, as that playbook is significantly based on the aid move and, therefore, was previously based on bonds. In general, the number of “plus something to something” moves has been reduced, as have the (already small) number of moves that dictate what happens on a miss. All of the disciplines remain based around two stats, but a few now have a better balance of moves between those two stats than they did before.
  • I took a crack at building character sheets. These are experimental, continuing my dabbling with legal sized paper. (The aspect ratio of legal paper falls between 16:9 and 16:10, the typical aspect ratios of nearly all modern laptops, so landscape legal pages fit very nicely in full screen.) It’s also the largest paper that most home printers in the US can easily support. For those in places where the only aspect ratio for paper you can easily buy is based on the square-root of two (the ISO 216 standard), shrinking these sheets onto A4 is probably your best bet, but probably not entirely satisfying. Each playbook is formatted to fit on a single side of once piece of paper (spell casters also have a separate spell sheet).
  • Debilities now inflict -2 instead of -1. This makes them more…debilitating, and forces them to be taken a bit more seriously. They can often be glossed over, forgotten in standard Dungeon World.
  • A number of rules have been changed or tweaked. Magicians can now get a fifth spell matrix, for example, and move triggered when someone aborts a spellcasting attempt has been added. Swordmasters can no longer become immune to stuff. Fireball is a bit different. Changed a warrior’s “carnage” to “impetus” and altered the way it worked and is explained a bit. Addressed monster tags better. And so on.
  • Some added gear, magic items, mounts, monsters and so on.

This is probably the last revision I’ll do of this hack. Maybe not. Anyway, you can download the lot, including InDesign sources, here:

Seed: Fourth World

LogoSince its creation in 1993, the fantasy world of Earthdawn pushed my buttons. Now, the recent kickstarter to fund the game’s fourth edition has rekindled my enthusiasm for the game. Yet, as eagerly as I backed the kickstarter and long to play in that world again, my interest in going back to those mechanics, even in updated form, approaches zero.

Therefore, this seed, suggesting ways to alter Dungeon World to fit into this rich high-fantasy setting. Like all DivNull Seeds, this one isn’t fully grown. If it plants a fire in your belly to do something with the idea, go for it. But, please, share what you make of it with the rest of us.

This hack sticks to the standard Dungeon World rules as much as it can, but all of the standard playbooks (Fighter, Thief, etc.) have been cut up and reassembled into the fifteen Earthdawn disciplines, adding custom bits to fill in the gaps. Had this work not largely been completed before the release of Class Warfare, the disciplines would probably have been built using those more modular rules instead. I contemplated going back and redoing them all, but by then the disciplines had sort of mutated into their own thing and it didn’t seem worth changing.

If you want to have a go at this hack, here are some possibilities you might try:

  • Actually do use Class Warfare to make the disciplines.
  • Instead of shuffling around existing moves, rebuild each discipline from he ground up, based more strongly on the Earthdawn originals.
  • Expand the hack with conversions of Earthdawn monsters, mounts, ships, relics, etc.
  • Convert more existing Earthdawn adventures to fronts.
  • Expand areas that I glossed over a bit, like horrors, blood magic or astral space.
  • Build obsessions (compendium classes) based around species or nationality or whatever else.
  • Anything else.

As I do not plan to do any of the above myself, I’m making the source files (except the fonts, which I lack the rights to distribute) available as well. Post a comment here if you turn them into anything You can download the lot here:

Update: A more recent version of this document exists here.

Giving LPub an ability it should already have

The open source LPub is an application that lets you publish instructions for LEGO models from LDraw data, primarily as PDF files. One of its nice additional features is the export of pages as PNG files. While functional, this export doesn’t properly support transparency. Since PNG files do support transparency, this is a bit irritating.

There is UI to set the background, and it has a “none” choice, but using it results in a solid white background instead of a transparent (or, worse in older versions, to a solid black background). Another choice is to use a background image, so you can try to fake out the application by setting the background image to a PNG that is nothing but transparent. The program allows this, but when you export the result, you see the art for each page layered on top of each other (clearly, the app is not clearing a buffer between pages).

Over a year ago, I submitted bugs for both of these problems to the LPub team (here and here). As of this writing, neither of them have been assigned to anyone, much less fixed.

So, I decided to fix it myself. Getting the code downloaded and built in XCode took several hours, and would have taken even longer had I not found the very useful “Compile LPub4 using XCode on Mac OS X” post by Mark from More than just bricks. I had to tweak a couple other things to get it to work, but nothing too drastic.

Knowing nothing about how the code worked and very little about Qt, the GUI package it uses, it took a couple of hours figure out where to make the fix and getting it working properly. The main trick is to add QPixmap.fill(Qt::transparent) in a key place in Gui::exportAs. The rest of the changes are just slight alterations to the UI. Not many changes needed, and maybe I missed something, but seems to work for me.

A patch containing my changes was made against the current head of the project’s CVS tree. I have submitted it to the LPub team. I will update this post if it gets included in a release.

Altering NFL Gamecenter to use entire screen

The NFL’s Gamecenter allows tracking of games that you can’t see on TV due to dumb networks or socialist rules. If you have more than one person viewing the game, what you might like to do is put a laptop on your coffee table to show one game, while everyone watches another. Unfortunately, the layout of the page that tracks games does not lend itself to this. It has at least the following problems:

  • Default fonts are too small.
  • Using the “larger font” menu choices improves some small fonts, but not others. Two of the main components of this screen are Flash files, so do not respond to this switch.
  • Advertisements take up a good portion of the prime real estate of the screen.
  • The screen doesn’t scale when you make your window wider, instead using a fixed-width, centered layout.
  • Large sections of the screen are essentially useless for tracking the game (such as the header), meaning you need to scroll carefully to optimize viewing of the interesting stuff.

On a 15″ MacBook Pro (1440×900), with a maximized screen (dock on the right), the result looks like this:

nfl-gamecenter

Fortunately, the HTML markup of this page is reasonably good for altering (mostly because all the divs have ids), so it is possible to override the CSS for the page to fix most of these problems. Some browsers allow you to override the style of a page out of the box, but the process for doing this is fairly obscure for Firefox. A much more user friendly method for overriding a sites CSS using Firefox is to use a plugin called Stylish. This adds an icon in the lower right of your browser window that allows you to muck with the styles of the page you are viewing.

When you use CSS to alter a page, you are somewhat restricted by how good or bad the HTML of the page you are trying to alter is. While you can get extremely cute with CSS selectors, sometimes there just isn’t anything you can do. Fortunately, most of the things you’d like to do to the Gamecenter site are possible. There are a lot of ways you could hack it, but what follows will alter the game tracking pages to look something like this:

nfl-gamecenter-hack

To do this in Firefox, do the following:

  1. Install Stylish.
  2. Navigate to the NFL Gamecenter page of the game you want to see.
  3. Click on the Stylish icon in the lower right of the browser window.
  4. In the menu that pops up, select “Write new style → For this URL…”.
  5. In the dialog that comes up:
    1. Name the style something like “NFL Gamecenter”.
    2. Add some tags, such as “NFL”.
    3. Replace the script with the code below.
  6. Click “Save”.

Now, any time you go to the Gamecenter part of the NFL site, you’ll see this hacked version. If you need to turn this off, you can click on the Stylish icon and select “Turn all styles off”. Also, unless you are using the exact screen size mentioned, you may need to tweak the CSS to match your screen. If you know CSS, there is nothing particularly surprising in the code of this alteration. Also, there is nothing in the code that is tied to Stylish itself; the same CSS should work for any other way of overriding the page style that you can come up with.


@namespace url(http://www.w3.org/1999/xhtml);

@-moz-document url-prefix('http://www.nfl.com/gamecenter/') {

/* Hide extra headers and stuff */
#hd-micro-nav-list, #hd-micro-nav-list, #tl, #header-content, div.tab-list-wrapper, 
#gc-shop, #gc-discuss, #gc-track-search-ads, #gc-rr, div.w, div.t, #br, #gc-photos {
  display: none !important; 
}

#hd {
  width: 1000px !important;
}

div.c {
  background: transparent !important;
}

/* Hide advertisements */
div#dc-header {
  display: none;
}

/* Left justify everything by default */
#com-nfl-doc, #hd {
  text-align: left !important;
}

#doc {
  margin: 0 0 !important;
}

#doc-wrap {
  padding-top: 0px !important;
}

#hd {
  height: 70px !important;
}

/* Scale the Flash file of the game scores, to make the font larger and 
    reach across the screen. */
#hd-scorestrip-swf {
  height: 70px !important;
  width: 1380px !important;
}

#gc-team-stats {
  position: fixed !important;
  top: 70px !important;
  left: 990px !important;
  width: 380px !important;
  height: 280px !important;
  overflow: visible !important;
  z-index: 300 !important;
  padding: 5px !important;
  background-color: white !important;
  border: solid 1px #ddd !important;
  font-size: 14px;
}

#gc-last-score{
  position: fixed !important;
  top: 360px !important;
  left: 990px !important;
  width: 380px !important;
  height: 73px !important;
  overflow: visible !important;
  z-index: 300 !important;
  padding: 5px !important;
  background-color: white !important;
  border: solid 1px #ddd !important;
}

#gc-last-score h2 {
  width: 380px;
}

div.widget-inner {
  background-repeat: repeat-x !important;
}

#gc-current-drive {
  position: fixed !important;
  top: 450px !important;
  left: 6px !important;
  width: 760px !important;
  height: 335px !important;
  overflow: visible !important;
  z-index: 300 !important;
  padding: 5px !important;
  background-color: white !important;
  border: solid 1px #ddd !important;
  font-size: 16px !important;
}

#gc-current-drive-window {
  width: 750px !important;
  height: 320px !important;
}

#gc-current-drive-scroll-bar {
  height: 320px !important;
}

#gc-current-drive-scroll-track {
  height: 300px !important;
}

#gc-top-performers {
  position: fixed !important;
  top: 450px !important;
  left: 785px !important;
  width: 575px !important;
  height: 335px !important;
  overflow: visible !important;
  z-index: 300 !important;
  padding: 5px !important;
  background-color: white !important;
  border: solid 1px #ddd !important;
  font-size: 16px !important;
}

div.span-4 {
  width: 280px !important;
}

}

The makers of Stylish allow uploading of scripts like this; however, their “new account” feature is broken as of this writing. Once this is corrected, this page will be updated with a link to the “official” version of this script, which should make installation even easier. It has been posted here: Stylish script for NFL Gamecenter