# Diary

Welcome!

This is both a wiki (a website editable by all) and a blog (an online diary about the stuff Alex Schroeder reads and does). If you’re a friend or relative, you might be interested in reading Life instead of this page. If you’ve come here from an RPG blog, you might want to head over to RPG. There are other similar categories to be found on the SiteMap.

Für Rollenspieler gibt es ebenfalls eine eigene RSP Kategorie.

# 2016-07-22 New Server

Welcome to the new server! A year later and I’ve finally made the move to Debian Jessie.

My notes: Sibirocobombus.

Tags:

# 2016-07-18 w3m and Emacs Wiki

w3m is a text browser. I use it a lot if I need to test stuff. Recently, I got an email saying that Emacs Wiki had an invalid certificate. Everything seemed to be fine, however. But a few minutes ago, I tried to run w3m https://www.emacswiki.org/ from my Terminal (OSX El Capitan) and got an SSL error.

alex@Megabombus:~$w3m -dump_extra https://www.emacswiki.org/ SSL error: error:00000000:lib(0):func(0):reason(0) w3m: Can't load https://www.emacswiki.org/. Thanks to twb on #emacs, I found the problem. He said: “What’s ldd called on OS X? Find out if w3m is using gnutls or openssl.” The equivalent to ldd on OSX is otool -L. As it turns out, a simple reinstall switched from libssl 0.9.8 to 1.0.0 and now it works. alex@Megabombus:~$ otool -L which w3m
/usr/local/bin/w3m:
/usr/local/lib/libgc.1.dylib (compatibility version 2.0.0, current version 2.3.0)
/usr/lib/libssl.0.9.8.dylib (compatibility version 0.9.8, current version 50.0.0)
/usr/lib/libcrypto.0.9.8.dylib (compatibility version 0.9.8, current version 50.0.0)
/usr/lib/libncurses.5.4.dylib (compatibility version 5.4.0, current version 5.4.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1197.1.1)
alex@Megabombus:~$brew reinstall w3m ==> Reinstalling w3m ==> Downloading https://homebrew.bintray.com/bottles/w3m-0.5.3.el_capitan.bottle.tar.gz ######################################################################## 100,0% ==> Pouring w3m-0.5.3.el_capitan.bottle.tar.gz 🍺 /usr/local/Cellar/w3m/0.5.3: 23 files, 1.7M alex@Megabombus:~$ otool -L which w3m
/usr/local/bin/w3m:
/usr/local/opt/bdw-gc/lib/libgc.1.dylib (compatibility version 2.0.0, current version 2.3.0)
/usr/local/opt/openssl/lib/libssl.1.0.0.dylib (compatibility version 1.0.0, current version 1.0.0)
/usr/local/opt/openssl/lib/libcrypto.1.0.0.dylib (compatibility version 1.0.0, current version 1.0.0)
/usr/lib/libncurses.5.4.dylib (compatibility version 5.4.0, current version 5.4.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1225.1.1)

Tags:

# 2016-07-18 Bretagne

We spent a week in Roscoff, Bretagne. It was the week of Bastille day, of the arrival of the Tour de France à la voile, with the main season just about to start. The weather was beautiful, the water was cold, the food was delicious and Claudia’s insomnia was gone. That surprised both of us. The very first day we were back in Switzerland, it raised it’s ugly head again: one and a half hours of waiting for sleep from Saturday to Sunday, then no sleep until five in the morning from Sunday to Monday. We’re about ready to call for dowsing rods and dowsing pendulums. Grrr!

Here are some pictures of our trip:

Tags:

# 2016-07-08 Saas Fee

A few days ago we were in the Wallis. We visited Saas Fee:

In the local museum, I saw this old map: Vallesia superior, ac inferior, Wallis, le Valais, by Gabriel Walser from 1768. You can download a 6208×5151 pixel image.

Tags:

# 2016-07-08 Rheinfall

A while ago we visited the Rhine Falls.

Tags:

Wow, Schwarzweiss, gut! Ich versuche es immer wieder, hatte bisher aber keinen Erfolg.

Chris 2016-07-09 12:52 UTC

Hah, ist leider etwas billig: das ist ein Filter der Kamera, inklusive dramatischem Kontrast und Rahmen.

– AlexSchroeder 2016-07-09 15:36 UTC

Das ist doch super; mir ist alles lieb, was mir hilft bessere Bilder zu machen. Ich brauche Lightroom, das hat auch Schwarzweissfilter, aber irgendwie…

Chris 2016-07-10 10:53 UTC

Du hast recht. Auf dem iPhone hatte ich eine Weile ein Photo App namens Vint B&W MII, die Bilder nach einem eigenen Algorithmus entfärbte und bessere Resultate lieferte als ein einfaches Entfärben im Gimp oder iPhoto. Offensichtlich gibt es da eine Kunst zum Thema. Aber worauf man schauen muss, weiss ich leider auch nicht. Früher hatte schwarz-weiss Film ja eine Affinität für rot.

Jetzt habe ich mir gerade die Tutorial-Seite für schwarze-weiss Bilder mit Gimp angeschaut. Da gibt es wirklich viel zum Ausprobieren.

– AlexSchroeder 2016-07-10 18:37 UTC

I want to run fgallery on my laptop running OSX instead of uploading the images and running fgallery on the server in order to generate the album. Perhaps that’s stupid. Anyway, the first order of business is to compile a version of Perl that has threads.

perlbrew install-multiple --both thread perl-5.22.0

Let’s see…

alex@Megabombus:~/src/fgallery-1.8.2$perlbrew exec --with perl-5.22.0-thread-multi ./fgallery perl-5.22.0-thread-multi ========== Can't locate Image/ExifTool.pm in @INC (you may need to install the Image::ExifTool module) (@INC contains: /Users/alex/perl5/perlbrew/perls/perl-5.22.0-thread-multi/lib/site_perl/5.22.0/darwin-thread-multi-2level /Users/alex/perl5/perlbrew/perls/perl-5.22.0-thread-multi/lib/site_perl/5.22.0 /Users/alex/perl5/perlbrew/perls/perl-5.22.0-thread-multi/lib/5.22.0/darwin-thread-multi-2level /Users/alex/perl5/perlbrew/perls/perl-5.22.0-thread-multi/lib/5.22.0 .) at ./fgallery line 27. ... OK, so now for dependencies, which have to be reinstalled. alex@Megabombus:~/src/fgallery-1.8.2$ perlbrew use perl-5.22.0-thread-multi
alex@Megabombus:~/src/fgallery-1.8.2$cpanm Image::ExifTool --> Working on Image::ExifTool Fetching http://www.cpan.org/authors/id/E/EX/EXIFTOOL/Image-ExifTool-10.20.tar.gz ... OK Configuring Image-ExifTool-10.20 ... OK Building and testing Image-ExifTool-10.20 ... OK Successfully installed Image-ExifTool-10.20 1 distribution installed I also got myself a copy of the facedetect. When I tried it: alex@Megabombus:~/src/facedetect-master$ ./facedetect
Traceback (most recent call last):
File "./facedetect", line 8, in <module>
import numpy as np
ImportError: No module named numpy

OK, the page mentions opencv and apparently Homebrew offers something like it.

alex@Megabombus:~/src/fgallery-1.8.2$brew install homebrew/science/opencv ... alex@Megabombus:~/src/fgallery-1.8.2$ ../facedetect-master/facedetect
usage: facedetect [-h] [--biggest] [--best] [-c] [--data-dir DIRECTORY] [-q]
[-s FILE] [--search-threshold PERCENT] [-o OUTPUT] [-d]
file
facedetect: error: too few arguments

I guess it works!

OK, so back to my “default” Perl and let’s check that command line.

alex@Megabombus:/Users/Shared/Fotos 2016$perlbrew exec --with perl-5.22.0-thread-multi ~/src/fgallery-1.8.2/fgallery -f Saas\ Fee/Album/ 2016-saas-fee perl-5.22.0-thread-multi ========== error: cannot execute exiftran or exifautotran for lossless JPEG autorotation OK, so more problems. Let’s install fbida. alex@Megabombus:/Users/Shared/Fotos 2016$ brew install fbida
...
alex@Megabombus:/Users/Shared/Fotos 2016$perlbrew exec --with perl-5.22.0-thread-multi ~/src/fgallery-1.8.2/fgallery -f Saas\ Fee/Album/ 2016-saas-fee perl-5.22.0-thread-multi ========== reading completed facedetect: error: cannot load HAAR_FRONTALFACE_ALT2 from /usr/share/opencv/haarcascades/haarcascade_frontalface_alt2.xml error: command "facedetect --best --center 2016-saas-fee/imgs/P7020100.jpg" failed OK, some data is missing. I downloaded a recent copy of the version 2 zip file and extracted just the data: alex@Megabombus:~/src$ unzip /Users/alex/Downloads/opencv-2.4.13.zip "opencv-2.4.13/data*"
...

And then I tried again:

alex@Megabombus:/Users/Shared/Fotos 2016$facedetect --data-dir /Users/alex/src/opencv-2.4.13/data/ --best --center 2016-saas-fee/imgs/P7020100.jpg And it worked! (No output because it contains no face, I presume.) So how can we pass this option from fgallery to facedetect? I think the simplest solution is to just change the DATA_DIR setting in facedetect: alex@Megabombus:~$ diff ~/src/facedetect-master/facedetect bin/facedetect
21c21
< DATA_DIR = '/usr/share/opencv/'
---
> DATA_DIR = '/Users/alex/src/opencv-2.4.13/data/'

Oh, and I dedided to install the optional stuff as well.

alex@Megabombus:/Users/Shared/Fotos 2016$brew install jpegoptim ... alex@Megabombus:/Users/Shared/Fotos 2016$ brew install pngcrush
...
alex@Megabombus:/Users/Shared/Fotos 2016$brew install p7zip ... alex@Megabombus:/Users/Shared/Fotos 2016$ perlbrew exec --with perl-5.22.0-thread-multi cpanm Cpanel::JSON::XS
...

And now, finally, the test:

alex@Megabombus:/Users/Shared/Fotos 2016$perlbrew exec --with perl-5.22.0-thread-multi ~/src/fgallery-1.8.2/fgallery -f Saas\ Fee/Album/ 2016-saas-fee perl-5.22.0-thread-multi ========== reading completed processing completed generating archive... completed Yay! Hours wasted but mission accomplished! Copy it over: alex@Megabombus:/Users/Shared/Fotos 2016$ scp -r 2016-saas-fee/ alexschroeder.ch:alexschroeder.ch/gallery/
...

As it turns out, I dislike the stupid exif comments my camera leaves and sometimes I create little text files with alternate captions. Thus, I need the -c txt option. And then to copy it all over to the gallery.

alex@Megabombus:/Users/Shared/Fotos 2016$perlbrew exec --with perl-5.22.0-thread-multi ~/src/fgallery-1.8.2/fgallery -c txt -f Saas\ Fee/Album/ 2016-saas-fee ... alex@Megabombus:/Users/Shared/Fotos 2016$ rsync --progress --recursive 2016-saas-fee alexschroeder.ch:alexschroeder.ch/gallery/
...

Tags:

# 2016-07-07 Unprofessional

An excellent article by Zak, Stay Unprofessional. I laughed, when I came to the following paragraph on alienation.

In short: it’s possible for even indie RPG authors to be so professional they aren’t making anything they want to (or have to) live with. In a curious quirk of early 21st century post-hobby production, they have alienated themselves from their labor, with almost no help from the larger capitalist system.

How true.

It’s why I’m only doing the stuff I want for my own games. The amount of effort I put into the Caverns of Slime for Fight On! #15 which never got published showed me that every step of the process has to be enjoyable. If it is not, if it is premised on some later reward and recognition, what happens when the reward does not manifest? Time wasted, that’s what.

Tags:

# 2016-07-07 Preparing a Sandbox

Recently, Rob Monroe asked about tools to use when preparing a sandbox.

I listed the following:

1. A map. I started my last one with a random Text Mapper map using the Hex Based Campaign Design blog posts by the Welsh Piper.[1][2]
2. I also enjoy ’s system of assigning two tags to each hex as described in his book Red Tide, and of establishing a cabinet of evil movers and shakers right at the beginning as described in his book An Echo Resounding.

Alternatively, I could also imagine running my next game as a point crawl based on the structured input of my players as suggested by +Jason Lutes in The Perilous Wilds.

Jason Lutes then linked to two examples of how he did it in 2013, which are also based on blog posts by the Welsh Piper, random generators by Chaotic Shiny, and all that, in order to create the world and a village.

It looks like a lot of work but it looks super beautiful!

I still think that starting out with a random Text Mapper Map and adding notes and settlements to the text describing the area and using the tool to render a picture of the area still is the best value for my time. See How To Get Started With Text Mapper for more.

Tags: s

# 2016-07-07 Being a RPG Referee

This post is a translation of an old post I wrote back in 2014 about the responsibilities of a GM—or referee, as I like to call myself in English. As I translate from German to English, I’ll note that sentences are longer and more convoluted than usual. Welcome to the German Way.

Sometimes I meet people in my games that would like to run a campaign. Sometimes, they just hope that the current group will just stay together and keep playing, at the same location, at the same time. If you’re already playing with friends looking for a new referee, then that’s a great way to start. But sometimes just wanting to run a game is not good enough…

• Referees must find new players on Facebook, Google+, Nearby Gamers, forums, friends, partners, relatives, coworkers, and so on. Yes, everybody should share in this responsibility, but in my experience, the referee is usually the one with the biggest network.
• Referees must coordinate schedules. Somebody has to announce game dates. When game day is moved around a lot, then players like me, people with no spontaneous personalities and inflexible tendencies, will have a hard time dealing with this. I can’t come on short notice, and when game day is canceled I’m angry because I would have preferred doing something else instead. Sooner or later, game day will get a lower priority and it won’t be belong before I’ll be making other plans just to be sure that I’ve got something going on for sure.
• Referees must solve conflicts. Players trash talking gays, prostitutes, foreigners? Anybody can speak up, but when I’m a guest somewhere else, I might feel that I’d rather send a friendly good bye email rather than engage in the conflict and play with such people. As a referee, we’re not only responsible for finding new players, we’re also responsible for maintaining a pleasant gaming culture at the table.
• Referees must pick or propose rules they like. There’s no point in picking a game the referee doesn’t like to run.
• Referees must explain rules, clarify them, establish rulings, remind players of the rules. Sure, you can delegate the rules to a player, but in general it won’t work all that well. It’s a tricky thing to contradict the referee, breaking the flow, asking for short retcons, i.e. the alteration of previously established facts in the continuity of the events at the table.
• Referees determine spot light time and need to intervene. Some players are louder than others, have more ideas than others, constantly convince their fellow players to change their minds. Sure, the distribution of introverts and extroverts is a natural thing and often the behavior matches what people enjoy most. And yet, this must not get out of hand. A clear turn order, allowing quiet players to make particular decisions without interference from their fellow players and similar small interventions will help balance spot light.
• Referees are responsible for the timing. When do we start, when do we stop, do we begin in media res, do we end with a cliff hanger, do we have an extra half hour, should we aim for a close? As a referee, one of your eyes is always watching the clock.
• Referees are responsible for the tempo. Is the game boring and we need to push on, or do we chill and take in the scene, listen to long speeches and enjoy the little details? Referees react when players pick up their phones, yawn, start doodling, sort dice, or stack dice.
• Referees run the game. When they’re unsure, the table loses focus. When they are sure of themselves, players can focus on the game.
• Referees usually host the game. This is maybe a European thing where space is expensive and thus game shops are small and offer no organized play or open tables, and pubs and coffee shops are crowded. We meet at home. We invite strangers to play in our living rooms. And that’s why referees usually provide the books, the binders, the material, the extra dice, pens, erasers, mats, water jars, glasses, bowls for chips and dried fruit, pistachios, peanuts, tangerines, or dishes for trash.
• Referees must make time to prepare. As a player, you can afford to just show up for game night and not know a thing. As a referee, you will have to think about the game, take notes, have dreams…
• Referees must write session reports. Players don’t often do that. It’s great when they do, don’t get me wrong. But it’s hard to force them if they don’t, and you need notes to create continuity. Somebody has to go through the last session and think about what happened. Players won’t remember the details. They won’t embellish events. As a player, I’ll just scribble a few notes on the margins of my character sheet. I’m not going to write a session report.
• Referees must create a setting. It can be small, a dungeon, a village, a wilderness, a city, multiple cities, a whole surface world, a network of underworlds, a beyond, the planes, everything needs thought, setting books must be read if you decide to use a published setting.
• Referees must prepare adventures. Or they need to prepare situations that can lead to conflict. And as we saw with this list, this is not the only thing they need to do!

I don’t want to scare anybody. Being a referee is a great hobby. I just want to prevent people from thinking that all it takes is to read an adventure and show up somewhere in order to run a game. There are many responsibilities which end up being ours.

At the time, there was an interesting discussion on G+ where people talked about running a game as a service and delegating tasks. My first reaction to all these responses was always the thought: “I wish!” Yes, I do. But I wrote this list remembering friends and acquaintances, convention games and statements from fellow players, people wanting to take over one of my groups, asking whether I know any players looking for a game, complaining about players not mapping or not writing session reports, or not reading the session reports they wrote, and I think to myself: “Stop dreaming! Sure, that would be nice but primarily, this is your job.”

And yes, there are game systems that do without some of these responsibilities. Some games require no preparation, some games require no explicit referee, but most of the responsibilities I listed remain. You don’t need to prep a plot for Mountain Witch but somebody still has to know the rules. You don’t need to have a referee for Western City but you still need a host. You don’t need to learn about a setting in Dungeon World as you can create a setting together when the game starts, but everything else still holds true.

Tags:

# 2016-07-07 Barbie Gaming

In a thread on G+ about Burning Wheel, introduced us to the concept of Barbie Gaming.

In regard to Character Burning: In some german RPG circles, there exist the term “Barbie Gaming”. (This might sound a bit derogatory, but it isn’t meant as such.) The idea is that there is, for some folks, a source of fun in tinkering with their character, figuring out how the different mechanisms interlock, how to plot the path to this or that power, how which lifepath choices affect the outcome, etc.

The point here is that what to me (and apparently +Zak Sabbath too) is a horrible tedious thing that stands in the way of actually having fun, is for them one of the big sources of fun in the game. Also, there is the sense of achievement and satisfaction when they figured out that system and end up with something that they really like.

And it’s fun that they can even have when for some reason the weekly game just got cancelled!

It is as if you combine the fun that a kid has trying different dresses and shoe variations on the Barbie doll with the satisfaction of a jigsaw puzzle coming together.

A bit later I wrote the following:

To be more specific in arguing why Barbie gaming is something I dislike: even if some people enjoy it, chances are that not all of the players will enjoy it. If some enjoy it and others don’t, then you’ll get very different characters at the table. They might differ a lot in combat effectiveness, as happened in my D&D 3.5 game, where I distinctly remember having set up a fight with a ranger with humans as favorite enemies, and human slaying arrows, riding a nightmare, to fight one particular character, and using a bunch of demonic boars for the rest of the party because all their characters were hopeless in combat. That’s when I decided that I no longer wanted to run games with rules that afforded this kind of spread. To bring this back to Burning Wheel, I’d argue that spending more time in character creation does result in a wide variety of characters, but at least the spread is more overt. You can have an abbot skilled in words, and everybody at the table will know. Those that did not manage to plan their life paths well enough will end up with less of a leader but they won’t feel totally outclassed. In addition to that, a typical game has a wide variety of skill checks, on the topics you expressed interest in via beliefs and all that, so it’s not as bad as playing D&D 3.5 with a dedicated character builder friend. Specially since there, the gap widens as you go up in levels where as in Burning Wheel I’d assume the gap to close over a campaign as advancement is easier for those who fail at Barbie gaming.

But still, these observations still don’t recommend rules that provide for Barbie gaming. When I run a game, I’ll be careful to choose a system that does not. Even if the effect is not as strong as for D&D 3.5, some players will still want to talk to me about it, have question, and I just won’t care for that kind of conversation. Better to pick rules that don’t afford this kind of conversation. So, even if some people enjoy it, I’d prefer it if they played it as a solo game and didn’t talk to me about it, and didn’t outshine the other players at the table that don’t care for character building, and didn’t bring a big book to the table and talked the others through character creation, establishing a power dynamic at the table based on an interest I do not share.

Tags: