Featured Post

Work in Progress

I tweeted this pic for #ScreenshotSaturday so I figured I may as well post it here as well. What are the implications of this? Well, I alluded to what this is for in the discussion I had on Bulletproof Radio last Tuesday (hint: the question the Geordie chap phones in to ask). And on the subject of “that...

Read More

A smaller rant about F2P

Posted by CaptainBinky | Posted in Games | Posted on 07-01-2014

0

What is the perfect way to design a game?

Ideally, you either live in Utopia where money no longer exists, you win more money than you ever need in the Lottery, or an eccentric billionaire funds you setting no limitations on what you do. Then… go.

You’d be designing your game completely free from any financial concerns. The objective would simply be to make something fun, exciting, personal, whatever. All design decisions you ever make during development would be utterly untainted by subconscious financial motivations.

That, obviously, is not a particularly likely scenario. Games, generally, need to make money – someone has to pay for development and it’s fairly reasonable to say that someone should be those who play them.

But that means that unless you’re a robot, you’re going to be affected – albeit often subconsciously – by that knowledge, regardless of whether you’re EA or one person in an attic. Given that the best way to design a game would be utterly free from financial concerns then my argument is merely that the more we limit referencing or thinking about money during a game’s design, the better the design will be on average.

So. Make a game, think only about the game, finish, then spend however much time you want contemplating price-point. This is a better way to design a game, as far as I’m concerned, than designing one where the design itself necessitates financial decisions such that there isn’t even a single page in the design document which doesn’t have the word “money” or “cash” or “gems” or “stars” or “marketplace” in it. Unless you’re a robot, that’s going to affect your design decisions whether you like it or not.

THAT is why I’m not a fan of free to play games.

It doesn’t mean they can’t be good. Can’t be great. Can’t be mind-blowingly terrific. But I don’t want to make one or play one.

Top Tips: How much should you sell an Alpha-Funded game for?

Posted by CaptainBinky | Posted in Useless Advice | Posted on 23-10-2013

0

Question 1:

How much is your game worth RIGHT THIS SECOND?

 

Take that number and subtract a bit. Easy.

 

Alpha-Funded Development

Posted by CaptainBinky | Posted in Stuff | Posted on 09-10-2013

3

The term “alpha” is pointless. It serves no purpose. What does it mean? The whole point of any term is to add clarity to something and “alpha” absolutely does not do that. Well it did, but now it doesn’t.

Here is a diagram of a traditional game development process:

GameDev01

Nice and straight-forward. The “Alpha” is the bit before the “Beta”, so we can intuitively expect the game to be a bit more crashy and incomplete but still very much towards the end of development – so you’d be getting a really decent feel for the game at this point regardless of whether or not some of the textures and models aren’t quite finished.

Let’s contrast that to something that’s Alpha-Funded:

GameDev02

Hmm… Yes. See, there’s the problem. If all of that red stuff is called “Alpha”, then there’s absolutely no way to know intuitively whether that means the game is barely functional, practically complete, or at any point in-between. In other words, if you’re having to explain why your alpha is so considerably less developed than somebody else’s alpha, that’s a good sign that the word “Alpha” is woefully insufficient for your purposes.

You may as well just swap the word “Alpha” for “Fundamentally broken in many key areas”, although while it gets points for clarity I agree that it’s not quite so marketable.

For me, Alpha-Funded games should use the term “pre-Alpha” for significantly longer and keep the term “Alpha” for that bit towards the end which then correlates to the equivalent builds in traditionally developed games. Keep these terms consistent in order to retain any meaning to them what-so-ever.

Because if we break down a game’s development into its component pieces, what we end up with is something like this:

GameDev03

In other words, certain features of your game (for example combat, NPC behaviours, whatever) may be at an alpha-level before other features, but on the whole the game itself could not be said to be in Alpha, until all of the key features (with a bit of wiggle room) have been fairly well developed.

That makes much more sense, if you ask me.

Game prices, whinging about prices, whinging in general

Posted by CaptainBinky | Posted in Stuff, Useless Advice | Posted on 08-07-2013

0

Up there on the list of, “statements which annoy me” nestling amongst, “game development – it’s just a job” (bullshit) and, “free to play is good for games design” (LOL) is this old chestnut:

My game’s, like, $10 – that’s less than the price of a couple of beers! What on Earth are you whinging about?

The reason it annoys me is the very blinkered approach to game purchasing it takes. It’s true that if you took any one game in complete isolation and did some sort of “hours played / total cost” calculation, you’d almost always come up with a stupendously good value number. Certainly if you compared it to going to the cinema. And doubly so if what you were going to see was Prometheus.

But other games exist aside from your own, and people buy many, many games. Since nobody’s disposable income is infinite, there are always going to be many many more games that you don’t buy than games which you do. You have to pick and choose – and try to ensure that you choose wisely. So if one of those games turns out to be a turkey, the thing that makes buying it disappointing is that it has effectively booted out a better game from that set of games you buy in a year. Unless you spend more on games that year. Which would, in itself, be annoying.

So that’s fair enough to whinge about, isn’t it? It’s not about the $10, or $5, or however much the stupid game is. It’s about the other game which is also $10, or $5, or however much that they didn’t buy which might have been better – or the two games, each for half that price, which each might have been better.

There’s not a day which goes by which at some point I don’t honestly consider that maaaaybe we’re rather under-selling our own game. It is, after all, a sandbox game with potentially hundreds of hours of gameplay in it. And the price will almost certainly go up at some point since it’s been the same price for about two years now and it’s got quite a lot more in it now than it did. And I think that’s fair – particularly to those who bought in early, that they should end up with the game for a cheaper price. But at the same time it’s important to be in that impulse buy zone – that’s the zone in which you get the least amount of price whinging (aside from free stuff, obv) since those kinds of games tend to fall into the ‘games you pick up in addition to your list of games to buy’ category, in the same way that games which appear on the Steam sales, for peanuts, do.

Since managing to price your game at the perfect point for content and experience is practically impossible, it’s always better to err on the side of under-selling and over-delivering since doing the opposite is pretty disastrous.

Alternatively, you could price your game higher (flirting dangerously with the other side of that perfect zenith) and pick up that massive spike of impulse buys during a sale – having your cake and eating it too. In which case, kindly shut up when people whinge about the price of your game – whatever it costs ;)

Pulchritudinous Paint Animation

Posted by CaptainBinky | Posted in Pulchritudinous Paint Animation | Posted on 06-07-2013

1

Yes, I have side projects.

 

Since we switched to the new Project Zomboid sprite system and rendered my beautiful Costume Editor entirely useless (boo!), I decided it would be a shame to let all that code go to waste. So I decided to rework it into a more general purpose pixel animation tool.

As anyone who reads my blog will know, I’m a bit of a fanboy of Deluxe Paint Animation and so what I basically want is that, plus layer support, in a swanky Windows environment. Excitingly, as it turns out, Deluxe Paint Animation files (*.ANM) are bafflingly incomprehensible. However, after some trial and error and lots and lots of corrupted rubbish appearing on the screen I eventually got them loading… more or less. Every now and then one will break horribly which I think has got something to do with ‘Spare Pages’ in the file but since Deluxe Paint conveniently has a ‘Delete Spare Page’ menu option, I’ve decided not to worry too much about that and pretend it’s all fiiiiiine.

Anyway so without further ado, here’s where I’m at so far…

PPaint_thumbClick for Enlargulation

Supported Features (so far)

  • Load Deluxe Paint Animation (*.ANM) files
  • Transparency
  • Full proper 8-bit style palette (as in, change the palette colour, screen pixels of that palette colour update)
  • Flexible palette (drag palette entries around to reorganise it without cocking up your animation)
  • Photoshop-style layers
  • Windows style Undo/Redo (multiple undos, basically, instead of DPA’s single undo)
  • Save & Load palettes to Photoshop (and others) compatible (*.PAL) files
  • Grab regions to store as named sprite animations (as in the ‘Dance’ bunny in the pic above)
  • Saving & Loading of Pulchritudinous Paint Animation (*.PPA) files, retaining layers / palette organisation / etc)
  • Add frames / remove frames / remove frame ranges / standard stuff like that
  • Pretty damn slick, even if I say so myself (Look, ma! I optimised the screen draw routines!)

Future Features

  • Grabbing regions to custom brushes (almost supported)
  • Grabbing regions to custom animated brushes (almost almost supported)
  • Various brush sizes (*cough*, yeah, I’ve not done that yet)
  • Saving of named sprite animation regions into PPA files
  • Exporting of named sprite animation regions to single sprite sheets
  • Additional drawing tools – Lines, Circles, Rectangles, all the normal stuff
  • Gradients maybe? Deluxe Paint Animation could do them, can’t say I used them much though
  • And various other things

Once it’s in a fairly usable state, I’ll release the tool for free because, hey, pixel art tool innit.

Professionalism and Indies v2.0

Posted by CaptainBinky | Posted in Games, Stuff | Posted on 08-01-2013

2

Please don’t read the other one. It’s out of date. I was hoping that it would have slipped off the first page by now (I wrote it over a year ago) but, unfortunately, my blog post output is not nearly high enough. I could have deleted it I suppose, but then that seemed a bit disrespectful to the people who commented. So instead I’d like to update it with some things I’ve learned:

  1. Don’t write a blog post while whatever it is that fuelled the post is still incredibly raw
  2. Always start an argument by defining your terms

This second point I learned after listening to the Cynical Brit Mailbox episode where I got utterly berated. What he does in his argument, is start off by defining what he means by the term “professional” and then metaphorically punching me in the face with it. But to the best of my understanding, we almost entirely agree – it’s just we differ in terms of what we mean when we say “professional”.

So. This is what I should have said over a year ago:

For me, acting professionally, has nothing to do with business practises – ways of handling money, methods of work, all the stuff connected with actually developing the game. All those things are a given - you’d have to be utterly insane to suggest that it is not important to back up your data off-site, for example. When I say that it’s okay for indies to act unprofessionally, I am not in any way suggesting that it’s okay for them to take your money, then throw their half-finished game in the bin and run off to Spain.

What I mean is, that it’s okay for an indie to act like a human. To me, acting professionally is to stand there smiling while somebody tells you to your face that they hate you, your work, and they hope you die in a horrible accident. Professionals have to act like this because they have a boss, or shareholders – they are not personally in a position to determine the way that the company interacts with their customers – either the nice ones, or the ones who’d turn up at the door to spit in their face.

You’d have a point that so far as “official” responses go, things should be nice and polite regardless. If you sent an angry email to info@indiedeveloper.com and then got a reply back calling you a twat, you’d have a pretty rock-solid argument. But Twitter is different – it’s an ‘always on’ environment and one in which there is no ‘leaving work at 5pm’. To say that somebody must always act a certain way on their personal Twitter accounts is to suggest that unlike almost all other people on the planet, certain people are never permitted to leave work – or, at the very least, must maintain a private account and be extremely cautious about who they allow access. Which would not only suck, but pretty much defeats the whole point of Twitter.

Consider the way Bioware’s Aaryn Flynn responded on Twitter to the horrific abuse thrown at writer Jennifer Hepler:

Source

Unprofessional behaviour? Sure. Understandable behaviour? Yeah, I’m kind of with Aaryn on this (apart from his use of the term ‘Flynnsanity’ – ghastly) – I have no idea what happened afterwards, whether he was reprimanded or secretly applauded but I rather suspect that it didn’t go down entirely well with those which held the coin purses.

But this sort of thing is all that I personally mean when I talk of professionalism. You’re entitled to think that while maybe understandable, Aaryn Flynn’s response was shocking and appalling and I can’t argue with that at all. You might be right. But to me, he acted in a very human way and my respect for him shot up considerably. I like it when people act like people instead of machines and this is why I like the indie games scene so much – because developers are all vocal about the things they believe without having to worry about what their boss or their publisher might think.

I’m in no way comparing the events of what happened with us with the vile abuse towards Hepler, by the way. I will say that some of the comments which sparked the whole thing off were a lot worse than you’d probably think, though. The trouble with these sorts of things is, much like that image of Flynn’s Twitter timeline above, people only tend to capture the reaction and not comments which triggered the reactions – which makes it awfully difficult to decide with certainty whether the response was justified or not.

We all disagree on stuff, we all draw our own lines in the sand – have our own boundaries. It’s up to you to decide which developers (if any) you like and/or respect and which you don’t. I regret most of what happened with us and the damage done to good will. But I stand by the principle that it should not be a requirement that small indie developers should just stand there and smile while somebody smears faeces over their face.

Yeesh. Believe it or not, I was intending for this blog post to be relatively up-beat. I’ll end with a joke.

A man with a long face walks into a bar. The barman asks, “why the horse?”. Shit. That’s not right. A spirit drifts into a bar and the barman says, “we don’t serve ghosts here”. Ah forget it.

Are Games Art?

Posted by CaptainBinky | Posted in Utterly Pointless Questions | Posted on 07-01-2013

0

Short Answer: Who cares?

Longer Answer: Actually, the short answer pretty much covers it.

This question has been discussed an obscene number of times and will probably continue to be forever. A noteable person in some vaguely related field will exclaim that games can never be art for some half-baked reasons which only really make any sense if your only exposure to games is some vague sense that you can lop people’s heads off and steal cars in them. Then the internet will burst with fiery indignation before everyone forgets about it for another couple of months again.

For a fabulous example of the ridiculousness of the debate have a read of Sophie Houlden’s humourously written rebuttal.

Art is defined as, “the expression or application of human creative skill and imagination, typically in a visual form such as painting or sculpture” and “works produced by such skill and imagination”. Well, that pretty much leaves it open for anything to be art, and ‘art’ as a term therefore is even more useless than ‘indie’ (good grief, I’m going crazy with these hyperlinks). ‘Skill’ and ‘imagination’ are pretty whoppingly hazy things to rest the entire debate on, though, since… well… this:

_55420126_bricksArt, apparently

Skill? It’s certainly uniform – all the bricks appear to be correctly placed. Imagination? Er… well… it’s imaginatively lame, I guess. Place this particular piece of art out in the street and it instantly becomes a pavement and therefore without any artistic merit what-so-ever. The fun in stuff like this is reading the bizarre way it’s justified as somehow being much more thought-provoking than it actually is. Behold:

“The sensation of these pieces was that they come above your ankles, as if you were wading in bricks”, Andre has commented. “It was like stepping from water of one depth to water of another depth.” (from the display caption)

Yeah, whatever you say. They’re bricks. This, is why games are not considered art. It’s because developers don’t come up with a bunch of bollocks to explain their games (apart from maybe Catherine – yeesh). And more to the point, nobody has the authority to decide one way or the other anyway. You think those bricks are art? Good for you. You think your five year old’s finger painting is art? Knock yourself out. It’s subjective, isn’t that the whole bloody point?

Oh dear. I’ve potentially just opened a can of worms there with objective vs subjective art. Well tough. You’d be hard-pressed to find anything which can really be said to be objectively true let alone whether something is art. Is that statement objectively true? Ask a philosopher. The point is, you can say that a drawing of a mouse is bad art if it’s got too many legs and wonky ears if you like, but it’s not necessarily objectively so. The artist may have produced the mouse to make us question the nature of mousiness. You can only claim something is bad if it falls short of the intent. Lowry’s matchstick men are incorrectly proportioned – if we were to assume that he was actually attempting photorealism then his paintings would be laughable.

Step away from the visual side of things and everything gets even more fun. Is gameplay art? A boardgame? Chess? Say we unanimously decided right now that all of these things are indeed art, what happens? What difference does it make?

Short Answer: None. This is a pointless discussion – I’ve just wasted my time and yours.

The Problem I Have With Touch Controls

Posted by CaptainBinky | Posted in Stuff | Posted on 03-01-2013

0

Few things irritate me more than failing to follow standard interface conventions. There are tremendously good reasons for these standards existing – I should be able to grab the mouse and immediately get to work without weird things happening, forcing me to trawl through the help pages.

Consider something like 3D Studio Max. It’s a 3D program – functionally it could not be further away from a Word Processing application and yet consider how the mouse actions work:

Left Click: Select an object for interaction as you would place the insertion point for interaction

Left Click & Drag: Select objects as you would select words

Right Click: Context-sensitive menu as in everything

Mouse Wheel Scroll: Zoom in and out, as you would scroll the document up and down

Middle Mouse Click & Drag: Pan the viewport as you would scroll the window

In the same way, there are certain conventions used with gamepads – ‘A’ should ‘accept’ and ‘B’ should be ‘back’ and while obviously all controls should be customisable (you may have physical reasons why using your index finger for accelerate is not ideal), that out of the box similar driving games should use similar controls is sensible.

There is, of course, room to move – not every game has the same requirements. But you’d be mad to decide that, really, the camera should be operated using the left thumb stick with movement handled on the right for… well, no real reason really – just the designer happens to prefer it that way round.

Gamepads are designed with these conventions in mind. Some buttons are nice springy analogue triggers because these are the buttons located in the sensible place for actions which require sensitive analogue control. Attempting to use a button designed for digital use (like the face A, B, X, Y type buttons) for sensitive acceleration is almost always completely awful.

So, it’s taken many console generations. But we have finally arrived at something approaching a sensible generic controller design which it is possible to assign sensible control standards to.

HOORAY! LET’S THROW IT ALL AWAY! WOOOOO!

It seems that the controller is perceived as a barrier to the sort of mass-market person essential to get if you want to take gaming to the masses. No, we must instead develop a more intuitive control system like pointing a wand or waving our arms around like lunatics. But none of these control systems are particularly intuitive either – you still need to learn how to interact with them but the point is, having learned for one game then intuition can take over for every other game.

But now that control schemes with controllers are reasonably standardised, the same applies to conventionally controlled games too. Hand my mum one FPS game, and after being thrilled blowing the heads off civilians she can move onto blowing the heads of slightly different civilians in another game without many barriers. At least in theory. Assuming sensible control decisions were made.

So. Touch controls.

If I pick up my phone right now, and attempt to interact with an e-mail application – it’s pretty obvious how it will work. Flick up and down to scroll the messages. Click and swipe to the side to pan between the various windows. There are guidelines for all these sorts of things in tremendous depth because it’s important that applications on a phone behave consistently.

What about a game? How should that be controlled? Should you draw some buttons on the screen and have me press them? Should I click and drag the main character around directly while simultaneously obscuring it with my finger? Should I swipe gestures to get it to do stuff? Bollocksed if I know – there’s no good standard because there’s a bazillion ways to make a game for a touch screen, and only a touch screen to control them with.

You can argue that it is this very freedom which makes developing games for phones so exciting. I’d argue that it’s not tremendously “free” when you’re basically attempting to design the least awful way of interacting on a device that’s clearly not designed to do these sorts of games. It’s kind of like playing Gianna Sisters using a joystick as opposed to playing Mario on a SNES controller. You can certainly argue that Gianna Sisters was brilliant (it was), but you’d be mad to say that playing Mario on a SNES pad wasn’t better.

I once made a pinball game for the Palm III. It worked pretty well since pinball only requires two buttons (plus one for tilt) which need to be on the left and right. That’s great, but you still need to tell the user that they need to press “Calendar” for the left flipper and “Memo” for the right. It’s stupid, but that’s what happens when you take a personal organiser and whack a game on it.

The closer your game matches the purpose the device was designed for, the better. Make a game for a touch device which is menu driven – like some sort of management game – and those highly developed and tuned standards come out to play in force and you end up with something that anyone can pick up and immediately feels right.

There is, however, almost bound to be an unexpected genre that’s the perfect fit for touch controls – nobody designed the keyboard and mouse with the idea of developing something which 30 years or more later would turn out to be brilliant for shooting civilians in the face, after all.

Mesh Enshrinkulation

Posted by CaptainBinky | Posted in Project Zomboid | Posted on 26-11-2012

1

We’ve had a few people contact us for specifics on the process we’re using to translate the 3D source models for Zomboid into 2D sprites. So I thought it’d be a good thing to go into here.

 

The Goal

The result we’re striving for is all the advantages of being 3D (ease of creating animations in all directions, simplicity in terms of adding new costumes, hair, accessories, props, etc) without the look straying too far from our original hand-drawn sprite look.

 

The Process

The models are built and animated in 3D, and were we just to render the frames directly, they’d look something like this:

…which is not particularly great. Even shrunk down to the size it would appear in-game, it would obviously be a 3D model and stick out like a sore-thumb. So what we have, then, is a  two-stage process.

Firstly, we render the model to a render target that’s twice the size that it would need to be in-game. We apply a shader which applies some basic lighting (using hard edge, cartoon-style lighting) and uses Point sampling to preserve the crispness of the source texture.

We then render the contents of our double-sized render target to a game-resolution quad and apply a second shader process. During this stage, we allow anti-aliasing (we’re basically doing super-sampling here, since our source is twice the resolution of the destination) and then in the shader we clean up the image data.

The cleanup involves several layers of quantizing.

First, we ‘snap’ the colour value to the closest available colour in the source palette (the palette is passed in as a parameter to the shader, and is calculated once per model processed).

Next, we quantize the intensity (the length of the colour vector) to one of 5 possible values (0.0, 0.25, 0.5, 0.75, 1.0)

Then we quantize the pixel alpha to one of 3 possible values (0.0, 0.5, 1.0)

Finally, the colour is re-constituted from those parts, and spat out of the shader.

It’s a little difficult to show a fair comparison between the first version of this system and the current system, because a few things have changed with the source (an obvious example being that hair is now a separate overlay rather than being drawn onto the texture), but this should give a reasonable idea:

While there’s definitely a ‘personal preference’ aspect to which you prefer (and the new system is still work-in-progress at this stage), the new sprites are considerably cleaner, and much more closely match the original sprites.

There’s still work to be done in terms of finding that ideal sweet-spot for the lighting which will help add definition needed particularly on the side-on frame.

But one of the tremendous advantages of the new system is the speed that we’re able to convert the 3D data to sprites. Almost all the work of the process is now done on the graphics card, which means you can spit out all the frames for all the animations in all directions for one model in a matter of seconds. Beforehand, the process would be something we would leave running overnight.

Why I’m not a fan of F2P

Posted by CaptainBinky | Posted in Stuff | Posted on 15-11-2012

6

One of the main reasons I was made redundant from my position at the studio I worked at prior to going indie was that I was (ridiculous as this sounds) too interested in the quality of our games. It caused arguments, stress, it made me a problem. I got so angry – I just wanted to make games which were good, that we could be proud of. You’d think this would be in the best interests of everyone, the studio included, since if you make consistently bad or, at best, mediocre games you’re on a downwards spiral towards the company exploding. Which is what happened.

This is the problem with financially driven entertainment. It’s easy to lose sight of the point – that games, primarily, are supposed to be fun - and instead focus on hitting those milestones so that you get your completion bonus. Balls to whether the game is good, have you technically fulfilled all the requirements of this month’s milestone? Yes? Move on.

Of course, all those development costs need paying so while it’s easy as an employee to stamp your feet and scream that the game is utterly awful, unless those milestone deliveries are met, that bonus which the studio relies on will disappear and suddenly people are losing jobs. It’s a vicious circle and a spiralling problem as development costs rise and team sizes bloat.

Everybody knows this. That, generally, games are just a business and there to make the developers and publishers money and, primarily, not there for the well-being of the gamers. But for the most-part it’s easy to separate yourself from this. You run home, clutching your copy of whatever it is you’ve been looking forward to, and you immerse yourself in it. All cynicism regarding why this game exists in the first place or how you have been moulded into thinking you need it, evaporates. From this point on it’s all about the game, and you.

Not so with Free-to-Play which reminds you at every opportunity, with a sledgehammer, that this is all about money.

Scenario A – game costs $10

You buy the game, it’s fun. You do well, but you get to level 10 and you get stuck. God this is hard. You consult guides, you ask friends, you try anything to get an advantage. You succeed, you feel great! Man, I’m good!

Scenario B – game is free.

You grab the game. Hey this free game is fun. You do well, but get to level 10 and you get stuck. Why is this so hard? What’s this, there’s an item here for $10 which will make this considerably easier. I can buy that, but where’s the satisfaction? I’ve bought my way to victory.

In both scenarios, you spend the same amount of money. But the trouble with F2P is that it makes you feel like the entire structure of the game, all design decisions, all difficulty spikes, everything is there to force you to buy that item. Is that really the best way to design an enjoyable experience? Frustrate the player to the point they give you cash (edit: or, as is often the case, bore them into giving you cash. Save yourself this arbitrary hassle! Only $5.99!)?

Or is it better to get that financial exchange out of the way, right at the start? It’s paid for, forget about it. Now the game can focus on entertaining you with no ulterior motives in play. If the game is hard, it’s there to challenge you to make you feel good about beating it, not sell you something.

Which model is ultimately better for developers and publishers is another issue entirely. But a gameplay experience should ALWAYS and EXCLUSIVELY be about the gamer.

 

(Other opinions are available)