Last weekend XBL were showing this video on the Games tab:

 
Now, it’s been clear over the last six months that Bioware are keen to expand the gameplay range of the Mass Effect series by adding new features to Mass Effect 3, and I’ve remained relatively silent while other fans spit their dummy out and ranted on the subject. After seeing this clip though, I was unconsciously paraphrasing Patrick Stewart’s sublime monologue on the Borg in “First Contact”.

I will not sacrifice the RPG elements. We’ve made too many compromises already; too many retreats. They invade our space and we fall back. They assimilate entire game mechanics and we fall back. Not again. The line must be drawn here! This far, no further! And *I* will make them pay for what they’ve done.

Or something like that anyway. My point is, one of the original Mass Effect’s strengths was it’s unique balance of cerebral RPG mechanics and visceral action. Yes, the action part had some problems, which they fixed in Mass Effect 2, but in doing so they also obliterated the skill tree, removed the open-world exploration and took all the fun out of the treasure hunting.

Driving that Mako across Virmire. Come on - it was AWESOME wasn't it?

 
You have to wonder what that was all about. The squeakiest wheels on the internet went on and on about how they hated the Mako because they “kept getting stuck somewhere on a hillside”. I don’t like making sweeping generalizations, but society these days has an over-indulged sense of entitlement. Too often now a customer will see the failing in the product – and not them – when they can’t get it to work right. Would this have been acceptable at the start of the 20th century with the wide spread adoption of the motor-vehicle? No. Would this have been acceptable when the first caucasians tried to surf in Maui? NO. They would have known to keep trying.

I get the feeling that the software world is a victim of its own success, catering to the audience’s every need to the point where people don’t expect to work at any skill to get the most out of their purchase. And that’s why so many AAA videogames are mediocre under the surface.

 
I ask you now to reflect upon the Resident Evil series. Beyond the original release, Resident Evil 4 defined the survival horror genre as what we understand it to be today. Quite periods to build tension – until something suddenly comes at you. Never enough bullets. Unwieldy controls. It may not have been the most logical design on paper, but it worked very well indeed.

 
Now reflect for a moment on Resident 5. I looked good, sounded good, ticked all the boxes Konami felt it needed to (namely racism-negating co-op play), and yet it was a piece of shit. Why? Because it messed too much with the formula, turning out as it did to be an survival horror / action shooter hybrid. Not one thing or the other, and failing to be either scary or fluid. I’ve already heard people who’ve previewed Resident Evil 6 say it’s entirely an action-shooter with zombies now. It’s just ridiculous.

 
Erm… Resident gears of evil?

Somewhere out there, there are marketing people that are overriding game designer’s expertise and experience with data from a focus group study, and it’s killing our beloved franchises. By all means innovate and create new franchises from it, but please – don’t damn the happy memories of classic videogames by trying to appeal to the latest fads. The last thing we need is Pacman to go 3D again.

…I made one!

After looking at Rob’s post about stat graphics I thought I would have a go at it myself. It turns out it’s actually not that hard to make one, even for a simpleton like myself. The code is a bit fiddly but I just read Rob’s examples and copy-pasted the snippets I wanted to use and modified them. The hardest part is designing the graphic rather than putting it all together.

Here is my John Matrix ‘Army of One’ graphic for all you support class players out there.

Here is the code for it. Sadly it’s not as organised as the code for Rob’s graphics. I’m not a coder by nature or by trade.

defaults.text.size=10;
defaults.text.color='F0F0FF';
defaults.text.font='0oBkMSuoj0mC4sTF9O/commando.ttf';

var lmgkills = p.stats.weapons.mgM27.kills + p.stats.weapons.mgRPK.kills +
p.stats.weapons.mgM249.kills + p.stats.weapons.mgPech.kills + p.stats.weapons.mgM240.kills +
p.stats.weapons.mgM60.kills;
var c4kills = p.stats.equipment.waeC4.kills

var mortar = p.stats.equipment.waeMort.kills

var claymore = p.stats.equipment.waeClay.kills

/******Scripts******/

// Background image
image({file:'0oBkMSuoj0mC4sTF9O/johnmatrix_ak.jpg', x:0, y:0});

//Display
text({x:135, y:34, align:'left', text:'ARMY OF ONE', size:32, color:'CC0000'});

// Name

image({file:p.stats.rank.img_medium, x:5, y:40, w:42, h:42});
text({x:45, y:65, align:'left', text:'[WCo] ' + p.name, size:14});

// Left Stats

text({x:10, y:90, align:'left', text:'Support Score:',});
text({x:120, y:90, align:'left', text:p.stats.scores.support,});

text({x:10, y:110, align:'left', text:'LMG Kills:',});
text({x:120, y:110, align:'left', text:lmgkills,});

text({x:10, y:130, align:'left', text:'C4 Kills:',});
text({x:120, y:130, align:'left', text:c4kills,});

text({x:10, y:170, align:'left', text:'Mortar Kills:',});
text({x:120, y:170, align:'left', text:mortar,});

text({x:10, y:150, align:'left', text:'Claymore Kills:',});
text({x:120, y:150, align:'left', text:claymore,});

text({x:10, y:190, align:'left', text:'Resupplies:',});
text({x:120, y:190, align:'left', text:p.stats.global.resupplies,});

//Right Stats

text({x:350, y:90, align:'left', text:'Total Score:',});
text({x:450, y:90, align:'left', text:p.stats.scores.score});

text({x:350, y:110, align:'left', text:'Bodycount:',});
text({x:450, y:110, align:'left', text:p.stats.global.kills});

// Subtitle
text({x:3, y:247, size:10, font:'fonts/VeraBd.ttf',color:'FFCF00', text:'WORSTCOMPANY.ORG'});

image({file:'00yohVZX50qZGbDuNO/weareworstcompany32x32.png', x:467, y:217});