Wavatars: Debugging

By Shamus Posted Monday Mar 24, 2008

Filed under: Projects 11 comments

Okay, about a dozen people have emailed me over the last few months to tell me my code is wrong. Which is true. The line in question is where I make the URL for the gravatar.

I do it thus:

gravatar_id=$md5.jpg&;r=$rating&;s=$size&;d=$url

The important thing being that the fields have an ampersand, followed by a semicolon. The API calls for just an ampersand. So my code is “wrong”, except that it works. If I use “correct” code:

gravatar_id=$md5.jpg&rating=$rating&size=$size&d=$url

It breaks. Wavatars show up, but Gravatars do not. Everyone shows up as a wavatar.

Other people report the opposite: My code breaks, the correct code works as it should. It’s pissing me off, because I don’t have the time or the patience to sort out this nonsense, which (I’m guessing) comes from differing versions of PHP. To really fix the problem, I have to figure out what PHP options or versions are causing the different behavior, check for them, and use the different versions of the URL based on those values. I could sink a lot of hours into a fishing expedition like that, and I just don’t have them right now.

Having said that, if anyone has a guess, please drop a comment.

LATER: Perhaps it’s not related to PHP versions. I found a case where leaving the “ratings” blank would cause my code to work, and filling it in would cause the correct code to work.

 


 

Wavatars Broken

By Shamus Posted Monday Mar 24, 2008

Filed under: Projects 7 comments

An update on Wavatars:

Yes, I know recent changes to Gravtar functionality (actually, a complete re-write from Ruby to PHP) has broken my Wavatars plugin. I haven’t found time to fix it yet. This is doubly annoying because WordPress 2.5 is coming out very soon, and it will have built-in support for Gravatars. I have no idea how my plugin will work with a system like that. My worry is that it won’t, or that my plugin will become an ugly hack that runs independent of the integrated system. I might need to make small changes, or I may need to re-write the blasted thing. I dunno.

I don’t really have time to spend on it, and now I’m facing a situation where I might fix the plugin only to have the whole thing become obsolete in a week. Or perhaps require a re-write. I could install the upcoming WordPress 2.5 release candidate and find out, but that would take more time I don’t have.

Anyway, all of this whining is here to you know that:

  1. Yes, I’m aware of the problem.
  2. No, I can’t fix it right now.

Several people have fixed my plugin themselves. Someone actually sent me a .diff this morning, which resolved the problem and also cleaned things up a bit. If I manage to get time I’ll update the plugin, but I can’t make any promises.

 


 

My Favorite Podcast

By Shamus Posted Monday Mar 24, 2008

Filed under: Links 44 comments

article_microphone.jpg
Fear the Boot is a Podcast dedicated to tabletop roleplaying games and whatnot. They had me on the show in May of 2007. They hooked me up with Shawn, which led to the creating of Chainmail Bikini. I’m pretty fond of the show and the hosts, and so what follows might, to the untrained eye, appear to be little more than fanboy cheerleading. However, this post is actually a cleverly disguised diatribe on all the things wrong with podcasting in general. There are a lot of podcasts out there, run by earnest, enthusiastic, and sometimes even talented people. Rather than deface their efforts by using them as a negative example, I’m going to list what FtB does right and why it works. What this means for other podcasts and what I think of their work is left as an exercise for the reader.

FtB is generally considered a rousing success by most podcast standards, even though FtB ignores a lot of the conventional wisdom about how you’re supposed to run a podcast. This is not surprising to me at all, because I think the conventional wisdom is flat-out wrong. The rules state that you should keep your podcasts short, because people like to absorb something quickly and move on. Like blog-surfing. Like YouTubing. Like Flickr-browsing. Visitors are supposedly capricious creatures, prone to hit the back button at the slightest provocation and leave your site if there is a lapse in the entertainment. Surfers are nomadic hunter-gatherers, who seek out and subsist on entertaining media. Continue reading ⟩⟩ “My Favorite Podcast”

 


 

Campaign Logs

By Shamus Posted Friday Mar 21, 2008

Filed under: Tabletop Games 65 comments

Sometime in the early days of this site I mentioned that I enjoy reading accounts of people’s D&D sessions. Campaign logs. (It seems like we need a better name for these. “web log” got shortened to “blog”, but if you shorten “campaign log” you’ll end up with something like… “clog”, which doesn’t really work for me.) Once in a while someone finds those old posts and sends along an email with a link to their campaign log, hoping I’ll read or link it. I normally don’t mention them because they’re always brand new: It doesn’t make any sense to send readers into a brand spanking new blog with no content. What you want to do is get a few posts under your belt, and then promote it. It’s easier to get links when you’ve got content, and it’s easier to acquire and keep new readers if you have a good story to hook them.

Complete campaign logs like mine are pretty rare. Blogging a campaign is rare. Of those that do, a lot of the games fizzle out, for all the normal reasons games fizzle. Of those that go the distance, often the campaign finishes but the blog doesn’t get updated. (I was guilty of that myself for a while. It took a lot of prodding from my readers to get me to finish the thing, and our campaign wasn’t even that long by most standards.)

I enjoy reading them, but good ones are danged hard to find. Many are semi-private. They’re not hidden or anything, but the author (usually the GM) is setting things down for the benefit of the other players in the group, not strangers like me on the internet. What I look for in a campaign blog is one that will let me enjoy the session vicariously.

Everyone reads and writes these things for their own reason. Here was how I approached my own campaign blog, and what I look for in others:

  1. Let the reader sit in on your session. You need to draw them not just into your gameworld, but into your group. Let them know who is playing. (Use pseudonyms to protect your player’s privacy if you need to.) How old are the players? How long have you been playing together? Letting the reader know the age and gender of the players lets us put their roleplaying into context. Someone playing a character of a different gender and age is a lot more interesting than someone that just seems to be playing themselves, but as an elf.
  2. Be careful with the flavor text. Some campaign blogs try to turn their story into a novel. This can make for interesting reading, but it’s risky. It takes a long time to write that way, which increases the odds you won’t be able to keep up with the thing. You don’t talk that way to the players, which means you’re not so much blogging the campaign as writing a book in parallel. Odds are you’re not a professional writer, but people reading your work are going to compare you to one if you go for that style of writing. This is not always a bad thing, and honing your writing skills is always good for a storyteller, but you need to be aware that if you go for novel-style writing you’ll most likely end up doing a lot more more work for fewer readers. I give Jennifer Snow a nod for doing this and doing it well, but her site is an exception.
  3. Let the reader in on the campaign setting. Post maps if you have them. Give the reader a little background. I hit a lot of campaign blogs that feel like I just started reading a book in the middle. You don’t need to define every little hamlet and NPC in the game, but a general overview of the major locations, leaders, and problems is really important for people trying to make sense of your story.
  4. Break huge posts down into smaller posts. It makes it easier for people to read the thing if you put it up in bite-sized chunks. Some people just want to read their blogroll over morning coffee, and don’t have time for your five thousand word beast on Monday morning. It’s also a little more rewarding for you as the writer. Once you get done typing it all up, you’ll have five posts instead of just one. Finally, this makes it easier for readers to link to and comment on the bits the interest them.
  5. Normal blogging rules also apply: Regular updates. An “about” page or something for newcomers to get up to speed. Some author info. Make sure you have good navigation so visitors can easily read the whole thing in sequence.

I’m looking for some fun campaign logs to read. Don’t worry if they don’t follow my list above, that’s more a personal ideal than a list of rules. If you have or know of a good campaign log, please drop a link in the comments.

 


 

Idiots Per Thousand

By Shamus Posted Thursday Mar 20, 2008

Filed under: Random 75 comments

There was an amusing meme floating around a while ago. It began with a question posted by a user to Yahoo! Answers. The question, without embellishment or editing, appeared thus:

HOW IS BABBY FORMEd?

HOW GIRL GET PRAGNENT

There were several informed responses to this question with links to relevant articles. But they were modded down as “unhelpful”. Instead, the following response was rated as “best answer”:

They need to do way instain mother> who kill thier babbys. becuse these babby cant frigth back? it was on the news this mroing a mother in ar who had kill her three kids. they are taking the three babby back to new york too lady to rest my pary are with the father who lost his children ; i am truley sorry for your lots

Anyone who has spent any amount of time on the internet has seen this sort of thing before – barely literate people hammering out badly spelled nonsense to each other in a futile attempt to communicate. Someone took the question and the answer and turned them into a dramatic reading, with hilarious results. Even now it’s impossible for me to read the words without hearing the voice of the two Neanderthal thespians.

But what really interests me is just how horrible and broken Yahoo! Answers manages to be. Raw, pure, information got modded down, and outright gibberish was modded up. We’re talking about a system that suppresses the signal and amplifies the noise. It’s interesting because the system of user-rated comments is supposed to do the opposite. It usually does. I’ve never seen this sort of thing happen on, say, Slashdot. This is not to say Slashdot is a pure and serene forum, a place where people may go and pit their ideas against one another in an atmosphere of intellectual curiosity and mutual respect. It has the same collection of idiots and asswipes you’ll find elsewhere on the internet, but there the mod system works well enough to drown out the noise. The comments that survive moderation are usually coherent and somewhat relevant. I’ve never seen anything as bad as the answer above make it to mod “+5 Insightful”.

nano_ad.jpg
Some places on the internet – and yes when I say “places” I’m acting as if a URL represented some sort of corporeal location where one might stand, a ridiculous metaphor which we all accept without questioning or indeed, even noticing. Let’s try again: Some places on the internet are like Slashdot – rough neighborhoods where you can function if you know to steer clear of the dark alleyways and avoid eye contact with the trolls. Some places are like gaming or webcomic forums – civilized suburbs where you can make friends and enjoy a conversation. And other places are like YouTube or Yahoo! Answers – the sewer system of the internet, where likely as not you’ll drown in a septic tidal wave of idiocy and spam.

Some of the problem is scale: The bigger the community the more idiots you’re bound to have. There is some ambient level of morons that you just can’t get rid of. If you think of idiots as a contaminant, then it may be useful measure them as a portion of the whole. Say: Idiots Per Thousand. The IPT of any given site can’t go below a certain base value: The level of background idiocy on the internet. But idiots have a tendency to drive normal people away if they are allowed to run unchecked, thus increasing the saturation of IPT.

But scale can’t account for everything. Some places just suck and are overrun with illiterate vermin, to the point where to solve the problem you’d have to burn the whole thing down and begin anew. Some places operate for years and remain useful, and others spiral into a spam-infused oblivion. I wonder why. Is it subject matter? Moderation policies? Recruitment practices? (Sites that beg everyone and anyone to join do seem to be worse off than ones that require forethought to join.) Is it the age of the userbase? The perceived attitude or “voice” of the site?

Perhaps I should post the question to Yahoo! Answers: how is comunaty formed? how does wabsite get peepole

 


 

The Misery Drug

By Shamus Posted Wednesday Mar 19, 2008

Filed under: Personal 69 comments

drugs.jpg
I get migraine headaches from time to time. Some are debilitating, some are just really painful. During the worst ones I usually sit in the dark with ice on my head. Neither of these things really lessens the pain, but they give me some sort of comfort while I wait for the thing to blow over. The pain tends to come in waves, always behind one or both eyes. I’ll have a constant dull pain punctuated by short periods of more intense pain every few minutes. When the wave hits I usually get nauseous and close my eyes. I’ve never found any drug that helps, short of knocking me out. Most headaches last between four and eight hours.

The headaches first appeared when I was nine or ten. I’ve spent many years tracking behavior, diet, weather, mood, stress, and other factors looking for the cause of the headaches, but I’ve never found anything conclusive. I just get them. Sometimes I’ll go for months without getting one. Sometimes I’ll get three in a week.

What’s interesting is what happens when they end. Sometimes I get this wave of mild euphoria. I’ve been suffering so much that the mere absence of pain is pleasure. It’s a kind of sensation of inner peace. I walk around droopy-eyed, breathing this sort of constant sigh of relief. This period might last up to an hour. It’s pretty nice, although nowhere near worth the price I paid for it. I’m in that phase as I write this at 5:30am on Wednesday morning. It’s enjoyable, although even now in the midst of the it I’d gladly trade it away if I could have my night back, headache-free. I had things I wanted to do, which included getting a full night’s rest.

The reason I bring this up is because I was thinking about how drugs and alcohol work just the opposite: They give you a period of pleasure, followed by an interval of misery. I remember getting drunk a couple of times when I was in my early twenties. The last time I was drunk I found myself puking my guts out. As I sat there on the floor of the bathroom in my parent’s basement, leaning my head against the wall and looking down into the toilet, I wondered, “What in the hell is the sense in this? There is no way this was worth it. Not even close. How can people do this to themselves?” It was the last time I was ever drunk. I still don’t get it. Do other people hate hangovers less, or is drunkenness the result of a repeated failure to do cost / benefit analysis?

But it makes me wonder what would happen with a drug that worked in the opposite direction. What if there was a drug that worked like my headaches: It makes you intensely sick and miserable, and when it wears off the “hangover” is euphoric pleasure. Assume the intensity and duration of the high and the crash are the same as regular recreational drugs, just in reverse order. Would people do it? Would people take the drug? If it was habit forming, would the habit be easier to kick? Would it spread socially like other drugs? Dude, take this. You’ll feel horrible for a couple of hours and totally hate me for giving it to you, but then it’ll feel awesome.

 


 

Indie Game Development

By Shamus Posted Tuesday Mar 18, 2008

Filed under: Projects 64 comments

Black Sigil
I’ve mentioned before that I’m currently working on an indie game for a small Canadian studio. For a while I’ve needed to be vague on the details, until we could be sure that everyone was comfortable with me blabbing about it here, to what is often thought of as a large audience. (Apparently I sometimes underestimate the impact of my traffic, but only because I’m too busy looking at all the sites ahead of me.) But now we’ve reached the point where I can speak freely…

The project I’m working on is Black Sigil: Blade of the Exiled from Studio Archcraft. (The game was called “Project Exile” during development, and that’s still the name you’ll see on the website in various places.)

I’ve actually only played the first couple of hours of the thing so far. I know it’s unfair to compare it to something like Final Fantasy VI, which is older and has earned its place of legend among titles of the past, but as a recent newcomer to both titles I’d say the start to Black Sigil hooked me in better than the start to FFVI. It’s a shame, really – I’ve read the Black Sigil design docs and I know how the story unfolds, which kind of ruins it for me.

The game began development as a GBA title, and has since moved on to the Nintendo DS. It’s been in development for a while and I’m only getting involved now as the thing gets ready to cross the finish line. The bulk of the work I’ve been doing is simple stuff: Scripting pre-written dialog and choreographing cutscenes. It’s not creative work, but it’s important and a natural way to get to know the technology and tools. I’ve also been doing some writing and game design stuff for another project, but that stuff is still in the preliminary stages and hasn’t evolved very far past mere brainstorming. It’s the kind of stuff I live for, but the scripting needs to be done first.

Actually I shouldn’t call the scripting work “simple”. I know from experience that no system is ever as simple as it looks from the outside, but being aware of this truth and being subjected to this truth are always two different things. The work was actually rife with eye-crossing complexity until I figured out what I was doing. In my very first session with the tools, it took me something like two hours to get a couple of NPC’s to have a little conversation – five lines of dialog – in front of the player. This is the sort of experience that will bestow humility in short order.

Being introduced to a new toolset has several distinct phases:

  1. This is very confusing. There are so many buttons! Why does this have to be so complex!?!?
  2. Okay. I sort of get it now. I guess I can live with this system.
  3. You know, this thing is actually pretty powerful and well-organized once you understand how it works.
  4. This tool is the best for this particular job, the standard by which all other tools should be judged. You can have it when you pry it from my cold, dead hands.

I’m somewhere between steps 2 and 3 right now. I do not claim to be at all proficient with the thing yet, but I’m at the point where I can make the characters have a little conversation without expending an entire evening in the effort. A lot of this stuff would be done in minutes if I could somehow download, Matrix-style, the knowledge and familiarity normally acquired through repeated exposure.

This demo movie is pretty old, but this is more or less what the game looks like, and should give a good overview of the plot:

Since I’m not going to be playing the game normally, I don’t plan on doing a regular review series for this. That would be pointless anyway, since the game isn’t out yet. But I do expect to talk about the game more as it nears release. The usual disclaimers apply: I’m working on the game and have a certain attachment to it at this point. Calibrate your perceptions of my words accordingly.