Skip to content

WWDC!

So. I’m sitting on a plane (not while I post this, I might add – even if someone had the presence of mind to set up a wifi hotspot over the entire Pacific ocean I’m limited by the fact that radio waves make planes fall out of the sky), heading towards possibly the most daunting experience I could imagine. I am going to the Apple “World Wide Developer Conference”. Apparently I didn’t have enough of a reason to go to E3 (disappointing!), so work has packed me up and sent me off to keep abreast of the developments in the Cult of Jobs. This post serves to document the man I was – just incase they manage to get their claws into me during the biggest brainwashing event of the year. I’ve already left myself a video message which hopefully will point me in the right direction should I suddenly get the urge to wear turtlenecks and tight, tight jeans.

Read more…

Can I just say…

"Dragon Age Women". GIS even returned a Maxim shot. Saucy.


I was looking at my blog stats just then, and it seems that the top searches that point people here are:

  • bethany dragon age 2
  • what should pulled pork look like
  • i bought dragon age when it came out they ripped me off
  • dragon age women
  • dragon age sister
  • 80286 memory addresses

Amazing.

Programmers, virtual functions and interviews

Google image search can be quite unexpected sometimes.

Programmers!

Who needs them anyway? Well, it turns out that we in the games industry can sometimes find a use for them. One of my duties (perhaps surprisingly, especially to those who have met me) is to interview prospective games programmers and cast off any aspersions they have to the job.

In my experience, applicants tend to come in one of the following flavours:

  • computer science students (making up about 90%) can’t program their way out of a singly-linked cardboard box. They have just graduated university (or sometimes, inexplicably, have been working as a programmer for several years). They have once heard of the term “algorithm”, and almost all of them have come out of a Computer Science course with obscene marks (furthering my belief that CS courses in uni are taught predominantly by lunatics);
  • software engineers, people for whom boost and the STL are the second coming of Jesus, people who seriously believe that someone has a use for a hash_multidequeue. They are mercifully rare and generally don’t last long because the games industry doesn’t fit their ideas of a well run system;
  • finally, we have the dungeon masters, people who dissolve caramel sweets into orange juice – while lecturing their senior programmers about the length of the integer ALU on the Motorola 68060, and how we should really be “thinking more about pipelining”. While the first group of applicants invariably becomes a group that doesn’t understand how much better other programmers are, this group becomes the set which doesn’t understand how much worse they personally are. Obviously I am part of this group.

Occasionally, you get a hire-able person from of any of the three above, or, even more rarely, you find someone actually worth their salt (yes, we still pay people with salt in the games industry, times are hard). However, I am not here to talk about any of them – that was one of my tangents. I am here to talk about the people who read Gamedev or Gamasutra, and believe everything in it – to the point where they repeat tired old maxims that have been perpetuated by the generation of programmers that refuses to use C++ because “all that OO stuff makes it slow”.

So, we lurch inexorably towards the point of this post. Virtual functions. I have told all of my team to get over it and use them where it makes sense (which is often quite a common occurrence), but I keep hearing people in interviews telling me that virtual functions are slow. So, like the scientist I am, I decided to find out once and for all what the deal truly is.

Read more…

Dragon Age: Origins DLC – Leliana’s Song

Where can you find a vague sense of dissatisfaction, three hours less life than you started with, and a whole two weeks of implied raping, for the low, low price of $7? In retrospect, there are actually quite a few answers to that question, although the correct one is the Dragon Age: Origins DLC, Leliana’s Song.  It’s set a few years before the events of DA: O, and chronicles Leliana’s fall from grace – the role of an Orlesian “bard” (criminal), her mentor’s betrayal, and her subsequent induction into (or should I say, “indoctrination by”) the Chantry.

Assume the role of Leliana, a young bard involved in a criminal ring that deals in political secrets. Accompanying her mentor Marjolaine on a high-risk mission, Leliana soon finds herself entangled in a game of intrigue that she cannot escape with just her beauty, charm, or stealth. The only way out of this game is to kill or be killed.

If this were DA2, those pumpkins would be ~animu-styled~ and on fire.

The story “opens” with you performing minor acts of vandalism and violence for your mentor, Marjolaine, in the market district of Denerim. Knocking out and humiliating a captain of the City Watch, bashing up a nobleman, stealing from a few merchants, etc. It was a little slow paced and slightly underwhelming – like a Neverwinter Nights community module. It did, however, have some goals beyond “kill this person”; it even had a small amount of actual writing.

I have to say, this was the best part of the module – it even looked like it had a branching “plot” (insomuch as there was a plot at all). As part of your brief, you’re meant to cause trouble, such as planting stolen goods on unconscious noblemen and making it look like one of your targets is an apostate. There are lots of possible combinations, but, sadly, after an hour of experimenting, I can save everyone the effort and tell you that there is only one option which does anything – to place every single incriminating item on the captain of the watch.

You see, this kind of half-assery is what infests DLC as a whole. The last real expansion of note for an RPG was the sublime Shivering Isles for Oblivion. Which was released, wait for it, four years ago. DLC is a plague on gaming in much the same way as consoles, and the newly christened wankery of casual gamers. After all, they disabled friendly fire from Dragon Age 2 for the console “gamers” (I use the term loosely), but they removed the option for friendly fire from the UI just in case it confused the casual player mouthbreathers (seriously, Bioware were concerned they might accidentally turn it on and smash their Xbox in a fit).

This is the kind of party I wish I were invited to. The kind with murder.

Anyway, the plot continues with a break in (to a castle map recycled from DA: O), another break in (to the same map – you wouldn’t want to blow the budget), a predictable betrayal followed by a harrowing suggestion that your protagonist spent 2 weeks chained in a dungeon “satisfying the guards” (complete with disturbing imagery). The last half an hour of the module allows you to escape, take out bloody revenge on your mentor and captor, and finish it off with a short detour into religion-induced insanity (don’t get too excited, it’s just a disembodied voice and a trip to a church).

I wanted to like this, I really did. Compared to the Darkspawn Chronicles, Leliana’s Song is like a perfectly pitched epic fantasy adventure. Unfortunately, so too is a baked potato. It suffers from the usual problems with DLC; bad pacing, no real investment in the characters, and the unmistakable  stench of “afterthought-ness”. It was quite strange to play, actually – it felt disturbingly similar to the innumerable, interchangeable NWN modules from 2003. Nothing really stood out as being good or particularly bad, it just started, happened, and ended. To be honest, the dungeon scene was probably the highlight of the whole thing because I at least remember it clearly.

Bioware may be making money hand over fist with stuff like this, but seriously, they need to try a lot harder if they want to keep their real fans.

Gameplay
A small slice of Dragon Age: Origins. It has a few small but vaguely interesting ideas (poorly executed, but what can you expect of the Bioware ca. 2010?) 6/10
Art Direction
Some new models! Someone actually had to modify the market district level a little bit! The new stuff isn’t bad, it’s just infrequent. 5/10
Story and Writing
Predictable and hammy, but not mind-meltingly terrible. I did try to look for the advertised intrigue, but I couldn’t find it. 5/10
Sound and Music
I have to give it credit here because they added some new songs to the game – not only that, but the music was both fitting and quite enjoyable. All the characters are voice-acted with Leliana’s actress reprising her role. 7/10
Longevity
I didn’t actually get bored of it while playing until the very end, where they decide to pad it out with some pointless wilderness. It has a replayability factor of approximately zero, however. 5/10
Technical
I encountered a single scripting bug, nothing that made me too angry. 6/10
VERDICT:
40%

If anything, this module sums up the new Bioware – shallow, mediocre and unimaginative. I can’t even recommend it to serious DA: O enthusiasts because it’s just unimpressive. It costs about $7 in Bioware points, and gives you about 3 hours of playing time.

Links: Bioware DLC Information

Memory Management from the Ground Up 2: Bitmap Allocator

This is the second post of my series about memory management. The previous post was a basic introduction, covering how the operating system views memory. In this, and the next, post, we’re going to dive straight into the C++ code, and implement two very simplistic allocators. These two allocators are not useful for any form of production code, but they will (hopefully) provide a basic foundation for future, more advanced allocators.

We will look at a very trivial fixed size allocator – a bitmap allocator – and, following that (in the next post), we will look at a more flexible system.

Read more…

Memory Management from the Ground Up 1: Introduction

This is, according to Google Image Search, a picture of PROGRAMMING.

Welcome to my first post in a series about memory management in C++ (specifically, in games). In this, I will discuss how memory allocation works, why custom allocators are used in many programs, and what goals a custom allocator should fulfill.

In the course of this series, I hope to cover several designs of allocators, show some benchmarks, and explain the pitfalls of writing your own allocation system from start to finish. There is a lot to cover, and I’m going to be assuming a reasonable level of C++ competency.

Ready to dive in?

Read more…

Dragon Age: Origins DLC – The Darkspawn Chronicles

The Darkspawn Chronicles is the first real DLC module that Bioware released – I find it difficult to really acknowledge the existence of Return to Ostagar and Warden’s Keep given how insultingly bad they were, and will be leaving them for last. DC takes place in a bizarro alternate universe where the Warden Commander (i.e., you in the main game) died or perhaps never made it through the joining. Alistair has been crowned king, and has somehow managed to, in between feeling sorry for himself and lusting after Morrigan, accomplish all that your character would have in the normal game. You play a Hurlock Vanguard, who, for all intents and purposes, is just a sword and shield warrior in heavy plate armour. Your task is to lead the assault on Denerim and ensure victory for the Darkspawn.

You now fight as the Darkspawn! The city of Denerim, jewel of Ferelden, girds itself for war. As a hurlock vanguard, you alone hold the power to make thralls of your fellow darkspawn and drive them into the heat of battle. Heed the archdemon’s call Denerim must burn!

– Official Blurb

My happy Darkspawn family, me, "Crush Face", "Ghargh" and "the Irritating One"

Now, anyone with two brain cells to rub together should be pretty put off by this concept immediately – not only are they stripping all the non hack-and-slash mechanics by making the quest star a bunch of literally brainless, mute monsters, but they’re also replacing the (broken and badly balanced) player skill tree with the super limited monster skills of the Darkspawn. This entire module has no progression, no characterization, and no role playing at all. It’s a poorly implemented strategy game, more than anything else.

The game sets you up at the city gates with your Hurlock Vanguard. You have to punch through the defenders (led by notable characters from the game), and complete several minor quests for the Archdemon. These quests are all very simple, such as “kill the gate guards”, “kill the nobleman”, and, to mix it up a bit, “murder 10 innocent civilians”. It’s made slightly irritating by having constantly respawning mobs of enemies, but because Bioware have, over subsequent patches, progressively lowered Dragon Age’s difficulty from “respectable” to “console gamer friendly”, they prove to be little more than an annoyance.

Throughout your murderous rampage, you can “recruit” other (constantly respawning) Darkspawn minions using your enthrall power, which adds them to your party. While the Vanguard is basically a level 10 warrior with useless skills, the thrall Darkspawn are all effectively level 10 gelatinous cubes with no skills whatsoever, except their signature attacks. They are unable to use any items (even healing items), and upon dying, they get removed from your party.

I wish I had a capture of my ogre repeatedly punching Oghren in the face. That was the best moment of the entire game.

Fair enough, I suppose. It seems that I can’t really pick which I prefer – the thrall Darkspawn feel totally under-developed as classes (no surprises there), while the Vanguard is a vanilla human warrior with no discernible character or personality beyond a bitchin helmet. Each of the thralls has a different set of four or five skills, but the important thing to remember is that Ogres crush faces, and Shrieks are the cheatiest bastards ever, attacking about 2x faster than anything else. I pretty much completed the latter half of the game controlling the single Shriek in my party while telling the rest of my group to hold position at the gates.

You fight through the main Denerim districts, murdering the innocents in the market district (including Wade!), setting fire to the Elven Alienage tree (serves it right), and facing a preposterous number of respawning bastards in the palace district. While this is going on, you encounter members of the Origins party strategically placed (Oghren was in the market tavern – and before you get excited, no, you couldn’t go inside – but I made sure to kill him as brutally as possible) in the city. They must all be defeated. Especially Oghren. I can’t believe they brought him back for Awakening.

The final stand. See the fear in their eyes.

It ends with the showdown on the top of Fort Drakon, only you play as one of the Darkspawn mobs that comes in to help the Archdemon. There, you must defeat Morrigan, Alistair, Leliana, and “Barkspawn” the war-hound (I am so glad they chose that name to become canon). Naturally, if you have a Shriek or Ogre (or, better, both) you should have no difficulty crushing their puny human bodies and ensuring that the Archdemon reins supreme.

So. Overall? Well, I suppose in terms of sheer time to money ratio, it wasn’t bad. Sadly the whole affair was half-baked. It involved no (obviously) new assets, and, frankly, could have been thrown together by a junior using the toolset without any issues. The levels are all reused from the final battles of the main game, there is no dialogue at all, no meaningful choices, and really, no effort from Bioware.

Gameplay
Same mechanics as Dragon Age: Origins, only without the “RPG” bit. I guess they were practicing for DA2. 4/10
Art Direction
Nothing new here at all. N/A
Story and Writing
No. 0/10
Sound and Music
Reused from DA: O. N/A
Longevity
I got bored with the DLC about 20% of the way through, so I’d say there isn’t much. -2/10
Technical
I had to restart two areas because of buggy quest triggers. FPS was weirdly terrible. 2/10
VERDICT:
23%

An absolute rip off. The whole idea was doomed to failure from the outset – you can’t just plug in the underdeveloped antagonists as the stars of an expansion module. The module was disappointing, but at least I was prepared for it. The whole sordid experience lasts for about 2 hours, and costs $5 worth of magical Bioware points.

Links: Bioware DLC Information

Energy Drink Review: Monster X-presso: “HAMMER”

Monster X-Presso: HAMMER

Okay, yes, I promised a Dragon Age DLC review today, but firstly, the DLC is so appalling that trying to wade through it is a lot like actual work, second, the DLC authorization/downloading stuff is as buggy as all hell, and third, it’s my damn blog and I can do what I like. I will, however, be reviewing an energy drink instead.

Monster is a fairly popular energy drink over in the states, but here it’s only really just started to appear. I’m not sure if we have got a reformulated version of the drink (or just a renamed version), but the “normal” Monster drink we get here has the dubious honour of tasting uncannily like dust – somehow it even manages to match the texture of it too. Think of it as being kind of like a liquid version of what you try not to inhale when you’re emptying a vacuum cleaner, only caffeinated. I generally avoid it, but today, I saw something exciting. A new Monster flavour – indeed, a new Monster concept.

Enter the preposterously named Monster X-presso: HAMMER (I believe the actual flavour is called “HAMMER“, while the drink itself is “monster x-presso”), the first “coffee” “flavoured” energy drink beverage to hit the shelves down under. Now, coffee in cans is nothing new to us here, we do, after all, live quite close to Japan, and those crazy chaps seem to have created an export economy based on cars, hello kitty, tentacle rape and coffee-inspired drinks. I think that coffee in a can should intrinsically be setting off some alarm bells with any sane person – especially given that they tend to contain milk and sugar, and, last I checked, milk wasn’t shelf stable. A quick examination of the can confirms that HAMMER also contains skim milk “concentrate” and cream (why not just use normal milk “concentrate”?), so, at the very least, I’m assuming it’s been heat-treated to buggery (or maybe irradiated) to give it a whopping 2 year unrefrigerated shelf life. This fact may start to explain the taste.

Hammer, home of the FOAM ZONE

But let’s rewind just a bit – I have (in moments of desperation) actually drank some of those suspicious cans of coffee from my local mysterious asian grocery store (you know the ones). They tend to be weirdly unlike what you wish they were, but some of them are passably drinkable. However, none of them released a noticeable fizz when being cracked open, unlike THE HAMMER. Actually, I was so shocked by it that I re-inspected the can, discovering an intriguing label (or is it, more accurately, a map?) as I did so. Well, don’t be fooled – despite the promises, my foam zone was a paltry centimetre high (maybe my Hammer was underpressurized), and there was no “creamy espresso”. In fact, what there was barely deserves to be called a “drink”.

Many energy drinks have an interesting taste – kind of like what you might imagine our space-faring descendants would be forced to drink in the deep darkness between stars to stop them from growing extra limbs or turning into gelatinous cubes, but this was different. This was, quite simply, a bit rubbish. It wasn’t even the kind of rubbish taste that you hope for; the kind where you can throw the glass down in disgust and cry out for a truffle to clear your palette. No, instead, it was okay – by far the biggest problem came from the sweetness level, which had been dialed up to 11.

In terms of nutritional content, it’s pretty lacking. It’s partly artificially sweetened, so, ml for ml it has about 50% less sugar than juice, it has about the same amount of caffeine as a regular cup of coffee (without the pesky taste), and it has a whole gram of taurine (which, I have no doubt, will pretty much pass straight through you).

Appearance
Looks like alarmingly weak coffee (or perhaps milky tea). Has a strange, short-lived head or “foam zone” as I have been told. 3/10
Taste
Like a milky, rubbish coffee prepared with ten-thousand year old coffee grounds by an Englishman. Only they have decided to make it impossibly, sickeningly sweet. 2/10
Smell
Canned coffee. Which is to say, weird. 3/10
Potency
Pretty much the same as a cup of coffee. Only it tastes infinitely worse. 3/10
VERDICT:
28%

I’m glad that the family of coffee-based energy drinks has appeared in Australia, but I do wish the first showing was a bit stronger. The drink tastes alright, but is far, far too sweet, and way too weak with the coffee flavour. Roll on the next version!

Recipe: Soft Pretzels

Fresh, soft pretzels!

I adore making bread. Bread is one of those truly magical things, turning from flour, water and some jumped up fungi into a freshly baked, delicious wonder. I recently purchased two excellent books, Peter Reinhart’s the Bread Maker’s Apprentice and his slightly more accessible Artisan Breads Every Day. It’s very hard to take anything that uses the word “artisan” without irony completely seriously, but I can thoroughly recommend both books for any aspiring bakers. This recipe is from the latter book.

So, to the recipe. These are fairly simple to make, and the recipe has been modified to not require any particularly scary ingredients (such as food grade lye), so it’s not quite like one you might get commercially. Mind you, I made this recipe for my girlfriend, who is a total pretzel fiend, and she and I were both very happy with the results.

Read more…

News roundup, evil schemes for this week

Lots to cover in this post! We’ll start with something a little more upbeat than normal; Deus Ex – the trailer has been out for just over a week now, and it’s pretty much the same as what got leaked from E3, only edited together to be more extreme (it also shows, for the first time, the crotch augmentation used to drag bodies). Unlike another studio that shall not be named, the development team continue to say all the right things – such as there being no multiplayer (single player games are the best, let’s be honest), some details on the hacking mechanic (a minigame which actually sounds interesting), and we’ve also been treated to some hot looking concept art of weapon designs.

Could this be... the PEP-Gun?

There’s the usual nerdy spergery complaining about how the weapons look more advanced than they did in the original game (despite being a prequel), but that’s pretty much because we couldn’t push that many polygons or lights through an engine back then – and let us not forget that the original Deus Ex is a decade old. A few people have also been complaining about there being no non-lethal path through the game, which, I suppose is valid. A few other (probably criminally slow) people have been complaining that knocking someone out in Deus Ex III isn’t actually functionally equivalent to killing them (apparently people can wake up) – I like the idea of NSF terrorists in the original game encountering an unconscious comrade in a military operation, and just deciding to let him have a bit of a rest (“poor guy has been guarding these crates for the past 12 hours, not surprised he jammed three tranquilizer darts into his back”).

Surprisingly not a picture from Fox News

What’s next? Oh yes, Australia just had a federal election, and apparently we still haven’t elected a government. Those of you outside Australia can get a pretty good idea of what the candidates were like by watching this disturbingly accurate Taiwanese animated news piece (check out the others – they release a clip every day or so).

Fundamentally, we’ve ended up with a hung parliament because our two main parties both have had totally abysmal campaigns – one of them lacked any sort of conviction or morals, and the other one simply lacked morals. Anyway, the net result is that the balance of power will be determined by three independent MPs, one of whose election advert basically consisted of him lassoing cattle and threatening to beat up crocodiles. Still, it doesn’t look like it will be resolved any time soon – especially with the resident idiot of the senate, Steve Fielding, threatening to block supply for a democratically elected government if he doesn’t agree with them.

Yes, you knew it was coming. The trailer has finally been released – I’m a bit concerned that Hawke’s spectrum of non-combat activities only takes place in flashbacks, but it’s hard to tell what the game is going to be like from this kind of pre-rendered teaser.

She may look lusty, but you'd better keep your hands off or David Gaider will murder you.

So, notwithstanding the surprisingly cool concept art above, the train wreck continues. They’ve managed to alienate the true RPG fans by removing isometric camera support (and describing Mass Effect II as a “hardcore RPG“), they’ve even managed to alienate the console players by not allowing you to sleep with your sister. It’s all quite worrying, especially when their marketing consists of bashing the original game, talking about removing “confusing toolbars” from the UI, and comments like this from a hands-on preview:

Turns out it plays more like Fable, with that anime-style animation where your weapons is raised high above your shoulder in one frame, and then in the next it’s at the end of the blow, with a glowing light indicating where it passed through.

Quintin Smith, Rock Paper Shotgun

Sounds like great art direction. Oh yes, talking of art direction, we finally have an explanation for the featureless pink desert that they love to shove down our throats. While you and I may have thought it looked “pre-alpha” or perhaps just “rubbish”, it’s actually a clever artistic direction, as executive producer Mark Darrah explains:

And the truth of the matter is what videogames are about, especially story-based games, is they’re about characters. They’re not really about environments. So what we’re trying to do is focus the visuals down on the characters. Make sure that they stand first and foremost, that they convey the story, and that they convey emotion. And the environments can be a little bit more austere, a little more empty. They can use negative space as a bit more of their language to encapsulate the story.

– Mark Darrah, Executive Producer, 1UP Preview

Of course, we should have known – it’s actually negative space , not being, you know, empty. Just like they’ve been using negative polygons to reduce the incidence of curved surfaces on the enemies. I guess it all just fits into their whole samurai dark fantasy look.

Anyway, I have decided that it is Dragon Age Origins week over here in Eat/Play/Hate, and I will be reviewing each of the DA: O Downloadable Content (AKA: “DLC” or “rip off”) modules over the coming days, hopefully to protect the rest of you from foolishly purchasing them.