Thursday, 9 June 2011

The Call of Duty Effect

I'm generally wary of the fanboy-ish objection of 'consolification'. It's a knee-jerk reaction to change that often doesn't take into account the sound underlying reasons for simplifying, refining or changing a particular mechanic when a game makes it's way onto a console. And I have sympathy for studios trying to churn out 3 SKUs to the same deadline, leading to perhaps a little more UI conformity between PC and console than is strictly sensible.

That said, I've definitely noticed a trend in big budget games over recent years, that I'll call the 'Call of Duty Effect'. It's not, strictly speaking, consolification; rather, it's the trend for ever more flagship franchises to ape the Call of Duty series in terms of blockbuster set pieces, to the detriment of core game play.

I recently finished the single player of Black Ops - prior to this I'd not played a CoD game since CoD 2 way back at the 360 release in 2005/6. The thing that really struck me about Black Ops was the sheer number and pervasiveness of scripted sequences. Almost nothing in this game is emergent; the game is characterised by the constant intervention of hands-off, scripted events, as well as tightly directed, highly linear game play sequences. Impressive, yes, and undoubtedly fun. And there's certainly a place for it in the industry. But the effect of the success of the CoD franchise is that other developers are looking to replicate it's success. And they seem to be doing this by trying to give their games a big budget, blockbuster feel through enormous 'set piece' events in the game.

Now, why is this a problem?

The reason it's a problem (for me) is that designers often struggle to turn the script / story into meaningful and consistent mechanics. So they inevitably resort to cutscenes, or specialised 'one-off' game mechanics (Star Destroyer battle in Force Unleashed, for instance) in order to achieve these set pieces. To give an example of game that suffers from this effect - Splinter Cell: Conviction. The game has numerous set pieces that break the stated selling point of the series - namely, stealth. There are fights with boss helicopters, foot chases, forced combat sequences. All in the name of big set piece showdowns. All good fun. For me, however, it breaks the implicit contract with the player who buys a Splinter Cell game on the basis of certain mechanics, and on the expectation that the game will achieve immersion by sticking to this core set of mechanics. Chaos Theory was the ultimate realisation of this style of play. Of course, designers have the right to take a franchise onto new ground, and to attempt to keep things fresh by adding new elements. But equally, consumers have their expectations of a franchise, and if they are not being met then the franchise can fail.

Halo is an example of a game that achieves a blockbuster feel without sacrificing emergent gameplay. It does by retaining player control through the majority of the game, having fewer cutscenes, and fewer novelty game play sections. The God of War series is another game that does things right. By introducing quick-time battles early and often, and by establishing them as a core mechanic, their repeated use for the incredible boss battles does not jar - there is no broken contract between designer and player. Expectations are met. Half Life 2 and Bioshock are another two fantastic examples of games that achieve blockbuster feel without sacrificing core mechanics.

Thursday, 13 January 2011

What makes an RPG?

My last post got me thinking. Just what do I consider to be the inherent features of an RPG?


I'll start by stating my opening position - I'm not an RPG canon fanatic. There are those for whom any deviation from their favourte RPG is heretical. Mine is a broad RPG church. though I'd draw internal distinctions between the the western and Japanese RPG lineages and action RPGs versus narrative driven or dialogue-heavy. What sorts of features are normally present in games considered to be RPGs, and which of these are truly integral to the genre? For the first part of that question, consider some features commonly found in RPGs:


  • Character creation and / or development.
  • Dialogue choices.
  • Moral choices.
  • Inventory management.
  • Levelling up or some kind of quantitative character improvement.
  • Non-linearity.
  • Fantastical or science-fiction setting (are there any real-world based RPGs? I can't think of any).
  • Party management.



What's striking about this list is that it's easy to think of games that have most of these missing, yet are still unmistakenly RPGs. Equally, there are games where these mechanics feature, sometimes quite prominantly, yet they are not considered RPGs. As a genre, it has become quite difficult to define. Of the features in this list, it is incredibly difficult to identify those that produce a canonical, undeniable RPG.
Take a game like Darksiders. It has levelling up. It is non-linear. Yet it's not an RPG. Why not? For me, it's because there's no narrative choices for the player to make. There are tactical choices. Which upgrade, which weapon etc. But no choice that affects the story arc. And yet, if memory serves, many JRPGs do not feature such choices either. The Final Fantasy games do not allow players to dictate the direction of the narrative, only the pace at which it proceeds. Yet they are considered RPGs; they certainly contain many signature features - character levelling, party management, non-linearity.


Perhaps what makes an RPG is a critical mass of features from the grab bag of RPG mechanics - a compound key, rather than a primary one.

Wednesday, 12 January 2011

Fable 3: A Slight Tinge of Disappointment

Just finished Fable 3, and thought I'd jot down a few thoughts.

After Fable 2, Molyneux was well quoted as saying he felt he needed to improve the accessibility of the series; various statistics were bandied around about the proportion of players that were missing huge chunks of game content. It's pretty clear that Lionhead were determined to deal with this in Fable 3, and set out to strip away some of the more spurious functionality.

I think this stems from the Fable franchise's position as an 'almost great' in terms of sales. Each of the Fable games thus far has hit around 3m in sales, which puts it just outside the top echelon of franchises like Halo, CoD et al. The overriding feeling I got from playing Fable 3 is that Molyneux is experimenting, he is tinkering with the Fable formula in an attempt to break the franchise out amongst the wider Xbox community.
He's correct in many ways. RPGs are inaccessible to people who don't often play them. They're full of unfamiliar tropes and traditions, conventions that don't make sense to the uninitiated. I, as a non-racing gamer, can easily pick up the latest Forza and pretty much right away figure out what I'm meant to do, even if the mechanics themselves contain much subtlety - the RPG novice doesn't usually have this option. Lionhead are, much like Bioware are doing with Mass Effect, progressively stripping away many of the genre traditions in an attempt to streamline the experience and pare it back to its core.

I think these efforts are largely doomed to failure. I think what's holding the Fable franchise back from sales of 5m+ is not the subtlelties of its various mechanics, but simply that RPGs, even slimmed down, action-focused RPGs, do not sell in the numbers that shooters do. Here's approximate sales figures for the major console RPG releases on the 360, taken from VGChartz.

RPGs
Fable 2 - 3.97m
Fable 3 - 2.71m
Oblivion - 3.46m
Fallout 3 - 3.48m
Fallout: New Vegas - 2.26m
Mass Effect - 2.36m
Mass Effect 2 - 2.39m
Dragon Age - 1.94m

Contrast these figures with the big shooters:

Halo 3 - 11.34m
Halo Rach - 7.56m
Halo ODST - 5.80m
Gears of War - 6.12m
Gears of War 2 -  6.07m
CoD: Modern Warfare - 8.56
CoD: MW2 - 12.11
CoD: Black Ops - 10.19

Now, Molyneux will know this, so if he feels that it is at all achievable for an RPG to sell 5m+ units, then it follows there's a structural problem or impediment that could be fixed that would then allow the hallowed 5m to be reached. I don't think this is true. What's striking to me is that even those RPGs where the action is tailored as closely as possible to be shooter-like (whilst staying within the bounds of the genre), for example Mass Effect 2 or Fallout, that the sales figures never breach that seemingly inherant RPG cap. It's not that RPGs are not popular, they clearly are, as all the genre flag carriers sell multi-million units on a single platform (which isn't easy). It's that shooters are WILDLY popular. The problem with attempting to ape shooter-like sales by paring down certain features of your RPG is that it's simply tinkering around the edges. The very features that make an RPG an RPG are too inherant, too ingrained in the marrow of the genre to strip out. Taking out inventory management in Mass Effect 2 was quite widely seen as a good move - it streamlined a non-core aspect of the game, but it didn't improve sales much.

What this says to me is that, whilst increasing accessibility should always have a positive impact on sales, that there are inherant aspects of a genre that simply don't appeal to people who dislike the genre in general. Thinking of it from a more personal standpoint, there isn't a mechanic that racing games could add or remove that would make me like them - it just won't happen. I don't even follow racing game news or reviews, I am entirely resistant to any efforts to engage me in that genre. So it must be with people who dislike RPGs.

I am very interested to see if Fable 3 catches up and overtakes 2 as the king of RPG sales on the 360. It's averaging lower on metacritic (80 verus 88 I think), and I don't think it will catch up in sales either - I think Molyneux and Lionhead have lost something in their attempts to win wider appeal. A few of my criticisms:
  • The close connection between the morale choices the player makes and the visual look of the character has been lessened, and this was always one of the pillars of Fable for me. 
  • For a game that so clearly prizes accessiblity, each of the methods of upgrading the various legendary weapons are incredibly MMO-like and grindy. I never bothered.
  • Some of the morphing features are too subtle, and lost on the player. I only found out later that the hero's weapons are granted random morphs that reflect the things he's fought - a bone handle if you've killed a lot of Hollow Men, for example. Totally lost on me, never pointed out clearlyin-game.
  • The story was less amenable to uncontrived morale choices, in my opinion. Fable 2 allowed for the player to plausibly head in good or evil directions without contorting yourself as to why. In Fable 3, there's little narrative justification as to why your character would ever be evil.
  • Forced importance of multiplayer. I can't be the only player that resents the locking off of certain content to cooperative play only. RPGs as a genre is full of single-player adherents!
  • As others have mentioned, the dog is an assumed companion in Fable 3 - it was a long time since I'd played 2, and as such I had no real affinity towards it. It's also an incredibly annoying method of finding treasure, and while I'm at it, the dig animation is too long, and too irritating to trigger.
  • Some minor annoyances include the hassle of managing a large property empire, and the removal of player choice in the expression and dialogue systems.
I would dearly love to see an RPG hit the heady heights of CoD-level sales, but sadly I just don't see it happening even with the removal of many non-core genre features.

Wednesday, 29 September 2010

Stored Procedures Are Bullshit

Obviously not totally bullshit. They have their uses. But I am working on an application that has so overused them, that I feel like stabbing out my eyes with a rusty spoon every time I look at another of the 1000 line obfuscated monstrosities.

Who the fuck thinks writing a multi-thousand line stored proc is a good idea? At no point does common sense intrude and say ‘Hold on. I might have taken a wrong turn here’? I suppose not, since this app has literally hundreds of enormous procs, containing the vast bulk of the applications critical logic.

Even though the insanity of this approach should be self-evident if you’re anything other than a total charlatan, for the sake of my own sanity, I’ll iterate here why this is so much bullshit:

  •   Multi-thousand line functions of any form are folly. Multi-thousand line functions in an IDE as feature-free as your typical DB client are on a higher plane of batshit insanity. For fuck sake.     
  •  Why, oh why, would you choose to write business critical logic in the exact place where your unit tests can’t get at it? Oh wait, it’s because you don’t have any.
  • By writing all your critical code as SPs, it’s not only now next-to-impossible to test properly, it’s also tethered to the scaling capabilities of your DB. Nice work.
  •   Most of the stated benefits of SPs no longer apply. It’s 2010. 
  •  If the amount of SP code is large or especially complex, you’d better like your DB vendor because you’re not fucking changing.
  •  Your application developers have to context switch every time they want to implement a full slice of functionality. From modern IDE / language / tools to the SQL stone age of whatever shithole DB client you’re using (they’re all shit, no exceptions), this is the path to productivity destruction.
  •   Debugging stored procedures is a fucking black art, known only to DBAs and weirdoes. Fact.
Very few coding topics actually arouse strong feelings in me – something I have learned over years of working with many different people at different companies is that, as software engineers go, I’m reasonably easygoing. I can accommodate a vast array of programming styles and technologies without much of the usual subjective, vitriolic, bullshit that often reigns in an industry full of Aspergers sufferers.

But on this I’m clear. Fuck stored procedures.

Tuesday, 14 September 2010

Roguelike - Mining!


Players can now enter mining mode and designate blocks to be mined. Miners will path to the nearest block to be mined, and start digging.


Roguelike - Pathfinding


Pathfinding entities up and running. Not that they've got to try hard in this particular test dungeon.

Thursday, 9 September 2010

Roguelike Development

I've decided to blog a little about the ongoing development of a Roguelike. I'll be developing in C#, using libtcod.net for console support and some helpful library functionality like FOV calculation pathfinding, and BSP generation, amongst other things.

I'm primarily inspired by Dwarf Fortress, a game I'd love to be able to get into but just can't seem to crack. It's a testatment to its complexity that it actually seems simpler to develop my own Roguelike than to brave its (frankly horrendous) UI.

We'll see how far I get with this. Here's the first screenshot below! From small beginnings...

Set up the main console window, dividing it into sections. Tab toggles various enlarged views of the main window. Got a viewport system up and working so the main map can be scrolled.