Note to self: Assume you have a set of subdirectories named CD01, CD02, and so on, each containing a single FLAC file and a single CUE file, here’s how to convert them to MP3:
for d in CD*; do cd $d for f in *.cue; do n=`basename "$f" .cue` echo xld -c "$n.cue" "$n.flac" xld -c "$n.cue" "$n.flac" -f mp3 done cd .. done
This uses XLD, also known as “X Lossless Decoder: Lossless audio decoder for Mac OS X”. Yay! 😊
Vor zwei Jahren hatte ich mal meine Fate Variante Der Geist Mesopotamiens vorgestellt. In der Zwischenzeit ist Fate Core erschienen, und ich habe mir die Sache mal angeschaut. Ein paar Dinge sind mir sofort positiv aufgefallen:
Ein paar interessante Vereinfachungen im Detail – mir gefällt’s! Wenn das Teil nur nicht über dreihundert Seiten lang wäre. Aber das kennen wir ja schon. Deswegen habe ich mein PDF einfach überarbeitet. Meine Fate Variante ist immer noch nur 4½ Seiten lang.
Und ich habe die Dokumente auf GitHub gestellt.
Was mir noch fehlt ist eine Proberunde.
The Grandmaster: Beautiful costumes and sets, beautiful choreographers without slapstick humor, a message in favor of martial arts and against style chauvinism. The romance plot wasn’t as thick as it sometimes is in Wong Karen Wai movies and cinematography was not done by Christopher Doyle but I still liked it very much.
I agree with the critics, however: the script wasn’t too good. Or perhaps too much was cut from the original four hours. I think I’d like to see a director’s cut.
I watched Nighttrain to Lisbon (mostly because I learned that my stepbrother was involved in one of the songs via Trio Fado) which had some nice pictures of Lisbon and some interesting aspects of living under the fascist regime of Salazar and his secret police. A terrible thing. The aspects I did not like about the movie:
The Swiss and the Portuguese speak English—and just recently having seen La grande vadrouille where you need to understand French, German and English in order to get all the jokes, this pained me. I felt the Portuguese names were getting butchered. Why did they not use local actors and provide subtitles?
I felt the movie failed the Bechdel test: The women seemed to be either objects in the possession of men—to be fought over—or listening to the men in rapt attention with an appropriately bent neck.
I also haven’t read the book.
In short, if you want to see some pictures of Lisbon and get an idea of the fascist regime in Portugal at the time, I recommend the movie.
Today I needed to add the island of Tirnanog to my campaign map using Inkscape. In order to do that, I needed to add more hexes in the background—I needed to “grow the ocean”. I looked at my Old School Hex Map Tutorial and figured I must have used the Inkscape Boardgames Extension. When I checked, however, I was unable to find the menu. Perhaps Inkscape has changed and it needs to be reinstalled? I decided to give mkhexgrid another try. Fiddling with the spec file for a bit, I determined that these were the correct settings:
output=svg outfile=hex-layer.svg hex-side=45pt rows=17 columns=14 grid-color=7a7a7a coord-color=008080 coord-size=10pt coord-distance=28pt # start with an odd number! coord-column-start=37 coord-row-start=01
By now the map is so big, redoing it for Hexographer or Text Mapper seems like a lot of work. When I see the efforts required to update this map in a sluggish Inkscape on a 1024×768 monitor, however, it seems like a lot of work as well.
Update: I actually wanted to see how much time it took to get a decent result using Text Mapper and compare it with my old style, based on the Old School Hex Map Tutorial I wrote.
I don’t know. I like the colors of the Gnomeyland icons. Check out Map Symbols: Trees & Forests on Old Russian Maps by John Krygier for some source material. But really – is it much better? Is it much faster? I don’t think so.
Original, from the Wilderlands of High Fantasy box:
My “old school hex map” style:
For the curious, here is the source for Text Mapper:
3901 water 3902 water 3903 water 3904 water 3905 water island 3906 water 3907 water 3908 water 4001 water 4002 water 4003 water 4004 water 4005 water 4006 water 4007 water island 4008 water 4101 water 4102 water 4103 water 4104 water 4105 water 4106 water 4107 water island "Andaman Isles" 4108 water 4201 water 4202 water 4203 water 4204 soil tower "Marechal" 4205 dark-green forest 4206 water islands 4207 water islands 4208 water 4301 water 4302 water 4303 water 4304 light-grey hill 4305 light-grey mountain 4306 light-grey 4307 water 4308 water 4401 water 4402 water 4403 light-grey hill 4404 grey mountain "Needles Peak" 4405 light-grey hill 4406 water 4407 water 4408 water 4501 water 4502 dark-green forest 4503 light-grey hill 4504 green forest-hill 4505 soil tower "Lanka" 4506 water 4507 water 4508 water 4601 water 4602 soil tower "Calfat" 4603 soil lake keep "Kailasa" 4604 light-grey hill 4605 water 4606 water 4607 water 4608 water 4701 water 4702 light-grey 4703 light-grey hill 4704 soil tower "Heratus" 4705 dark-green forest 4706 water 4707 water 4708 water 4801 water "Windward Peninsula" 4802 soil keep "Dalmaric" 4803 soil keep "Talimanor" 4804 dark-green forest "Pardolock Jungle" 4805 water 4806 water 4807 water 4808 water 4901 water 4902 water island 4903 water 4904 water 4905 water island 4906 water 4907 water 4908 water 5001 water 5002 water 5003 water 5004 water 5005 water 5006 water 5007 water 5008 water lake xml <circle cx="0" cy="0" r="50" fill="#6ebae7" stroke="black" stroke-width="3"/> island xml <circle cx="10" cy="10" r="25" fill="#dcddbe" stroke="black" stroke-width="3"/> islands xml <circle cx="-20" cy="20" r="20" fill="#dcddbe" stroke="black" stroke-width="3"/><circle cx="20" cy="-20" r="15" fill="#dcddbe" stroke="black" stroke-width="3"/> include http://alexschroeder.ch/contrib/gnomeyland.txt 4603-4903 fjord 4602-4902 fjord fjord path attributes stroke="#6ebae7" stroke-width="20" fill-opacity="0" stroke-linecap="round" other <text stroke="white" stroke-width="10px" font-size="50pt" x="6300" y="550" transform="rotate(330 6300,550)">Tirnanog Isle</text><text font-size="50pt" x="6300" y="550" transform="rotate(330 6300,550)">Tirnanog Isle</text>
Every now and then I think of something related to artificial intelligence but forget to write it down. And then I forget it. Today I dreamt of something related to artificial intelligence and wrote it down in my dream so I would not forget. And I did not. Here it is.
I saw two robots, and one of them was deciding what the other one should do. I wondered: why is the second robot following orders? If it’s stupid, it will be inefficient in handling its task. How would I implement this? I figured that every AI needs a property that we would call lazy. A slight resistance to do what is necessary. A slow understanding of orders given. If you’re lazy, you’ll make the others do the job. Create each AI with a random value of this property, and you’ll establish a hierarchy implicity.
What to do with this idea, now? I don’t have any AI projects. I don’t even have a need for intelligent agents in a simulated game world.
I felt about 25 years too old for Pacific Rim. It was a tiny bit better than Transformers. No quiet moments and insights like in Blade Runner. No mystic undercurrents like in Neon Genesis Evangelion. No character interplay like in Mass Effect. No singing and romance in Robotech. No strangeness like in Akira. I did like the visuals of Hong Kong, the huge halls à la Star Wars. I find that good movies have me thinking back, recalling scenes, mulling the justifications and consequences of actions. This movie won’t be requiring much thinking back. It has giant robots and kaiju monsters. They fight. The solution to the problem is—as is often the case—a nuke. I expected as much but went anyway, willing to let myself be convinced. Oh well.
What about you?
For my D&D B/X and Labyrinth Lord games, I roll on the treasure tables by hand—or I have my players do it right then and there because they love doing it. The only thing I hate is rolling for 5d8 gems or jewels… So I wrote to super simple scripts to do it for me.
Today I will be running Red Hand of Doom using Labyrinth Lord rules for a friend of his and his kids again. Some notes for myself regarding the fall of Drelling:
“Goblins on the western shore!” Join Captain Soranna and her militia as they cross over?
Five rounds later:
Warnings of “road blockades, hobgoblins and ogres up in the north” by Teyani Sura, a Lion of Brindol. (Maybe one of the players will eventually want to join them?)
When the attack on Drellin starts, the fight is hopeless. The stats will be useful for future encounters, however. The stats are Open Gaming Content based on the Labyrinth Lord OGL.
Massacre at Drellin’s Ferry, first wave:
In the aftermath, looters:
Happening upon a battlefield, where ettins just killed some dwarves with mercenary pay to a nearby hold. (Will the party deliver the 6000 gold to the dwarves?)
When helping some wounded refugees, one female “travelling sorcerer” with a bandaged arm is very curious and asks a lot of questions. In fact, she’s a spider woman spy.
Tracked by barghests (goblin werwolves) near an abandoned farmhouse.
Assassins on their trail!
Google Reader was shut down. Luckily Google Takeout allowed you to download all of your data before the shut it down. I did that. I wanted to extract all the URLs to the articles I starred in order to post them on this blog… maybe.
Here’s how I did it. First, take a look at the file
(setq starred-items (with-current-buffer "starred.json (Google Reader-takeout.zip)" (goto-char (point-min)) (json-read))) (mapcar (lambda (item) (car item)) starred-items) ⇒ (items direction updated author title id)
I’m interested in
items, which happens to be an array. Let’s see what each item contains.
(mapcar (lambda (item) (car item)) (aref (cdr (assoc-string "items" starred-items)) 0)) ⇒ (origin annotations comments author content replies alternate updated published title categories id timestampUsec crawlTimeMsec)
As it happens, the URL I’m interested in is part of
alternate. Let’s make sure there’s always exactly one entry:
(mapc (lambda (item) (when (not (= 1 (length (cdr (assoc-string "alternate" item))))) (error "%S" item))) (cdr (assoc-string "items" starred-items)))
Phew! Let’s produce a first list of URLs and the respective titles:
(mapc (lambda (item) (let ((href (cdr (assoc-string "href" (aref (cdr (assoc-string "alternate" item)) 0)))) (title (cdr (assoc-string "title" item)))) (insert (format "* [%s %s]\n" href title)))) (cdr (assoc-string "items" starred-items)))
I hate feedproxy URLs and so I absolutely wanted to get rid of all the URLs starting with
http://feedproxy.google.com/. This required a bit more code since neither
url-retrieve do exactly what I want.
(defun redirection-target (url) (save-match-data (let ((url-request-method "HEAD") (retrieval-done nil) (spinner "-\|/") (n 0)) (url-retrieve url (lambda (status &rest ignore) (setq retrieval-done t url (plist-get status :redirect) url (replace-regexp-in-string "blogspot\\.ch" "blogspot.com" url) url (replace-regexp-in-string "\\?utm.*" "" url)))) (while (not retrieval-done) (sit-for 1) (message "Waiting... %c" (aref spinner (setq n (mod (1+ n) (length spinner)))))) url)))
Now I can run the following search an replace operation in the buffer where I generated my list:
(while (re-search-forward "http://feedproxy\\.google\\.com/\\S-+" nil t) (replace-match (redirection-target (match-string 0))))
Phew, thank you, Emacs!
I’ve been looking through the old blog posts I starred on Google Reader. There are so many of them! Looking at the 42 links for July 2009, I’d suggest the following are still relevant today. I’m not listing the links to “Why B/X is my favorite” because I already did that in my 2012 post Ode to Ode to Black Dougal.
Perhaps I should add some of these links to the Links to Wisdom wiki.
Recently, Courtney asked on Google+ about treasure generation. I left the following comment.
Like Jeff, I let players roll on the official tables (Labyrinth Lord) if they went somewhere I didn’t prepare and defeated or outwitted a significant foe (in my last game, it was a black dragon).
When I prepare treasure, I simply roll on the tables. The mechanized aspect of this task encourages me to believe in the independent existence of the fantasy world. I use surprising results to think of new twists: dragons without treasure got robbed, a bunch of hobgoblins with immense treasure are on their way to pay taxes to their overlord, things that enrich the world.
I never embellish monetary treasure. That includes gems and most jewelry. It’s simply there to be brought back to safety and to be converted to xp when spent in some way. I might embellish jewelry if it is expensive (500gp or more) and say that it’s a diadem, a crown, a bracelet, a holy symbol of a named person, an aristocratic helmet of a dead people.
When it comes to magic items, I still roll on the tables, but I try to embellish every single one of them. Potions have colors and taste according to a big table I keep adding to as the game progresses. Scrolls are spells from a named wizard, are psalms in praise of a particular god. +1 swords are elven swords; better weapons will pour cold, green mist when drawn, will have runes identifying their former owner (and if possible I’ll then add the same runes to magic armor to be found nearby). Again, things that enrich the world.
I find there’s also a problem of delivery. How interested are your players in actual detail if it isn’t actionable? If it is: How many pieces of actionable treasure cann they take before being overwhelmed? Three? Five? Seven? How interesting will they deem the follow-up quests in comparison to delving deeper or exploring further or pursuing their existing goals? That’s why I prefer bland monetary treasure, personally.
Recently Joff Graboff wondered about setting accessibility and considered writing an intro for the players. Here’s what I wrote on Google+ in response.
I find that writing a setting intro for players is usually a waste of time. They won’t read it and you’ll be angry. I find it easier to introduce setting piece by piece where each piece is actionable: it affects characters right now or it can be used by the characters right now.
I’ve used NPCs to suggest a different course of action, for example. Henchmen… “What, you have no backup plan? I’m not coming along with a bunch of suicidal lunatics!” Guards… “Hey dudes, be sure not to cross the river because we’ve seen owl bears all over the place!” Wise men… “Hey mighty swordsman, do you need a sage to identify this cloak of yours? No? How about some info about the dungeon up north?” Quest givers… “Yeah, something needs to be done about those brutal hobbit bandits, but make sure you avoid the trolls! I’m not paying for any healing of troll wounds.“
I even use this for party members… “The elves in the party immediately recognize the phrasing. She’s talking about a feud hundreds of years old but she would never put it that way. Elves are unforgiving and extremely stubborn, as you know.” Obviously, if demihumans are very different from us, then most of this input will come from demihumans. “The dwarf immediately knows that no dwarven king would have left a letter accompanied by 6000gp unanswered. Something must have happened on the way.”
Related, but with an eye on character background, which I think has the same problem: one person wants to write it, which is ok, but not many people want to read it.
Urban campaigns don’t have the easy execution of traditional dungeon crawls but they’re not an ineffable mystery, either. If I were in your shoes, here’s what I would do.
Pick a city. For optimum simplicity I’d pick an old, rambling, not-entirely-coherent city from fantasy fiction that you’re already familiar with. Lankhmar is a perfect example. Then change the name and just keep the feel and flavor; you don’t want to burden yourself with the difficulty of matching the details to the fiction. You just want something that can give you an idea of what the city feels like and provide you with tropes you can use when you need fast flavor.
Pick a neighborhood in the city. A shabby slum with leavening of crime bosses, corrupt officials, dubious priests, and suspicious foreigners is a good choice. Explain to the players that for the first few sessions you’re just going to be concentrating on activities in that neighborhood so you can keep your NPC roster and local activities manageable. The PCs aren’t trapped in there, but they shouldn’t expect local events to spill over into the wider city until you’ve had more time to get comfortable with the campaign.
Do a quick cut at a couple of opposing power structures: “Criminal Gangs” and “Local Officials”, for example. You can create more of these power structures as they become relevant in play. You put one person at the top of the structure- the biggest local gang boss or the local watch captain, for example. Beneath them you put two lesser figures, like smaller gang bosses or patrol lieutenants. And beneath them, you put four street-level NPCs that the PCs might ordinarily interact with, like typical gang members or local watchmen. At this stage you just give each of them a name, a distinguishing characteristic, and a rivalry/feud/friendship/debt for somebody else, either in the same structure or a different one. These relationships are important because they’re cheap and easy plot fuel when you need to explain why one guy is trying to get another guy killed, or why NPC X is willing to get help for NPC Y.
Now go to the one-page dungeon repository and start pulling maps that you could plausibly reskin into: Fortified Estates, Slum Warrens, Infested Sewers, Long-Buried City Ruins, Haunted Shrines, and other suitable urban areas. When you reskin these maps, just turn the humanoids into local citizens or denizens and drop any of the animals or magical beasts that wouldn’t be appropriate for the area- or turn them into human guards or the like if that’s appropriate. What you need from these one-page dungeons are just references- you can turn subterranean passageways into cramped alleyways and cavern rooms into tenement apartments.
Once you have these ingredients- power structures with NPCs and maps that you can reskin into interesting places- you just pick a conflict between NPCs and make that the evening’s adventure. Somebody wants something stolen, somebody killed, somebody protected, somebody rescued, something sabotaged…. Put it or them into a map, let the PCs negotiate with the locals on their way through, and then let their actions and success/failure shape the local conflicts and NPC attitudes toward them.
As a side note, don’t worry about mapping the actual city or neighborhood. Grab something online if it looks nice, but in actual play most PCs are only ever going to care about their immediate surroundings, which you can fake with a one-page dungeon map that you treat as roads/courtyards/buildings.
– Kevin Crawford
The question was asked multiple times and he got somewhat more comments here and here. I’m currently running The Wererats of Relfren by Grant Boucher and William Kurt Wenz, from Dungeon #14, p. 48–62. I’ve removed the silly and replaced the important people and locations with things from the starting village of my own campaign. It has been working very well until now!
Looking back at how things have gone in the last year I’d say that all my RPG conversation has moved to Google+ and this wiki-blog has turned into a repository of things I don’t want to loose when Google+ is shut down. All my political thoughts are on Twitter: @kensanata and I’m almost exclusively expressing myself via retweets. I’m also more than happy to talk about it on Twitter.
I post my pictures on Flickr at kensanata for myself and cross-post them to Facebook and a protected Twitter channel for the various family members out there.
When: 24 July, 19:30 – RSVP on Meetup (optional ;))
Where: Bistro Lochergut (tram 2+3 ‘Lochergut’)
The Matrix is a world within the world, a global consensus- hallucination, the representation of every byte of data in cyberspace …
Case had been the sharpest data-thief in the business, until vengeful former employees crippled his nervous system. But now a new and very mysterious employer recruits him for a last-chance run. The target: an unthinkably powerful artificial intelligence orbiting Earth in service of the sinister Tessier-Ashpool business clan. With a dead man riding shotgun and Molly, mirror-eyed street-samurai, to watch his back, Case embarks on an adventure that ups the ante on an entire genre of fiction.
Hotwired to the leading edges of art and technology, Neuromancer ranks with 1984 and Brave New World as one of the century’s most potent visions of the future. (Source: goodreads.com)
First suggested: May 2013
Supporter(s): Rene, Adrian, Leon, Nadya, Nicole, Nela