Another Hero Down

It's been a while since we've been out hunting. The practise is appreciated, unexpected though it may be. Erik is doing the actual fighting - he's the hero after all. I'm more of a lookout or support type. I try to make sure that he doesn't get caught off guard or get mobbed. Anyway, back to the matter at hand. Erik is beating on a pair of amorphous critters with tentacles and too many teeth. A kick here, a punch there. Maybe some slicing with the boot dagger that he takes with him everywhere. I'm hanging back, close enough to intervene if the critters get the upper hand, but far enough away that I'm mostly out of harm's way and can keep an eye out for any additional trouble. I'm not prepared for a fight tonight, and I'm not exactly keen to go hand-to-tentacle.

Things are going pretty well: he's keeping them at a distance, getting a quick attack in when he can, and making sure they don't flank him, until... He thinks that he sees an opening and starts wailing on the critter on the left. Probably trying to put it down. Unfortunately, this leaves him wide open for attack from the critter on the right. Despite their penchant for eating brains, amorphous, tentacled, blob monsters from Beyond the Stars are not particularly bright. Even still, it can recognize an opportunity when it sees – errr... senses - one.

That's my cue. While I might not be the hero of the piece, I've got to keep the hero alive so that he can keep on heroing. I run forward, towards the critter on his six, and land one hell of a heel kick into the centre of its mass. Ichor sprays from the impact and a piercing shriek echoes from one of its many mouths. It rounds on me, or at least its tentacles start waggling at me rather than him. I give it a solid kick as its tentacles grasp at my jacket, searching for purchase. The creature slides towards the wall, trailing a thick layer of goo. Erik, finally finished with the first critter, rounds on the second and rams his boot dagger into the quivering mass of tentacles. He slices through the bundle and it begins to haemorrhage ichor. The two critters are flailing madly and spraying green goo across the walls.

After a couple of minutes, when my pulse has settled down and there's nothing left but two puddles of green goo, we take the stairs down to the platform to wait for a 95. It's time to head home.

We ride the bus in silence up to Laurier. I'm kind of pissed. I've got ichor on my jacket and boots, and it's going to be hell to get off; as I said, I wasn't looking for a fight tonight. We walk a couple of blocks east and stop at the coffee shop that's on the way home; I need something to drink and I've got to have a talk with my hero. We each get our usual and pay the barrista for the overpriced coffee. The music is pretty horrible and the chairs are designed more for looks than for comfort but it's on the way home and it's still open and right now, that's really what counts. We sit down in one of the poorly lit corners, as far away from any of the people in the place as we can manage. Not surprisingly, most people are uncomfortable with the kind of conversations I'm used to having.

"You know kid, you left yourself open to that beast back there. The damn thing could of had your frontal lobe for lunch," I say in hushed tones.

"No problem," Erik replies, casually taking a sip of his latte. Or is it a moccaccino? "That's why I've got you watching my back."

His lack of concern is really starting to bother me. "Except for the fact that I don't exactly excel in combat - particularly when unarmed. You need to be careful! Those things were a piece of cake, you really shouldn't have needed any help at all."

"Don't worry Kat! You said it yourself: those things were a piece of cake. Both of us knew that. We fight something serious and I'll take it seriously. But tonight was just a little bit of fun to get our blood pumping." He's smiling at me as though I'm an over-concerned parent who needs to be placated.

"Speak for yourself, this is a new coat and it's going to be a bitch to clean. Anyway, I've got to open at the diner tomorrow, so I'll see you later. Just remember: this isn't a game, and those grease spots with tentacles will seriously eat your brain if you give them half a chance."

"G'night Kat. You worry too much."

***

It's been a couple days since I ruined my boots stomping the life out of a tentacled horror beneath St. Laurent Centre. Apparently, the little buggers have the gall to have leather destroying ichor instead of blood. As I bus my last table I'm a little apprehensive. Tonight, Erik and I are heading out to Confederation park with the hope of taking down a monster or two. The Citizen has been reporting random violence in the area, which in my experience, is good indication that something with tentacles has taken up residence.

After sundown, we meet atop the McKenzie King Bridge. I set up in a shadowy area about half way across the bridge on the south side so that I can see the entire park. My binoculars are around my neck and my rifle is in my right hand, concealed beneath my long, black, only-a-little-bit-ichor-stained jacket. The rifle's loaded and my index is on the trigger - it's no use being here if I'm not prepared for the worst. The rifle would be out and aimed already if I wasn't standing less than fifty feet from the Department of National Defence. The Forces get pretty pissy about people, other than them, walking around with guns right outside of their headquarters.

Erik's gone down the stairs, and he's patrolling the park. I've already done a quick sweep with my binoculars and I haven't seen anything, but that doesn't mean there isn't anything here. I keep sweeping the park while keeping an eye on Erik, but he soon finishes his search empty handed.

There's a vibration coming from my left pocket, so I reach in and grab my cell.

"Kat here," I say softly but clearly.

"There's nothing in the park proper," I hear Erik say, "so I'm going to check under the bridge. It's pretty dark under there - I'd say it's a pretty good hiding spot for a gooey non-human."

"Alright, sounds like a plan. Wait 5 minutes so I can reposition though - I'm no help to you on top of the bridge. I won't be able to see you, let alone cover your ass."

"Sure, come on down Kat. I'm sure I'll have killed them all by the time you get down here though."

I can here the grin in his voice. He's going to go in alone before I'm in any position to help him. It's this type of cheeky behaviour that gets a hero killed.

"Erik, stay right where you are and wait until I get down there!"

Click

The idiot's going in alone. I pocket the cell, rip the binoculars off my neck, and start running. With any luck, I'll make it down and the cocky bastard really will have killed them all. Unfortunately, the universe isn't generally that accommodating.

I'm in the park proper now and running toward where Erik should be. I can hear the sounds of a fight, but it's night out and there are far too many shadows for me to be able to see anything. I keep running and hope for the best. I start to hear screaming, the normal boring, single-mouthed, human kind. I round the corner and see a much larger tentacled mass that either Erik or I are used to fighting. I freeze, hoping I'm out of range of it's long grasping tentacles and raise the rifle to my shoulder. I put three rounds into the centre of the mass of writhing appendages. I'm using the concrete ceiling of the bridge to provide a backstop, I just hope that it hasn't picked up Erik and is holding him in my line of fire. Jets of thick black ichor spray from the centre of the beast. It tosses Erik aside like a rag doll and turns towards me. I let loose three more rounds and then swap the empty magazine for a fresh one. The beast looks... stunned as buckets of ichor, spray, ooze and drip from the central bundle. In my experience, regardless of how far beyond the stars a creature may hail, nothing quite puts it in its place like hot lead.

I stand my ground and unload two more magazines into the beast as it sits transfixed, quivering. Slowly, the life fades from the tentacled monstrosity and I feel confident enough to approach and investigate my downed hero. Once I get there, I know I'm too late. The creature's done so much damage, not even a team of the best surgeons could undo what's been done, and that's provided they could get his head back from the gullet of the beast. Just then I hear shouting coming from above me on the bridge. It would seem that the MPs have taken issue with my firing of a high-powered rifle spitting distance from DND. I guess it's time to haul-ass, that's another hero down and it's down to me find the next one.

DST and double takes

/blog/entries/2008/03/09/dst-and-double-takes/dst-6a54a7465383.min.jpg

First Day of DST

I woke up this morning and discovered that my computer clock was no longer synchronized with the rest of the clocks in my apartment. Apparently, the DST change-over was this weekend and we are officially on Summer Time. There is at least a foot of snow on the cars in the parking lot outside my apartment and about three feet on the ground and I haven't actually seen the sun in days. WTF!?!

Initial Impressions of Ruby on Rails: An Excess of Magic [1]

After a solid 24hrs of working on a school project involving Ruby on Rails I've decided that RoR relies on more magic that I really feel comfortable with. Admittedly, I've only been working with the language/framework for a short time so it's unlikely that I've "got it" yet, but it just seems that magically choosing the template and then magically packing up the controller's instance variables to provide context is just too much magic. The fact that the session and request objects are magically present and that the response materializes out of a method that as far as I can tell returns @user bothers me. Sure it makes getting that initial CRUD application running dirt simple, but once you want to actually start programing you have to figure out where this stuff comes from and goes to anyway (And then there's the generated code2). That being said, once I got a handle on the basic stuff, I essentially started writing Django applications using RoR :D. The fact that I've basically reverted to writing Django applications using a slightly different syntax and API probably says more about my relative level of comfort with Python+Django vs. Ruby+Rails than anything else.

One thing that does stand out as cool is RoR's use of Ruby as a template language. After all, if I'm a Ruby programmer and I like Ruby, using Ruby to write templates sounds like a great idea. This is exactly the reason that I'm not particularly fond of RoR's approach to ORM. If I'm a Ruby programmer and I like Ruby, wouldn't it be great to define my database schema using Ruby. Except that I don't. At least, not if I'm using Rails+ActiveRecord. I define my schema as a series of diffs, serialized as ActiveRecord calls. This approach provides some cool features, except that if I want to know what instance variables an object has I don't look at it's class, I look at the DB which doesn't feel quite right.

I think both Ruby and Rails could provide a productive application development environment on par with what I'm used to with Python+Django; however, RoR does not inspire a profound sense of "Oh-my-god!-I've-been-doing-web-apps-wrong-all-along." but that might just be the fact that I write MVC web apps whether I'm writing Python or Ruby or even Java. That being said, the project's not over yet, I may yet stop worrying and learn to love Rails.

[1]I fully realize that writing about Ruby on Rails was cutting edge about 3 years ago; however, I've only just started using it, so I only have initial impressions now.
[2]I don't really like generated code. Not all code generators obviously. I like compilers and JIT compilers and even it's-a-code-generator-that's-logically-equivalent-to-a-compiler, but I'm really not a fan of here-I'll-generate-this-boilerplate-code-for-you which works fine until you realize that you should have generated the boilerplate code with option Y. Now you have to decide are you going to port your changes to a freshly generated template or are you going to port option Y to your current code? Neither of which is particularly attractive. In the case of Rails, I find that the code generation doesn't get you much and at the same time obscurs how the framework actually works.

Regression Analysis and Puppies

/blog/entries/2008/03/06/regression-analysis-and-puppies/puppies-8d5e846bc54f.min.png

Appologies to xkcd1, but here's an idea that's been banging around in my head for a couple of days.

[1]xkcd is a truely wonderful comic that I can only ape in my wildest fantasies (No, not those fantasies. The ones where I pretend I can write witty prose).

Game Master's Workshop: Lifeblood

Developed by Yuan-Ti clerics of Merrshaulk, lifeblood is an elixir used by the Yuan-Ti to heal wounds in battle. It is created using the fresh blood of a humanoid, strong alcohol and dark magic.

A creature that drinks 250 ml of lifeblood must make a fortitude save of DC 20, upon success that creature gains 1D8 + 5 hitpoints and heals 1 point of ability damage; however, should they fail, they suffer 2 points of Constitution damage. Creatures that are accustomed to the taste and texture of fresh blood (e.g. carnivores) gain a +10 bonus to this save. Additionally, undead such as vampires which feed on blood or flesh are healed by lifeblood rather than damaged by it and automatically succeed their fortitude save. Lifeblood has the intoxicating effect of a strong drink.

Moderate Necromancy [evil]; CL 3rd; Brew Potion, Cure Light Wounds, 25gp

Commentary

I kind of like the idea of providing a healing fountain in a dungeon; however, it would be completely silly to give a party 100 litres of healing potion and it seems kind of hackish to say that the fountain is magical rather than the water. Lifeblood represents a solution by introducing healing potion with drawbacks.

Drawbacks

Danger
The use of lifeblood carries a risk of suffering ability damage. This is particularly dangerous as the loss of Constitution may result in the death of the creature being healed.
Density
A cure light wounds potion occupies 30 ml whereas a dose of lifeblood occupies 250ml, cure light wounds potion is approximately 8 times as effective per millilitre. Consequently, lifeblood is far less portable due to the sheer volume that must be transported.
Evil
Possessing flasks of humanoid blood that emits an aura of evil may be considered objectionable in some societies.
Intoxicating
Due to alcoholic content, lifeblood caries the risk that the imbiber may get drunk if sufficient quantities are consumed.

Advantages

Cost
Creating lifeblood is a relatively cheap way to heal creatures, provided the creator or their deity has no ethical difficulties with killing humanoids to produce it.
Power
A single dose of lifeblood is strictly more powerful than a potion of cure light wounds (provided the user succeeds in their saving throw).
Scenic Effect
Blood flowing through the fountains of a dungeon has a very powerful scenic effect.

Technical Notes

Alcohol acts as an anticoagulant and an antiseptic in lifeblood. This provides the benefit that the blood should not congeal and thus can be made to flow through fountains and should minimize the amount of bacterial, viral or parasite growth.