Page Collection for ^2008-09

2008-09-01 Encounters

Justin Alexander writes about Encounter Design and argues that a game master should add more easy encounters to the game, thereby speeding up the game as those fights take very little time to actually run:

There’s a sense that a lot of us develop that says “if hit points aren’t being lost, then nothing happened”. This isn’t actually true. And, in fact, if the PCs aren’t losing hit points the more stuff will happen.[1]

This is an interesting idea, as I’ve grown fond of spending the first part of a four hour session talking and the second part fighting. One big fight every Monday – that’s not a lot. So I’m pondering Justin Alexander’s advice.

My players are often astonished when the fight is not tough. I get players laughing “where are the REAL enemies!?” and people saying “uhh… but these monsters are a cakewalk!” So there are various vicious cycles in play, here:

  1. Tacticians feel bored with easy encounters
  2. Easy encounters are only fun if you roleplay your awesomeness – if you just roll dice, nobody shines
  3. During difficult encounters, powergamers shine
  4. Everybody is compelled to do a little powergaming because it pays off
  5. People start complaining about the lack of story, the lack of character, the lack of actualy roleplay, the combat focus

What should I do now?

The interesting part is that powergaming is a group culture phenomenon. Apparently all my players are perfectly capable of playing in non-powergaming campaigns. It’s just that within the context of my Monday group, things are out of control. Some sort of reboot will be necessary.

Instead of sitting down and “discussing” the issue, I feel like abandoning the D&D 3.5 rules and playing some M20 Hard Core. Here’s what I hope this will accomplish:

  1. It should eliminate the between-game powergaming as there is no Magic Item Compendium to read, no magic items to buy, no lengthy spell lists or monster manuals to study
  2. This takes away player control over the mechanics and forces them to trust the DM (me). I think this uncertainty will strengthen roleplay. I’m a bit concerned about player vs. DM discussions, however. I’m hoping for a more neutral “referee” position for the DM.
  3. It will force the issue of crunchy rules. Those players who enjoy the rules so much that they don’t want to play without them are probably better off in a different gaming group. A year or two ago I was not in a position to make an informed decision as D&D 3.5 was new to me. But now I think I made a fair effort in mastering the rules and I find that my mastery has not increased my enjoyment of the game itself.

When I talked to Marco about it he was a bit sceptical, but he had an excellent suggestions: Do some one-shots first. And that what I’ll do.

And I’ll definitely start planning for the end of my Monday game soon – level 15 is far enough. I assume we’ll do a small adventure or two, and then go for the nexus of Tiamat in the Cinder Hills.


Add Comment

2008-09-05 RSS 2.0 categories

This wiki produces a RSS feed that is aggregated by RPG Bloggers. They also auto-categorize entries. This requires the use of the RSS 2.0 category element.

Here’s what I added to my config.

*OldRssItem = *RssItem;
*RssItem = *NewRssItem;

sub NewRssItem {
  my $rss = OldRssItem(@_);
  my $id = shift;
  if ($OpenPageName eq $id) {
    my @categories;
    while ($Page{text} =~ m/\[\[tag:$FreeLinkPattern(\|.+?)?\]\]/og) {
      push(@categories, NormalToFree($1));
    my $result = join("\n", map { "<category>$_</category>" } @categories);
    $rss =~ s|</item>|$result\n</item>|;
  return $rss;

I’m not sure where to put this. Add it to Oddmuse:Indexed Search, Oddmuse:SearchTags Extension, Oddmuse:Blogging With Tags, or any of the other extensions that implement tags? Argh! Too. much. choice.


Add Comment

2008-09-05 occur

I really like M-x occur. It’s like grep for your buffers.

I also like C-s to search. Interactive search is great if you sort of know what you, and you just want the next, and the next, and one more. But usually searching ends up being a learning experience. After hitting C-s a few times you realize: I’m lost – there are too many matches.

You need M-x occur to get an overview. How to get from isearch to occur without loosing your search string?

(defun isearch-occur ()
  "Invoke `occur' from within isearch."
  (let ((case-fold-search isearch-case-fold-search))
    (occur (if isearch-regexp isearch-string (regexp-quote isearch-string)))))

(define-key isearch-mode-map (kbd "C-o") 'isearch-occur)

Hit C-o while you’re still in isearch.

The code will do the right thing both for C-s and C-M-s (which runs the command isearch-forward-regexp).

Also available on the wiki @ OccurFromIsearch.

Tags: RSS

Comments on 2008-09-05 occur

Also note that isearch-occur already exists in Emacs 23 (on `M-s o’).

– bojohan 2008-09-05 19:57 UTC

Yay! :)

AlexSchroeder 2008-09-05 21:42 UTC

Add Comment

2008-09-06 Kitsunemori Campaign Start

A long time ago I bought the Kitsunemori setting and started my Monday game in it. Here’s the setup I ended up with when characters were around level five. I’m proposing it for the next issue of Fight On! We were using the M20 rules at the time.

Player Map

Player Map
Player Map

Nikko is where the players start. They are on a pilgrimage to the Gassan shrine. A few farmers and fishermen live up here. The Chuzenji lake is very peaceful. There’s a shabby tea-house that offers a room for rent. Every night there’s gambling and drinking at the tea-house. The only merchant in town belongs to the Kawa clan that runs business along the Kako river.

Hakone is ruled by the Onishi clan. There’s a castle standing on an island in the middle of the river, connected to the city itself by a bridge. They hardly ever leave the castle. In addition to the rice farmers that work the inundated fields around the city there are a lot of lumberjacks that work the western forest.

Tobu is another little village belonging to the Onishi fief. There’s supposed to be a tomb to the famous warrior king Ueshiba in a swamp near the village. It is said that Ueshiba fought the last battle against the swamp things using a magic sword he had received from a tengu prince.

Kurobano is the regional capital three days to the south of Hakone. The Fudo temple in Kurobano is well known for the wisdom and power of its head priestess Katsuko.

Small Inari shrines dot the landscape.

First Adventure

First Adventure Map

A tengu (bird man) has kidnapped the merchant’s daughter. Up in the mountains the party can find a path leading up to the tengu’s mansion high above the Yunoko lake. In order to defeat it in combat they might have to befriend one of the two kitsune (fox men) living in the area. They are called Umisachihiko and Yamasachihiko and despise each other. Umisachihiko is interested in killing either the tengu, his brother, or both, or the party. Yamasachihiko is interested in helping the party but opposed to treachery and violence.

There are rumors of kujo (hill giants) to the north, but nobody knows whether there’s any truth to that.

Referee Map

Referee Map

Caves: The area across the river to the east of Hakone consists of swamp wilderness. There are reports of a black dragon living in the caves to the west.

Ruin: There is a ruined castle in the swamps to the north west of Hakone. As nobody likes to cross the Kako river, nobody has ventured there in recent years.

Hakone: The Onishi household is under the sway of a kumo (spider woman) that has charmed all the men. As the women are unaffected it might be possible to contact them within the village if the guards are distracted. The youngest son Shigeru has also been unaffected by the kumo’s charms and has been tied up in the tea house behind the castle, away from prying eyes.

Nikko: The Chuzenji lake houses several kappa that will attack anybody on the lake or on the forest roads at night.

Old Bridge: There is a big guesthouse near the old bridge because it takes more than a single day’s journey to travel on foot between Hakone, Nikko, and Tobu. All pilgrims and merchants stop here.

Morioka: The other powerful wizard in the area is Morioka. He lives in his tower in the forest with two apprentices. His speciality is thunder and lightning. He is not interested in war and destruction.

Kappa Lake: The lake houses three kappa (turtle men) guarding some treasure and a magic cold iron weapon which they hate and avoid like the plague.

Bato is a small village by the last imperial bridge. They believe themselves to be the last civilized village this far north.

Gassan is a holy mountain. There’s a famous shrine at the top. A long and winding stair leads up to the shrine. The locals only come here in times of need. Apparently a hermit lives up here somewhere but it has been years since anybody has seen him.

Musashi: In the hills north of Bato is a hidden old ruin. Musashi has managed to attract about a dozen bandits and is robbing lonely merchants and pilgrims.

Logger Camp: To the east up along the small river you’ll find a camp of lumberjacks. They work for the Kawa merchants in Hakone. Their incursions into the forests aggravate the forest spirits and now they are being harassed day and night.

Owlbears: There are many owlbears north of Tobu, but they keep to the mountains.

Goblins: The goblins living in the hills separating Nikko and Tobu are a nuisance but a guard or two will scare them away so there has never been a need to actually clear them out.

Forest King: There is a powerful treant that rules the wild forests to the east. There are many kappa with naginatas (glaives) and kitsune archers with powerful yumi (composite longbows) under his command. Apparently the Onishi clan has appropriated a horn of animate trees – a unique magic item that belongs to the forest king.

Ueshiba’s Tomb: In the middle of the swamps to the west of Tobu is an old stone mausoleum. There are secret passages into the wet underground tunnels if searched for long enough, Ueshiba’s magic sword of air and light can be found down here.

Tengus: These winged master swordsmen live up in the mountains. They care little for the affairs of men. A long time ago tengus were allied with men and fought against kappas and kumos, and other swamp things. But that was a long time ago.

Imperial Road: The ruined road is still visible after all these years. It runs south up to the Niemon Gap (not shown) where a robber baron has taken up residence in an old imperial guard tower.

Hobgoblin Gap: Further to the north is hobgoblin country. They are supposed to be great armourers. The hobgoblins worship the minotaur god Mithras in underground labyrinthine temples. There used to be a big war in the past and legend says that the swamp near Tobu is full of dead humans and hobgoblins.

Manabu: He is one of the two powerful wizards in the area. He is a dreadful necromancer and is currently raising a small army of zombies and skeletons from the swamps of Tobu. The ones that escape his control are sometimes found in the area around his tower. He has recruited three evil clerics of Izanami to lead the attacks against Musashi’s castle, Tobu, and Nikko.

Old Bridge: There used to be an old bridge connecting the imperial road with the Temple of the Moon but much of it has crumbled and these days the bridge ends half-way across the river.

Tobu: Should any heroes serve Onishi well, they shall be rewarded with a yearly stipend. Effectively they gain ownership of a few peasant families around here.

Temple of the Moon: This is a remote haven of sylvan happiness. The priests have many contacts all over the country. They fear that the hobgoblins to the north might be trying an invasion sooner or later. Moonlight is also associated with graveyards and the undead, but nobody up here seems to harbor such dark secrets.

Yusukami: There’s another feudal lord living up here in the north. Lord Yusukami has a daughter called Fumiko that might make a fitting bride for Lord Onishi’s son Shigeru. There are agents at work that want to prevent this from happening, however.


Comments on 2008-09-06 Kitsunemori Campaign Start

I’d love some peer review & editor comments on this piece. Let me know what you think, help me out with my typos and my grammar…

AlexSchroeder 2008-09-07 11:55 UTC

There’s also the lizard men and the elves near the swamp which fly around on owls… a hydra has taken residence somewhere too.

Presumably it’s on a big continent, because there is a desert far to the south.

Spelling error under Tobu: Should any heroes serve Onishi well…

– Marco 2008-09-07 14:23 UTC

That’s right. The elves on owls and the hydra are material from Red Hand of Doom which I started weaving into the story around level five, so I can’t resubmit that for a magazine. :)

Thanks for the typo note.

AlexSchroeder 2008-09-08 07:49 UTC

There was some story hook about this past shortage, and apparently someone is selling it on the black market. I remember we never went there…

– Marco 2008-09-22 15:10 UTC

Add Comment

2008-09-07 WikiSym

I’ll be in Porto for the next few days. Say hi if you see me! :)


Add Comment

2008-09-08 First Day at WikiSym 2008

Most of the day I spent at the Babel Wiki workshop.

I also spent dinner with eleven other people in the old town of Porto. (Porto Flickr Group) Porto’s old town is very old and signs of decay are everywhere. Having just finished the book about Inés de Suárez by Isabel Allende I see the signs of an old sea-faring colonial power everywhere.

I also had a chat with Mark Bernstein and others over a wide range of topics. Is Wikipedia governable? What papers to read in a graduate course on wikis? Andrea Forte asks back: “Just wikis?” Is there a point in developing alternatives to MediaWiki? At work everybody seems to know and want it to the exclusion of everything else. Mark was clearly opposed to that idea. The importance of non-web solutions for some hypertext applications. For example a spatial wiki where documents are represented by little colored notes that are dragged around the screen; in a collaborative environment you’d like that movement to be visible to other users in real-time. That’s hard to do using HTTP. Using Eclipse (or an application running inside a browser?) as a front-end to a wiki infrastructure to edit code. You don’t need to download the entire code base, you don’t need the development tools on our local machine, all the building happens on the remote machine.

I was also in an OpenSpace session on Wiki Security, but I didn’t learn anything new. Users still like audit trails and permissions tied to identity. I’m still not sure I need it. I pushed my own agenda arguing against Big Brother solutions and explained my spam fighting strategy: The idea is to always spend less time on it than the spammer. Always. If spammers drag you into an arms race, you just invest the minimal amount of energy to solve the problem. Avoid burnout at all cost.

See also:


Comments on 2008-09-08 First Day at WikiSym 2008

Interesting stuff, digesting.

GreyWulf 2008-09-09 00:33 UTC

Add Comment

2008-09-08 Free Dictionaries

The first part of the day I spent in the Babel Wiki 08 workshop. We listened to lightning talks, wrote ideas and question on pieces of colorful paper and organized them. And then we started our first breakout session and I joined the “free dictionaries” group.

We looked at the following sites:

We talked about various issues. One of the participants worked for Omega Wiki (which is based on MediaWiki) and pointed out the issues he thought were important:

  • user interfaces (free software in order to improve on them)
  • free software
  • data structures (eg. SKOS RDF)
  • mining, ie. bootstrapping the dictionary based on other sources (eg. Wikipedia, Wiktionary)

Stuff related to my own code:

  • Oddmuse language guessing and filtering of search & RecentChanges by language preferences
  • Translation support using the Oddmuse:Translation Extension. I should improve that and improve the user interface. Here’s an idea: For any page A, show a button “Translate” which asks you name a page B, if it exists and is already tagged as a translation of A, update the revision number. If it exists is not tagged as a translation of A, warn the user and ask whether to insert the translation tag anyway. If the page does not exist, create it with the translation tag.
  • I should make it easier to create and tag translations of pages in general. Assuming I still want to encourage Emacs Wiki to turn into a multilingual site.

Related pages:


Add Comment

2008-09-09 Emacs for OSX 10.3

I recently downloaded Emacs 22.3 and tried to build it from source. Too bad it didn’t work out of the box.

ld: /usr/lib/gcc/darwin/3.3/libgcc.a(_fixunssfdi.o) illegal reference to symbol: ___cmpdi2 defined in indirectly referenced dynamic library /usr/lib/libgcc_s.1.dylib

Too bad I don’t even understand the error message. The only C project I ever did involved a PBEM (GermanAtlantis). I stopped maintaining that a looong time ago.

Am I the only one still using Mac OS 10.3?

Well, I’m also a user of Mac OS 10.4 (“Tiger”) and unfortunately the CarbonEmacsPackage no longer provides up-to-date packages for old copies of OSX.

Some time ago I built libpng and have it in my /usr/local tree. But Emacs' ./configure did not find it. Weird. I tried all sorts of stuff. But then I finally decided to just go ahead and build it using ./configure --enable-carbon-app. And it worked. And Emacs was able to open PNG and JPEG files. Apparently the Carbon configuration doesn’t need the external libraries.


My Mac OS 10.3 build problem remains unresolved.

Tags: RSS

Add Comment

2008-09-09 Second Day at WikiSym 2008

George P. Landau

The morning started with a speech by George P. Landau on the development of the Victorian Web – a hypertext that started way before the Web. His basic premise: “the World Wide Web is essentially Hypertext 0.5.” I like it.

Stuff he mentioned about older hypertext systems:

  • One to many links – he really likes it
  • Previews of the target
  • Marking (highlighting) the relevant passage of a link target
  • Incoming and outgoing links
  • Concept map integration (eg. a graphic site-map)
  • Overlapping link anchors
  • Multi-window environments that permit both spatial hypertext and collage writing
  • Read-write medium (add links & texts) – apparently this is the only thing that wikis reintroduced! :)
  • Multiple versions of hypertext – personal and shareable; essentially links are stored separately from the text and can therefore differ between versions.
  • Backlinks – he really likes that, too
  • Backlinks also apply to named anchors, so it would show you a list of documents linking to your current document, and it would highlight the documents that had links to the particular region you’re currently at.

Systems mentioned:

He also went into the question of why the web turned into a killer application. He started with benefits compared to Gopher, continued on to embedding images, and mentioned some wiki benefits. These include wikis being a read-write form hypertext, wikis enabling intended and uninteded collaboration, enabling multiple points of view, offer expandable or extendable documents, allows for different hypertext genres, simultaneous emphasis on multiple approaches and unresolveable problems. Apparently a point of view not shared by Wikipedia.

The Victorian Web is actually not a wiki. It’s a website where the author encourages contributions via email. He doesn’t believe that the delay between submission and publication is a problem. Collaboration and discussion turn out to be submissions of separate but linked documents. This gives his site a static and stable appearance. Documents just… stay. A totally different contribution and discussion culture compared to what has developed on wikis.


Dan Ingalis

A talk about the Lively Kernel – a system using browsers, SVG, javascript, and no HTML, DOM, or CSS.

Draw objects, copy, drag, program, easy to create new primitive objects and add behaviour. Then use these to start creating a programming environment. Pick classes, look at methods, change them. Then implement a debugger & profiler based on that. All inside a “page” that loads pieces of Javascript. Loading, saving, as well as revisions are handled via WebDAV – my assumption being that this is what Subversion gives you for free.

Personally, I was most fascinated by the idea that this is in fact a SVG editor like Inkscape, written in Javascript, that has revisions. It’s awesome! We should switch the backend to a wiki (or use a wiki with WebDAV support available like Oddmuse or JSP Wiki) and just edit SVG stored on wiki pages!


Open Space

Too bad I didn’t find any really interesting sessions today. There was a session on the state of WikiCreole, companies hiring wiki gardeners and reportings on their excellent results. There was a session on distributed wikis collecting pitfalls but not finding any solutions.

I also spent some time sitting in the sun, doing nothing. I didn’t feel like listening to paper presentations because I usually feel that the authors aren’t good presentors.

There was an excellent bus trip through town, a boat trip up and down the river, and dinner at a restaurant. That really gave all of us another opportunity to talk to new faces, and so I ended up talking a lot with Christoph Sauer & Andreas Gohr (JPS Wiki, Doku Wiki, Wiki Matrix), Alain Désilet (multilingual wikis, !WikiSym organisation in general), and others.

Too bad I apparently missed some excellent paper presentations. :)


Add Comment

2008-09-10 Third Day at WikiSym 2008

I arrived half an hour late because I was looking for my wallet. The first keynote of the day is sort-of interesting. He says many obviously true things, so the interesting nuggets per minute count isn’t too great, which is why I pulled out my laptop to write this. ;)

The speaker is Stewart Nickolas. He’s talking about web widgets. He wants to enable widespread mashups on the widget level – secure communication between widgets on a single page, coexistence of unrelated widgets on a page. But he has a demo! That’s pretty cool. Widgets “broadcast” events such as their selection.

One interesting site he shows is Programmable Web: “keep-up with what’s new and interesting with mashups, Web 2.0 APIs, and the new Web as Platform.”

An interesting API is OpenSearch which allows you to publish how your site is to be searched, apparently. Other people can read that specification and build a search form for your site, for example.

Random website mentioned at the end: Newstin. I wonder what this was about.

Later, not much happened. I started playing Go on TedErnst’s board: He had a full 19 × 19 board, he played with some people on a 9 × 9 section and I played with some people on a different 9 × 9 section. The funny thing is that Ted himself learnt how to play Go at WikiSym 2006! Hopefully we’ll have spread the meme and even more people will be playing Go at the next meeting.

After lunch it was time to go. I faintly remembered the last day not being too great at other conferences, so I was chagrined to learn that there was an interesting program in the afternoon and an actual walk (!) scheduled for the morning after the last day. Next time I’ll contact other people earlier in order to sort out those issues.

I took the metro back to the airport together with Andreas Gohr. I was very tired having averaged 6h of sleep every night.

My plane is 40 min late, but the airport offers “free access” via wireless. Great, I think to myself. It turns out that you get free access to local content only and need to pick an ISP to reach the outside world. Sucks. But then I discover that one of these providers is the same provider that they used in my hotel. I stayed at the Pestana Porto Hotel which I liked – excellent breakfast, excellent location. Internet connectivity was bad, probably because my room was on the top floor. But being able to keep using my account is great, of course.

Looking back I think the coolest discussion I had was talking with Andreas Gohr and Christoph Sauer on the various namespace implementations we have, including an excursion into access control lists. The coolest moment I had was other people being interested in the running code I had to show for multilingual wikis.


Add Comment

2008-09-11 Sandbox Games

Jonathan over at The Core Mechanic asks Defining SANDBOX Gaming: What's it to you? My Alder King is going to be such a game! And it will be taking place in the Wilderlands of High Fantasy.

I think the microlight variant of a Sandbox game is the most explicit about it:

  1. Take a hex map.
  2. Pick a hex in the middle. This is where the game starts. Put a safe haven there (city, village, inn).
  3. Pick or write a cool little adventures for every adjoining empty hex.
  4. Jot down some interconnections between your material (goblin caves contain a treasure map to the lonely mountain, wizard in his remote tower is friends with yeti warriors in the next hex).
  5. When the players move into a hex, go back to #3.

In my particular game, I’ve started with a hex map from the campaign setting, and I’m basically using the info for the various hexes as starting points. I plan to put a cool little adventure in every hex.

As for players, I gave my players an initial mission: Drive away the humans from the forest. And I told them that the campaign will end somewhere between level nine and twelve. Other than that, I’m going to leave it to them. If they don’t want to drive away the humans, if they want to ally themselves with the humans, if they want to take over the forest, or travel and see the world, I want to take it, twist it, and roll with it.

I think jamused provided an excellent comment on RPG Diehard’s post Sandbox Play vs. Quicksand ... Box Play:

I’d suggest that it helps to give your character a goal that he’s actively working towards. Not just “When I get powerful and rich enough to retire, I’ll build a stronghold for my deity” but “I’m going to start scouting out a suitable place for the stronghold right now, make alliances with the locals, recruit people to my cause, amass wealth, get whatever dispensations I need from my church. As I get money I’ll start by building a road-side chapel, then I’ll add a round tower nearby to serve as home base and to protect the surrounding area from goblins” etc etc. Then, as you go on adventures and level-up (if it’s that kind of game) you can keep returning to advance your plans.

That’s much better than “I just want to hang out with some other adventurers and kick some ass” or “I want to bring balance to the force.” If one of the players has a strong in-game goal, it will automatically start dominating the campaign. That can be good or bad, depending on your players. I like it.


Comments on 2008-09-11 Sandbox Games

Many months later, Michael Shorten aka. Chgowiz writes Dispelling a myth - Sandbox prep and discusses his six principles:

  1. Just in time preparation
  2. One page dungeon levels
  3. Write it down - play it on game day
  4. Let the players flesh things out
  5. Broad brushstrokes to events and plots
  6. Don’t overprepare

I approve. :)

AlexSchroeder 2009-06-25 22:20 UTC

Add Comment

2008-09-12 Corporate Wikis

There was a lot of talk about corporate wikis, measuring corporate wiki participation, and some wikis “competing” for use in the corporate area.

Oddmuse is definitely not a “corporate wiki” in this respect. I think the problem is the process of decision making: Someone starts with a list of features and goes to collect more items for that list by talking to other “stakeholders” in the company. This is what you end up with:

Corporate wikis are a waste of time

Yeah, I’m being mean. :)

Damn, I forgot WYSIWYG, blog integration, CMS, mailing list integration, bug tracking system integration, calendar integration, … there’s so much out there!


Comments on 2008-09-12 Corporate Wikis

You’re clearly right. I experienced similar behaviour in the corporate world. They are coming with a monster (sometime needing a Java client or worst a Win32 fat client) to meet all the requirements from the “stakeholders”… and at the end, no one is using the system due its complexity. Contribution must be simple and easy. Why starting a Java/large application to update one single line in a documentation? That’s inefficient and frustrating (you contribute one time… and after you avoid to use the monster). It will take time before corporation fully understand that Internet-style and minimalist Wikis is the way to go.

A good Wiki is a Wiki where you forget about its user interface when you are using it.

Alexandre Dulaunoy 2008-09-13 09:28 UTC

All we need to figure out now is how to communicat our message to decision makers. :)

AlexSchroeder 2008-09-14 00:38 UTC

Maybe we could somehow adapt RITA for this purpose?

RadomirDopieralski 2008-09-21 22:30 UTC

Add Comment

2008-09-13 Adium, Twitter, and Identica

My current setup:

  1. Send my current status to the Identica bot using Adium. I have Adium configured to run an Applescript whenever I do that.
  2. The script waits a few seconds and determines the current status by checking the Identica RSS feed.
  3. Then the script posts the status to Twitter using the Twitter API.
  4. Then the script tells the Adium application to use the status.

Applescript for Mac OS 10.4 / Adium 1.3.1:

delay 5
set myStatus to do shell script "~/bin/identica --nick kensanata"
do shell script "~/bin/twitter " & quoted form of myStatus
tell application "Adium"
	repeat with theAccount in accounts
		go online theAccount with message myStatus
	end repeat
end tell

The script that fetches my current status:

use XML::RSS;
use LWP::UserAgent;
use Getopt::Long;

my $verbose = undef;

sub get_feed {
  my $url = shift;
  my $ua = LWP::UserAgent->new;
  my $response = $ua->get($url);
  print $response->code, ' ', $response->message, "\n" if $verbose;
  return $response->content if $response->is_success;
  die $response->code, ' ', $response->message, "\n";

sub get_status {
  my $url = shift;
  my $rss = new XML::RSS;
  my $string = get_feed($url);
  print $string if $verbose;
  return $rss->{items}->[0]->{title};

sub main {
  my $nick = '';
  GetOptions('nick=s' => \$nick,
	     'verbose' => \$verbose);
  my $url = "$nick/rss";
  warn "No nick specified.\n" unless $nick;
  binmode STDOUT, ':utf8'; # I assume?
  my $status = get_status($url) . "\n";
  $status =~ s/^$nick: //;
  print $status;


The twitter status posting script:

if test -z "$*"; then
    echo "Status is missing" 1>&2
    exit 1;
CODE=`curl --silent --output /dev/null --write "%{http_code}" \
    --user --data status="$*" \`
if test "$CODE" != "200"; then
    echo "$CODE: Posting failed" 1>&2
    exit 1;


Add Comment

2008-09-17 Balance und Nischen

Über Deutsche Rollenspielblogs bin ich nun schon zu zwei Beiträgen zum Thema Spielbalance gestossen: Spielbalance über alles von Moritz Mehlem und Zur Spielbalance von Christoph Moser.

Selber bin ich unentschieden: Ich verstehe natürlich das Problem eines Spielers, der faktisch nicht mitspielen kann – wer in einem kampflastigen D&D Spiel dem Rest der Gruppe ein paar Stufen hinterherhinkt wird die meiste Zeit nicht viel tun können. Hier kommen aber viele Probleme zusammen: Stufenunterschied, Spielstil, System. Diese übertrieben katastrophale Situation möchte ich nicht weiter diskutieren.

Das Klassensystem von D&D sollte zu einer Form von Balance führen: Die Spezialisierung führt dazu, dass jeder im Laufe des Abends etwas nützliches machen kann. Wenn dieser Spezialist aber fehlt, könnte das System zusammenbrechen; wenn Spezialisten doppelt vorkommen, könnte der Nutzen dahin sein. Meine Erfahrung widerlegt diese Annahmen allerdings: In unserem ShackledCity Spiel hat es zwei Hexemeister, die ziemlich gleich gut drauf sind. Bis jetzt habe ich nicht das Gefühl, dass die beiden Spieler damit ein Problem haben. Wir haben auch keinen richtigen Schurken dabei; unser Waldläufer hat eine Option gewählt, die ihm das Fallen aufspühren und entschärfen erlaubt, einfach damit wir das gekaufte Material ohne grosse Änderungen spielen können. Im Drachenküste Spiel hatten wir die längste Zeit keinen Kleriker dabei. Meiner Erfahrung nach sind also doppelte Klassen oder fehlende Klassen kein grundsätzliches Problem. Ich habe solche Situationen immer als Inspiration für unser Rollenspiel verstanden.

Das Stufensystem von D&D sollte auch zu einer Form von Balance führen: Haben alle etwa die gleiche Stufe, sind alle etwa den gleichen Gefahren ausgesetzt und in ihren Beiträgen etwa gleich stark. Wird dieser Unterschied zu gross, könnten einzelne Figuren dominieren. Meine Erfahrung zeigt hingegen, dass sich die Unterschiede zwischen den Klassen über die Stufen hinweg stark verschieben. In meinen D&D Spielen sind die Nahkämpfer auf tiefer Stufe immer stärker als die Magier und auf hoher Stufe wendet sich das Blatt. Die Balance unter den Charakteren ist in diesem Fall sowieso eine Illusion, bzw. wird das Ungleichgewicht automatisch durch einen Wandel im Spielstil kompensiert: Wenige Kämpfe pro Spieltag führt zu stärkeren Magiern. Es gibt somit keine Balance nur auf Grund der Spielregeln. Die Balance entsteht in der Verhandlung zwischen Kerkermeister (hah!) und Spielern. Der Mix der Begegnungen, die Sort von gespielten Abenteuern, die verwendeten Optionen – beeinflussen das Spiel ungleich stärker. Es braucht hier ein gemeinsames Verständnis über den Spielstil am Tisch und dessen Effekt auf die relative “Stärke” der Charaktere.

Fehlende Balance ist also meiner Meinung nach entweder Inspiration für unser Rollenspiel, oder ein Zeichen fehlender Einigung über den Spielstil am Tisch.


Comments on 2008-09-17 Balance und Nischen

Witzig, mein jüngster Blogeintrag passt irgendwie dazu. Sehe das im Großen und Ganzen wie du. “Balancing” im Sinne von Spieldesign bedeutet für mich aber etwas anderes, nämlich das, woran es fehlt, wenn relativ schnell klar wird, dass es ganz offensichtlich genau eine effektive Methode gibt, zu steigern/zu kämpfen/sich auszurüsten, und es einfach dumm wäre, irgendwas anderes zu wählen.

Frank 2008-09-19 09:37 UTC

Ja, Auf einem anderen Planeten sehe ich genauso.

AlexSchroeder 2008-09-19 10:14 UTC

Add Comment

2008-09-17 Visible Comments

As I interact more with other bloggers, I feel that the comment links should be more visible.

Here’s what I’m experimenting with on my personal wiki:

*MyOldPrintFooter = *PrintFooter;
*PrintFooter = *MyNewPrintFooter;

sub MyNewPrintFooter {
  my $id = $_[0];
  if ($id and $CommentsPrefix and $id !~ /^$CommentsPrefix(.*)/o) {
    print $q->p({-class=>'comment'},
		GetPageLink($CommentsPrefix . $id, undef, 'comment'));


  1. There’s no similar obvious link back if you’re looking at the comment page.
  2. There link to the comment page does not disappear from the page footer.

I’m not sure what would be the right thing to do. I suspect that blog users would expect to see the full original page at the top of the comment page.


Comments on 2008-09-17 Visible Comments

I’m currently experimenting with this variant:

*MyOldPrintFooter = *PrintFooter;
*PrintFooter = *MyNewPrintFooter;

sub MyNewPrintFooter {
  my $id = $_[0];
  if ($id and $CommentsPrefix and $id !~ /^$CommentsPrefix(.*)/o) {
    my $target = $CommentsPrefix . $id;
    if ($IndexHash{$target}) {
      print $q->p({-class=>'comment'},
                  GetPageLink($target, T('Read Comments'),
    } else {
      print $q->p({-class=>'comment'},
                  GetPageLink($target, T('Add Comment'), 'comment'));

Thus, the link to the comment page will not repeat the page title, and there is a different text depending on whether a comment page exists or not.

As comment pages can be reworked, it’s hard to actually count the comments by looking at the text. It would be possible to store a counter on the comment page that was different from the revision number. That new counter would only be increased if somebody actually submitted a comment instead of just editing the page. If somebody writes an answer by editing the page, however, the count will again be wrong. It seems like a tricky problem.

AlexSchroeder 2008-09-19 08:31 UTC

Add Comment

2008-09-17 describe-hash

One problem with hash tables is that they don’t have a print representation. Thus, if you’re using rcircColoredNicks and want to look at the variable value of rcirc-color-mapping you’ll get the following:

rcirc-color-mapping is a variable defined in `rcirc-color.el'.
Its value is 
#<hash-table 'equal nil 21/65 0x1d70b80>

Hash-map mapping nicks to color names.

Not good!

That’s why I’m using the following piece of code to look at hash tables:

(defun describe-hash (variable &optional buffer)
  "Display the full documentation of VARIABLE (a symbol).
    Returns the documentation as a string, also.
    If VARIABLE has a buffer-local value in BUFFER (default to the current buffer),
    it is displayed along with the global value."
   (let ((v (variable-at-point))
	 (enable-recursive-minibuffers t)
     (setq val (completing-read
		(if (and (symbolp v)
			 (hash-table-p (symbol-value v)))
		     "Describe hash-map (default %s): " v)
		  "Describe hash-map: ")
		(lambda (atom) (and (boundp atom)
				    (hash-table-p (symbol-value atom))))
		t nil nil
		(if (hash-table-p v) (symbol-name v))))
     (list (if (equal val "")
	       v (intern val)))))
  (with-output-to-temp-buffer (help-buffer)
    (maphash (lambda (key value)
	       (pp key)
	       (princ " => ")
	       (pp value)
	     (symbol-value variable))))

If you use it on the same variable again, you’ll get a *Help* buffer showing the following:

"NickServ" => (foreground-color . "deepskyblue1")

"alephnull" => (foreground-color . "yellow4")

"fsbot" => (foreground-color . "springgreen2")

"delYsid" => (foreground-color . "springgreen3")

"johnw" => (foreground-color . "turquoise2")


This code is also available on the EmacsWiki HashMap page.

Tags: RSS

Add Comment

2008-09-19 Big Brother Keeps Creeping Closer

JanneJalkanen writes USA to get unlimited access at personal history of Norwegians.

It’s sad.

Actually, there are many sad things about it:

  1. The military (!?) is monitoring surfing and email reading habits
  2. The government is sharing this information with other nations
  3. These other nations have a bad reputation as far as I’m concerned – Guantanamo Bay detention camp
  4. It doesn’t surprise me anymore
  5. I can’t think of anything promising to do against it
  6. As real organized, political resistance appears to be missing I’m sure this will spread from country to country
  7. Taking a line from Christa Wolff: Why fight a war if winning requires us to act like our enemies? – Cassandra

Tags: RSS

Add Comment

2008-09-19 Installing Debian

Installing Debian using a Staple Gun
From xkcd – The Staple Madness
I still haven’t switched back from OSX to GNU/Linux. I keep telling myself that I’ll switch my old iBook laptop back to Debian as soon as the old Mac OS 10.3 no longer does its job. I’m not using the laptop as often as I used to, so I feel free to experiment with it.

Back in the days my main problem was that the wireless card didn’t work as expected. These days I fear for my scanner as it only works with my laptop and not with my desktop – a Mac Mini running Mac OS 10.4. Then again, that sort of hardware problems was the reason I switched away from GNU/Linux in the end, so … doh!


Comments on 2008-09-19 Installing Debian

Good luck with switching up again!

Arne Babenhauserheide 2008-09-24 10:50 UTC

Add Comment

2008-09-21 Kampagne mit einem dutzend Spieler

Vor einiger Zeit hat einer der lokalen Spielleiter mit einer Kampagne namens Grenzmarken nach dem Beispiel der West Marches angefangen. Im Moment haben wir elf (!) Spieler und einen Spielleiter. Mit ein paar Leuten und demselben Spielleiter haben wir auch ein reguläres Spiel in den Vergessenen Reichen an der Drachenküste. Die Dynamik einer grossen Spielergruppe scheint allerdings die anderen Spiele zu kanibalisieren: Die Begeisterung ist so gross, dass unser Drachenküste Spiel wohl vorerst auf Eis gelegt wird.

Was macht die Grenzmarken so populär?

  1. Grosse Anzahl Spieler heisst, dass man jede Menge neuer Leute trifft.
  2. Eine Welt, die mit anderen Leuten geteilt wird, heisst “richtige” Gerüchte in unserer lokalen Taverne.
  3. Spielabende mit verschiedenen Leute heisst, dass jeder Spielabend eine in sich abgeschlossenen Expedition ist. Diese Kürze und Einfachheit scheint gewisse Leute zu motivieren.

Gefahren, von denen gemunkelt wird:

  1. Ben Robbins schreibt von den sozialen Problemen und ich sehe selber auch schon, dass ich Spielabende mit dem einen oder anderen Spieler lieber meide.
  2. Die kurze Zeit von 3-4h pro Abend und der strukturierte Expeditionsablauf birgt die Gefahr von Langweile in sich. Selber scheint das Spiel gegenüber einer regulären Runde aber deutlich abwechslungsreicher. Das liegt sicher vor allem an den wechselnden Mitspielern. Die regulären Runden bestehen ja meistens auch aus immer ähnlichen Elementen wie reden, suchen, spionieren, kämpfen, usw.
  3. Die kurze Zeit führt leider auch zum Gefühl “noch schnell fertig zu spielen.” Wenn die letzte halbe Stunde des Abends gehetzt wird, leidet der Gesamteindruck. Ich nehme an, dass sich dies mit einer passenden Ankündigung zu Spielbegin selber lösen wird: “Ich muss um halb zwölf auf den Zug also fangen wir um elf mit dem Rückzug an.”
  4. Schätze müssen eigentlich von Abend zu Abend aufgeteilt werden. Das könnte zu Problemen führen, vor allem wenn viel weniger gefundene magische Gegenstände als Mitspieler gibt. Hier hoffe ich auf rationale Einigung ohne komplexe Buchhaltung.
  5. Weil wir “ohne Gnade” des Spielleiters spielen, haben sich Einzelne darüber beklagt, dass keiner mehr normale Nahkämpfer spielen will. Wenn ich selber leite, läuft das Spiel immer “ohne Gnade” – deswegen begreife ich diesen Einwand nicht ganz, aber wenn viele Spieler deswegen Bedenken äussern, muss man dies auch ernst nehmen. Im Moment gefällt mir der Hang zum vorsichtigen Spiel.


Comments on 2008-09-21 Kampagne mit einem dutzend Spieler

Was ist denn ein normaler Nahkämpfer? Ich sehe das Problem nicht wirklich; die einzelnen Gruppen müssen sich halt aufeinander einspielen.

Im Moment sehe ich eher, dass der Spielleiter etwas hoch belastet ist; aber das wird auch durch die relative “Frische” des Konzepts bedingt sein.

Die Spieler, denen ich bisher begegnet sind, waren mir eigentlich alle sympathisch. Ich hoffe, ich gehöre nicht zu denen, die anderen nicht so genehm sind…

Ein Problem, dass wir letztes Mal gesehen haben, ist der Zwang, ein “Abenteuer” “zu Ende” spielen zu wollen. Da muß die Gruppe dann einen geordneten Rückzug antreten, und das Finale vielleicht an eine andere Gruppe abtreten. Hier ändert sich die Dynamik ein bißchen, aber auf der anderen Seite ist es vielleicht auch etwas angemessener, als wenn jede Gruppe sich immer bis zum Ende durchschlägt, selbst wenn sie eigentlich nicht für das gegebene Abenteuer vorbereitet oder suboptimal besetzt ist.

Auf lange Sicht wird sich das einpendeln, weil eben jeder mal dran ist mit “fertig spielen”. Und: Die Spielwelt reagiert ja auf solche Vorkommnisse. Sicherlich gibt es hin und wieder Entwicklungen, die einen ungehinderten Rückzug unmöglich machen, aber das erwarte ich deutlich seltener als den Umstand, dass gegen Ende des Spielabends die Zeit knapp wird…

Harald 2008-09-22 11:02 UTC

Du scheinst bezüglich Nahkämpfer gleicher Meinung wie ich zu sein. Aber Unverständnis ist natürlich keine angemessene Reaktion wenn andere Leute sich beklagen. Bisher hat es noch niemand ausgesprochen, aber ich vermute dass über kurz oder lang die Nahkämpfer extrem viel mehr magische Ausrüstung besitzen werden als alle anderen. In meinen bisherigen D&D Runden ist es auf alle Fälle immer so gelaufen. Das wird bedeuten, dass eine Gleichverteilung der gefundenen Schätze am Ende des Abends auf die Dauer nicht funktionieren wird. Witzig fände ich, wenn die Nahkämpfer sich wie Söldner verhalten würden. “Ich komme nur für 50% mit!”

Ich habe die Gefahrenliste nochmal kurz kommentiert um zu zeigen, dass ich die Probleme für durchaus lösbar halte.

AlexSchroeder 2008-09-22 11:55 UTC

Add Comment

2008-09-21 Oddmuse Bugs

My first serious bug after upgrading to the new Oddmuse: The RSS feeds aggregated by “blog planets” are produced by the Oddmuse:Journal RSS Extension. As this extension had a bug, sites like Planet Emacsen, RPG Bloggers and Deutsche Rollenspielblogs carried some bogus entries for a while. Argh.

That brings me to a related question: What should I do about minor changes – should the Journal RSS Extension list them? I have the feeling that it should not. What happens now is that we show the current revision of the page but use the last major revision timestamp. In a blog planet context, the result depends on how the planet works. If it takes the feeds and sorts items by date (pubDate) we’re fine – minor changes to a page will not disrupt the order of items.


Comments on 2008-09-21 Oddmuse Bugs

I think that listing the minor changes really depends on what you intend to do with the feed. Obviously, for bloggin you should only ever include new pages in the feed.

RadomirDopieralski 2008-09-22 08:29 UTC

Should you? I’m not sure. Maybe a major change deserves to be reintroduced into the feed? We’re working in a continuum between a pure wiki and a pure blog. In a pure blog the person in charge would just write a new entry and not touch the old one. But that’s just a cultural convention; I’m not sure I want to make it mandatory via code (“Code is Law”). The current solution lets the author choose – even though the user interface might be cryptic. Perhaps the correct answer is to improve the user interface.

Note that the user interface on the reading side often has the appropriate options already. Bloglines allows you to either show or suppress updates to old articles.

AlexSchroeder 2008-09-22 09:00 UTC

Add Comment

2008-09-22 New Pages

This is what I’m using to create new pages with tags at the moment. The latest revision handles multi-word tags correctly (use “double quotes”).

$Action{new} = \&DoNew;

sub DoNew {
  if (GetParam('tags', '') and GetParam('id', '')) {
    my $tags = GetParam('tags', '');
    $tags =~ s{"(.*?)"}{$_ = $1; s/ +/_/g; $_ }eg;
    my @tags = map { s/_/ /g; $_ } split(' ', $tags);
    DoEdit(GetParam('id', ''), "\n\n\nTags: "
	   . join (' ', map { "[[tag:$_]]" } @tags),
  } else {
    print GetHeader('', T('New')), $q->start_div({-class=>'content categories'}),
      GetFormStart(undef, 'get', 'cat');
    my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday) = gmtime();
    my $today = sprintf("%d-%02d-%02d", $year + 1900, $mon + 1, $mday);
    my $go = T('Go!');
    print $q->p(T('Title: '),
		qq{<input type="text" name="id" value="$today" tabindex="1" />},
		GetHiddenValue('action', 'new'));
    print $q->p(T('Tags: '),
		qq{<input type="text" name="tags" tabindex="2" />});
    print $q->p(qq{<input type="submit" value="$go" tabindex="3" />});
    print $q->end_form, $q->end_div();

I have bookmarked the result: Self:action=new.


Add Comment

2008-09-22 Some Paizo GameMastery using M20 HC coming up

We had a talk about the impeding end of our Kurobano And The Dragons campaign. We started with the Kitsunemori setting and M20 rules, switched to D&D 3.5, played through the Tomb of the Forgotten King, Red Hand of Doom, Guardians of Dragonfall, and lots of little homebrew encounters. And we’re ready for a change. I’m ready for a change.

So I talked about M20 Hard Core, on how I hoped to change our game style because individually we all agreed on mistakes we made: Too much shouting, rules, magic items, spell lists, and buffs at the table, lots of arguing – just to name a few. I’m hoping that the new rules are familiar enough for us to just keep on playing but different enough to kick us out of our rut. That’s what I’m hoping for!

And today we decided on the adventures I want to run for our M20 HC playtest:

Yay!! :)

I also heard that they weren’t too keen on dungeons, so maybe I’ll have to postpone Castle Whiterock. We could play Rise of the Runelords instead!

But first, the M20 Hard Core playtest using the two GameMastery modules.

I’m looking forward to it.

I think I need to prepare a little list of in-game replacements for prestige classes and feats – background choices that will have in-game effects.

We also talked about character creation. I thought about the following:

  1. Roll 3d6 in order.
  2. Roll 3d6 and decide what to assign it to after each roll.
  3. Roll 3d6 and assign at will.
  4. Roll 4d6, drop lowest, and assign at will.
  5. Roll 4dF (Fudge dice) and use as your bonus (ignore the actual score).
  6. Point buy.
  7. Everybody picks their own stats.

I liked #2. One player liked #1. The others seemed to favor point buy. Oh well. I’ll have to think of a good point buy method.

I gave the monster list I have to one of the players who was interested in the numbers. I already talked about some of the rules with another player interested in them. I’m happy to see that things finally get going.


Comments on 2008-09-22 Some Paizo GameMastery using M20 HC coming up

Zum Thema auf dem - Total Party Kill Blog gab es gerade eben einen Artikel zum Thema: Point Buy - oder Würfeln?

AlexSchroeder 2008-09-23 14:04 UTC

Add Comment

2008-09-24 Erster Eindruck von der Festung des Bergkönigs

Wie ich erfahren habe ist die Festung des Bergkönigs gratis zu haben. Die Print Version ist vor ein paar Tagen auf meiner Wunschliste gelandet, nun bin ich um so glücklicher, wenn ich mir vorher einen Eindruck verschaffen kann.

Nach dem Durchlesen der ersten paar Seiten ein paar Bemerkungen:

  • Gut gefallen mir die Angaben in Fuss und Meter (“Die Wände sind etwa 40 Fuß (13m) hoch”).
  • Gut gefallen hat mir, dass mit dem Auftraggeber verhandelt werden kann und dass die Maximalvariante aufgeführt ist. Meine Spieler stehen auf sowas.
  • Gut gefallen hat mir die Gerüchteküche ohne Zusatzaufgaben. Man muss sich einfach im Dorf umhören und kriegt was.
  • Gut gefallen hat mir, dass ein Auskundschaften des Berges mit einer groben Karte belohnt wird.
  • Gut gefallen hat mir, wie der Eingang des Komplexes geschützt wird.
  • Gut gefallen hat mir, wie gewisse Stichwörter fett dargestellt werden (“Alle Räume in der Festung sind SEHR hoch (zwischen 40 und 50 Fuß, also 13 bis 17 Meter), jede Tür ist aus massivem Holz gefertigt.”)
  • Gut gefallen hat mir, dass angegeben wird, wie lange es dauert bis Verstärkung da ist oder wie lange es dauert, bis die Gegner ihre Waffen an sich genommen haben.


Add Comment

2008-09-25 Facebook

Claudia has joined Facebook. She spent hours on it, finding all her friends and acquaintances.

Suddenly I feel old and quaint.


Comments on 2008-09-25 Facebook

So very quaint :D

GreyWulf 2008-09-25 12:31 UTC

Welcome to the real world :-)

2ni 2008-09-25 13:44 UTC

Don’t worry Alex. I join Facebook as well but it is going on my nerves because no normally working person can ever deal with the enormous amount of dispensable messages and notifications and requests and whatever… No reason to feel old! …quaint maybe… ;)

– Moni 2008-09-26 10:57 UTC

Yeah, don’t worry. I don’t like it either and actually don’t use it… All these applications and invitations are getting on my nerves.

2ni 2008-09-26 12:48 UTC

Add Comment

2008-09-26 Random Motivation

Haha, Jeff’s Random Dungeon Montivations are hilarious. Which reminds me: I don’t understand players who create characters that are antithetical to other player characters.


Add Comment

2008-09-30 Oldies Playlist

Current playlist:

I ❤ Wikipedia!

Tags: RSS

Add Comment

2008-09-30 Power of Pink

Pink Bliss


Comments on 2008-09-30 Power of Pink


RadomirDopieralski 2008-09-30 12:34 UTC

This is truly something the Django Pony could approve.

Edward O'Connor 2008-09-30 15:20 UTC

Awesome pony! I’m using it as my desktop background right now!

AlexSchroeder 2008-09-30 15:35 UTC

How many girls have you picked up with that color scheme? Is it safe to assume that The Free BSD Girl is pregnant (again)?

Illegal Alien White Girl 2008-10-01 19:48 UTC

I hate it!

Knusper 2008-10-02 14:35 UTC

Add Comment

2008-09 Book Club

What: Ines of my Soul by Isabel Allende. “Ines Suarez came to Chile with the Conquistadors in 1540, helping to claim the territory for Spain and to found the first Spanish settlement in Santiago. […] Allende returning to territory beloved of her and her readers - imaginative historical fiction, evocatively told - and to the familiar landscape of her native country.” [1]

When: Wednesday September 10, 19:30 @ Hotel Glockenhof courtyard

Wikipedia: Isabel Allende, Magic realism, Conquistador.

Our September meeting will be our first joint meeting with Valpuri’s Zürich Book Club Meetup Group. Yay! :)


Add Comment