delphic.me.uk

The RP in G

Like many others I've been playing Skyrim recently and I'm going to use it to talk about RPGs in general and also to talk about some of the shortcomings of Skyrim. Skyrim is a very good game, and it's always easier to spot the bad bits in a good game because they stick out more! The game-world is beautiful, and the level of content is brilliant as it always has been in Elder Scrolls games and they've got a reasonable degree of different enemies (even if it is a little bandit heavy). So necessary praise out of the way lets proceed!

So lets look at the genre, RPG, role playing game, I'm going to try to articulate what I think what should make-up / be contained by a role playing game as opposed to what most 'RPGs' really are and often are only character progression games. I have created at least 5 different characters in Skyrim (only one of them has killed Alduin), every single time I've done so as soon as Ellie notices she's exclaimed "You've started another one?!". It may be that Ellie wants me to concentrate on one character so that I 'finish' the game and stop being quite so absorbed in my computer, but I'm going to go with the other interpretation of "Why would you make another character?".

The implication in these games is often that one is supposed to create a character to represent who the player wants to be and then build that character up and experience the world and/or story with your avatar as a projection of you. Now Elder Scrolls games have always been a bit different in how they serve an open world and optional (but highly encouraged) main quest line, but I think this is the way a lot people do approach these games, include I think at least of some of the designers.

The thing is that approach is really more of an adventure game if we're honest, just one where you get to define the main character as you / who you want to be, looking at Mass Effect particularly here (in some 'RPGs' you don't even get to do that, see Final Fantasy VII, still one of my favourite games ever though). What I'd like from more RPGs is to actually be able to play a role, this is where MMOs quite often beat single player games, they have lot of time (and money) given to the design each class, so each one feels unique in the way it plays and in good ones every player ability re-enforces what it means to be that class. This doesn't mean that you need to have a class system to do this, but the game does need to provide the player the opportunity to construct a set of skills that complements the role they want to play (without having to change the difficulty settings to make your 'build' viable).

Skyrim unfortunately doesn't do this. For example if you want to heal your character - and you pretty much have to be able to - you have to use Restoration magic (or chug potions at a rate that will break immersion completely and/or bankrupt you / make you spend all your time searching for herbs). It wouldn't be too difficult to give some of the combat perks healing / regeneration abilities, or have a first aid ability to use all those linen wraps you find lying around. My character shouldn't have to be a Mage or an Alchemist in addition to whatever I planned it to be. Another example would be that if you want to get gear that suits your character and is reasonably matching, you pretty much have to take up Blacksmithing and Enchanting.

Some of these are balancing issues, but some of it smacks of avoiding what progression games make it easy to avoid, and that's creating challenging gameplay through level design and/or smart AI. Basically 'challenge' becomes that you start doing 10 damage and killing monsters with 50 health, you get to the end you do 150 damage and you're killing monsters with 750 health (it's a bit more complex, but you get the point) the combat doesn't really change and neither does the experience of combat. Progression of combat in games should be about mastery of tactics and techniques to take on bigger and/or more foes, not a just bigger axe (although bigger axes are cool too).

If I want to play a warrior type I should be able to play effectively by bashing people skulls in, if I want to play a sneaky rogue, I should be able to take out enemies quickly and efficiently (and not every 5 minutes hit a character with 10 times the health of everyone else I've ever met), if I wanted to play a mage I should be to not have to wear armour and carry a sword for when I run out of mana/magicka if I take on more than one enemy at a time. Hey Bethesda you know what is NEVER fun? Running out of mana, why would you balance all the magic schools on this? And whilst we're at it, why should I have to spend 4 perks per magic school just to make using it even slightly viable?

Okay so rant over, my point is that there is so much promise in the Elder Scrolls games, they start well with allowing you to craft the look of your character to the finest detail, but then they make it impossible to play through on a challenging difficulty level in all but a few combinations of skill trees, which rarely thematically match. Identity of characters (and the player) in games is defined ultimately by their actions, it doesn't matter what identity you tried to give your character at the start, they will end up playing as with amalgamation of the viable talents (or you'll end up lowering the difficulty and breaking your immersion) and that is what your character will end up being.

I long for a real R P G.

Christmas, Pokki and Sound!

This was me and my girlfriend's first Christmas spent at home, as opposed to one of our parent's homes, which used to be home! We had my parents and sister down and had a proper Christmas tree which was all a nice new experience. Playing host meant that there wasn't a lot of time for project work, but now we're up in the Midlands as guests ourselves and we can relax and I have some time to code!

I'd noticed previously a company called Pokki, who allow you to create and run HTML5 applications through their program called "Pokki". They are running a game development contest, as I've been working on WebGL games for past few months in my spare time, I figure it would make a lot of sense for me to enter! I wanted to work on a new game called Colour Charge, where different sides battle over a network of points. However the contest has a deadline, and this new game would require me to learn Web Sockets or write sufficiently advanced AI to not require multiplayer, both of which would take some time, in addition to building the entire game from strach. So it makes far more to continue to my work on ZeroG to try to get it to a 'finished' state and submit that, and then work on the new game.

One of the major aspects missing from ZeroG that would make it more of a 'real' game (apart from polish, polish, polish) is sound. So today I've been playing around with the Audio API in chrome, using a html5rocks tutorial as a quickstart. The basics are fairly straight forward, however I might still write an article as there are some points worth addressing which are not in that tutorial, such as working out if a sound is playing, keeping track of source nodes etc. In order to have any sounds to test with I used the awesome freesound.org, which together with an ogg encoder should provide plenty of sounds to work with!

I have a feeling that the AudioListener interface has not yet been implemented or I think I'd have heard or seen some tutorials on 3D sound using the AudioAPI, but I'm going to give it a try see if I can get anything working, otherwise I'll just have to adjust the volume by distances and call it a day. Hopefully I'll get a new version of ZeroG up with some sounds in the next few days.

So many possibilities, so little time!

Over the past few years the prospect and reality of life after university brought me to the decision to stop keeping a blog. It was a combination of concern being judged upon it, the feeling that so many of my posts were naive and rambling and that this inane sharing was only something done by teenagers or students (of course I wasn't concerned enough to take down any of my archives).

I'd like to think I've got past those insecurities now and I want to share what I'm working on in my spare time with the internet like I always used to. I started this with this new site design - using my more recent alias of delph/delphic, rather than the one I came up with almost a decade ago designed mostly to humiliate whoever it was I was beating at CounterStrike at the time - and the projects page.

However the scope of my projects and the amount of my free time that I'm free to code in mean that it's months before I can put up new content and when I'm working on something on an ongoing basis like I am with my WebGL ZeroG remake the only changes are to the hosted game and bitbucket!

So a blog, where I'm going to write about ideas for projects, projects that I've only just prototyped, as well as maybe philosophical musing or frivolous pictures of cats. I'm still going to post articles about problems I thought were interesting that other people might want to solve.

So finally onto the subject hinted at in the title. I've got a lot of different potential projects and I know that I have to focus on one (or at the least one at a time) to get something done. I'm particularly torn between sticking with my WebGL projects or starting a project in Unity and putting the C# I've been learning at work to good use.

A Unity project will let me actually have a go at making games, concerning myself with design, balance, aesthetics and it will probably allow me to create something I could monetise relatively easily in the future and on a related note would probably be more employable when I try to jump from a web focused job to a game focused one.

However, it's an incredibly exciting time to be involved in web development at the moment, the first thing approaching programming I ever did was a web page aged 11 (yes I know mark up languages aren't programming languages) and the idea of being able to make a game or app that anyone can view just my visiting a webpage is very attractive. More and more is possible in the browser and through (relatively) easy to use JavaScript APIs, the rise and rise of JavaScript summed it up nicely for me. Still there's a long way to go before WebGL and browsers are ready for 'prime-time' games, 3D Audio, mouse-lock, reliable input detection, UDP web sockets all need to addressed, but some are already in the development builds / spec stage so I'm hopeful.

For now I think the temptation of all the other possible uses of learning the HTML5 technologies and learning experience offered by building my own engine and tools is too great to resist. Also I would like to finish (the somewhat ambitious) targets I set for my JavaScript engine (Gremlin) and my 'my first javascript game' ZeroG. I'm sure I'll be trying out Unity at some point this year, but perseverance with existing projects is something I still need to work on. Oh and I've not even mentioned my website builder/compiler, that I'm trying to teach myself to draw, want to pick up my Saxophone again and do more weight training like I did in university before this office job turns my entire body to mush.