Monday, 22 August 2011

Back from GDCE/Gamescom

Well, I survived!

I have a hell of a lot of thoughts running around my head after this last week, and I plan on putting them down in words here over the next few days.

Quick comments in the meantime:

- Many of the speeches really didn't feel worth the effort.
- Lots and lots and LOTS of triumphal nonsense about social games taking over the world. Unsurprising but still annoying.
- A few genuinely awesome talks, however. I'll get lists of actual names later, but the standouts were the guy from Epic talking about company history and storytelling, the guy from Bioware talking about Mass Effect monster design, and the guy from Doublesix talking about marketing Burn Zombie Burn. All of which were an excellent mix of hard data and inspiring verbiage.

Meanwhile, I've officially entered Gestalt into the Indie Games Arcade at LGS/Eurogamer Expo in September. We'll see what happens.

Wednesday, 10 August 2011

GDC Europe and ZX81 Roguelike

Well, this time next week I'll be in Cologne at GDC Europe. I've actually bought a Main Conference Pass as much of the stuff happening in the Independent Games Summit is actually of limited interest to me compared to a lot of the things happening in the mainstream track, and I couldn't quite justify the additional expense of an All Access Pass. About the only thing worthwhile in the Indie Summit would be the networking opportunities, and to be honest that's something for further down the line. I'm much more interested in what some of the foremost voices in the industry have to say, to be honest. I've never been much keen on the ghettoisation of indie developers.

After that, Gamescom. I have a couple of meetings lined up but for the most part I plan on simply enjoying the festival. And I also plan on enjoying Cologne once again - it's a truly beautiful city and I have the massive benefit of a couple of friends there. I'll be travelling with another friend, a fluent German speaker, and we plan on making the most of a week away.

Finally, my colleague Ian is working on a game for the ZX81!

He's been working with a new internal memory expansion for ZX81s, which is enabling us to provide collectors with original ZX81s upgraded to 16k or even 32k of RAM. For this reason, we decided to produce a game which could take full advantage of these memory expansions, to give them more than simply collection value. It's currently untitled, but it's essentially a roguelike adventure game (although Ian is insisting it isn't for some reason, against all evidence to the contrary :D ). We'll be getting a video made later on and I'll link to it here. It's well under development and should be finished quite soon.

Thursday, 28 July 2011

Mired In The Middle

Or, Why Games Design Is The Easy Bit

Well, I'm currently having a little bit of trouble with Gestalt. The design is solid, but there's a lot of annoying little things that need to be done and I'm mired right up to the eyeballs in them. Even getting to first playable is proving to be an exercise in deep irritation. The game needs to be working already, but I'm spending what little dev time I'm allowed (in between personal crises and annoying business tasks and trying to squeeze enough cash out of my friends to pay the office rent) implementing a whole bunch of structural crap to prevent me having to do too much of this again later in the line. And ProtonSDK, while handy in that it gives me a shiny Android and iPhone build path for free, keeps throwing up more and more stupid bloody problems.

As an example from Gestalt, the template system is wired into the rules system, which is in turn wired into the paradigm system. All this stuff is designed to work via some easily changed text files, but since I only have 3 templates right now, I've cheated and put in some hardcoded basics. But then I discovered that I needed to cache the currently active ones. Which should be easy, except it turns out that the VariantDB structure contains no capacity to modify its content and, here's the kicker, actually destroys all of its objects on clearing! So no VariantDB for me. Except I used VariantDB for a reason, as at some point in the future my Entity-extending Templates will be actual renderable EntityComponents, and so now I'm in a situation where I have to filter things out of a VariantDB (effectively a Variant dictionary) into a VariantList, a straight array-like collection. Aaaaaand then I discover VarintList has a hardcoded maximum of 4 elements!

I should perhaps be clear: all this crap is not unusual for a development period. But this is the bullshit fucking about period that takes time. If I'm working as part of a team I have a constant inbuilt drive to finish each element in order to permit my team-mates to progress on their work. Working alone, however, means I'm mainly just floundering in a sea of annoying petty issues and stupid bugs. It's this period that always consumes my home projects, and I'm having to fight hard to prevent it consuming Gestalt, especially with paid work floating around waiting to steal my time in the office.

Really, I should at the very least try to remember what I said right up at the beginning, in bold. Games design is the easy stage. No amount of Unity or similar middleware can take away the need to actually build the game, and that will never be easy. The Development Swamp - located between Creative Surge Design Land and First Playable City - is a dangerous and unforgiving place. Hopefully I'll be out of it soon.

Thursday, 21 July 2011

Updatery

Paradigm screen has been implemented, refactor is mostly done. Moving on to linking Paradigms to templates.

In other news, GDC Europe next month is now confirmed. I'm going to be spending an entire week in Cologne sharing a room with a woman who isn't my wife. I expect hilarious consequences aplenty. On the plus side, she's a disabled fluent German speaker, so I can explain to people that she's my translator, and she can explain to people that I'm her assistant.

In other news, booking train travel across Europe with a month's notice is surprisingly difficult.

Friday, 15 July 2011

Gestalt Progress

Been a slow week due to more moving and numerous personal issues. School holidays now, which should mean an acceleration. Discovered a massive design flaw in my Paradigm/Rule system which would have spawned hundreds if not thousands of memory leaks. Refactoring is underway and will probably continue on Friday. Then Construct Templates and first playable.

Sunday, 10 July 2011

Eyes, Brains, The Wood, and The Trees

Excuse me for a little while as I indulge a rambling personal health anecdote. I promise, this is relevant to games development, I'll get to it in time.

I have a sensitivity to bright light in my left eye. As a result of that highly selective problem, each summer that I spend a significant amount of time outdoors results in me screwing my eye closed, and has since I was very small. As a result, I have astigmatism in that eye from constantly squeezing it, and it worsens every summer as the bright light once again forces my left eye closes.

As a result, I tend to wear glasses mainly during the summer months. But something that occurs to me every single year when the time to wear glasses comes around again. See, regardless of the worsening summer brings on, I'm to some degree unable to see properly in my left eye all year round. As a result, my vision has adapted. Although I generally operate as if I had full monocular vision, in fact I'm massively dominated by my right eye. I somehow can still gauge distance, possibly by the degree of blurriness (which I'm not consciously aware of, since my right eye is so dominant), but ultimately everything I see comes via the right eye.

And so each year I climb into my glasses once again and each year I am temporarily taken aback by the sudden realisation that I do not actually normally see in stereoscopic 3d. You can probably imagine how weird it is to suddenly realise that you've been seeing things wrong and didn't know it. It's a creepy experience, and it never really gets any easier no matter how many times it happens. It also leaves me staring at things at inopportune moments, which can occasionally get me into trouble.

***

Anyway. The point of this anecdote is that every year, around this time, I'm forcibly reminded that perception and the apparently objective way it occurs are completely and utterly subject to the many peculiarities of the human brain and the various other squishy meatblobs that feed it information. I had another reminder of this a couple of weeks back.

We got a bite of interest in The Obelisk, the XBLA title (written in XNA) we developed last year with our startup funds. It's been languishing in Development Hell ever since, unable to find a publisher. When we finally gave up and mothballed it, I had just temporarily given up attempting to implement deferred lighting due to severe problems getting sane results when regenerating world-space co-ordinates from a screen-space co-ordinate and a depth value. Having sweated blood over PIX for days trying to work out what the hell was wrong, when the decision to abandon the project came I was quite happy to say goodbye to it.
So, it had been nearly a year before I came back to the project. And I suspect many of my readers already know what the result was; I set up a depth-render to test the deferred lighting system, and immediately spotted what the problem was. And fixed it. In minutes.

As it happened the bite of interest didn't come to anything, but once again there was that feeling, much like the glasses, that between my last contact with that code and this contact there had been a great deal of change and movement, not in the code, but in me. Not that I was a better coder now, although I do hope I am. But that I simply wasn't the same person any more.

So, this is the lesson I've taken from this. Like most people, I know to stand up and walk away from the code when it starts to snarl up in my head. But generally I've been trained not to completely abandon a piece of snarled-up unresolvable, but to hand it to someone else. At Broadsword I could do that; there was always a Jim, a Fabs, a John available to bail me out when I needed a knowledgeable second pair of eyes. But as an indie, there's only me and Ian, and Ian is not really a graphics coder. So who do I have available?
Simple: me. I'm an indie and therefore I'm not beholden to publishers and management. I don't need to document and account for every last bit of development. I am not required to deliver a set of bullet points by the 14th or face liquidation. I don't need to pretend I'm making widgets in a widget factory. And as a result, if I need another pair of eyes, I can afford the time to simply abandon the relevant bit of the project entirely until such a time as my perspective shifts, my eyes are suddenly seeing in 3d, and I can solve the problem with a wave of my hand and a slightly bitter smile at the very idea that it was ever a problem at all.

Wednesday, 6 July 2011

Gestalt Progress, Possible GDC, and RPG Cravings

Well, with the distractions and the move out of the way, I've been back on Gestalt again. The three main Axon colours are now in play and interacting as they should, which is nice to see. Need to tweak the physics to make them feel different as well as look different, mind you. Blue Constructs are working, so Paradigm should now be flowing. Next up - Red Constructs, Construct Templates, and the Paradigm Screen. Also more work on embedding the Rules system further into the game.

I'll put up a new video once the Red Constructs and Templates are working.

A wonderful friend of mine has offered to pay for me to go to GDC Europe this year. This is an incredible offer, as GDC Europe is not remotely cheap, and comes with a visit to Gamescom and a week in beautiful Cologne as part of the deal. I'm thinking of accepting on the condition that she come with me - she's a German speaker, so she'd be practically useful, and she loves Germany but has never visited Cologne. Also I'd get to visit Yuri and Gleb again, this time under much less subdued conditions. The whole idea makes me very happy indeed.

Finally, Cerys has been playing the entire set of translated Final Fantasy games, from 4 onwards. It's making me crave old-school RPGs like mad. I want overcomplicated stat systems and turn-based battles, dammit! I'm going to remain focused on Gestalt, of course, but I'm definitely starting to veer towards going ahead with Homunculus as the next project.

Monday, 27 June 2011

Homunculus Concept

As promised, here's the Homunculus concept I sent to the Intel AppUp fund*.

Homunculus: War of the Alchemists

A top-down turn-based RPG in the search-and-challenge style of the Pokemon series of games. Wander around a broad and fairly open world, locating enemies and challenging them, delving through deep dungeons for the treasures they hide. There are riches to be made and a legend to be forged.

The catch? You yourself are weak. You are not a warrior... you are an Alchemist, a forger of elements and a creator of life itself. Your quest is to find the Great Secrets of Alchemy; the Perfect Solvent, the Philosopher's Stone, and the Elixir of Eternal Youth. To do this you will need to quest into the darkest corners of the world, battle monsters and defeat other Alchemists to steal their secrets and the unique Elements they hide. How can you fight monsters? With monsters of your own.

The Alchemist can manufacture any element he has discovered and can combine them in many hundreds of ways to create new and stranger elements. And together with the Element of Life and Monstertronic 5000, the Alchemist can use these elements to create strange and powerful creatures to defend him and attack his enemies. Discovering new kinds of monster and new mixtures that modify their statistics in hundreds of ways makes up most of the game's difficulty curve, while questing through the world provides its depth. We'll build an intriguing fantasy world of sorcerer-princes and amazing monsters to explore and exploit.

The aim of the game is to appeal to the grinding impulse that is so ingrained in so many players while still tying it into a characterful and interesting world and story.


Thursday, 23 June 2011

Ping

Still around, just up to my eyeballs and not much to report. Wrote a lengthy rant about the relationship between games media, popular zeitgeist, and the swarm of consultant/producer-type buzz-wording that so afflicts the industry internally, but it needs a lot of editing to be even remotely ready to post - at the minute it doesn't really make the point I want it to.

So that's coming at some point over the next week, along with a description of the recently-unearthed Homunculus design concept I sent in to the AppUp Accelerator project (and which got rejected, as Intel are apparently much more interested in crap Angry Birds clones).

There's been a small amount of progress on Gestalt, with the first rudiments of the Rule model I'm using to facilitate the changing of the game rules through evolution. Will post much more about that once it's more fully implemented.

Wednesday, 15 June 2011

The Week Of Doing Other Things

I'm working on a different project this week, for actual money, so there won't be much in the way of updates. However I will attempt to put together a rant post at some point. Let's just wait for something to flip me off this week...

Thursday, 9 June 2011

Gestalt - Mouse Picking

Added in mouse picking, which means you can now pick up axon chains and fling them around. I've put up a short video here .

Gestalt Update

Got axon linking working, which is great. They don't normalise atm (and they won't for a little while, it's significant math for what ultimately is just a visual nicety) but they do connect and joint. And then the chains writhe. It's little short of awesome.

Next up - the axon colour sliders and behaviours for blues and reds.

Monday, 6 June 2011

Gestalt Video

Very much work-in-progress, showing a small node map (with the red "infection indicator") and then a crude version of the node screen with yellow axons wriggling and twisting around each other. All to one of the wonderful pieces of music we had made for The Obelisk, which work perfectly with the mood we're aiming at here.

Download it here (WMV format, 2.7Mb).

Saturday, 4 June 2011

Game Concepts I'd Love To Make

I'm having some serious problems getting my codebrain to work this weekend. I'd blame the heat, but it's worked fine in much hotter conditions than this before (at Broadsword it wasn't uncommon to be working in the mid-30s or higher). What it feels like more than anything else is the mental block I used to get from being stoned, way back when that was something I still did. I not only can't maintain focus easily, but whatever part of my brain is supposed to process all those symbols on the screen just doesn't want to do its job right now. I wind up staring at my IDE wondering when exactly I forgot how to code.

So in lieu of actual constructive work, I've decided to write a blog post instead. I know, I know, procrastination ahoy... but in my defence it is past 1AM at the moment, so any development work I did would be pretty rubbish anyway

There are about a half dozen random concepts I have floating around my head that I'm probably never going to get to make. This is because they fall outside the patterns the industry permits - they're too complex/art-heavy/just-plain-technically-difficult for me to do as a one or two man indie project, but they're way too out there to ever be appealing to a publisher, even assuming publishers were remotely in the mood to assign funding to nobodies like us at the moment. It's possible some of them might happen at some point in the future if we got some actual cashflow moving as a company, but generally very unlikely. Here's a few of them:

1) Extreme Survival In Space
This is one of those concepts that has every single person that hears about it nodding and going "yeah, yeah, I'd buy that game!" Except of course no-one really would.
In short, this concept is First Person Survival Sandbox, not unlike a certain game involving the crafting of mines. However I'm not thinking vlox here; more tundras, savannahs, forests, jungles, mountains. The key to the game is survival, not building massive monuments, although building should certainly be in there somewhere at the very least. Walls would probably be nice.
The storyline would be pretty straightforward. Following a terrible accident, you are the only survivor of an attempted colonisation of an alien planet. You have a certain amount of resources and technology that can be salvaged from the wreckage (with other wreck sites discoverable around the area) and beyond that you have only what you can produce from the resources available. To add to the difficulty of the scenario, the planet's inhabitants are not friendly. They're not sentient, but the wildlife can be very vicious. You have scifi weaponry available, but how long will it last out?
I'm envisioning several play-modes - one a race against time where you know a rescue ship will scan for signs of survivors within a certain amount of time and you need to produce a detectable signal by that point (and survive, of course). Another a (potentially multiplayer) sandbox where the aims are really up to you. Another a Total Survival mode where the creatures are more common, there's virtually nothing to be found at crash sites, and even the air is toxic.
The main con? It's unavoidably a massive project. To be really good, it'd need a sold A-grade graphics engine and assets to match, and that's before the extensive gameplay coding time and immense amounts of testing.

2) Monomyth: The RPG
I'm a huge fan of Joseph Campbell, the mythologist and writer of books such as Hero With A Thousand Faces. One of his many suggestions regarding the structure of world myths was the Monomyth, the core basis of virtually all mythological tales (especially in the West, but also to a great degree in the East).
This covers several specific stages and most of them show up in games all the time for pretty obvious reasons. What I'd like to do is have an RPG featuring a lead character who is a little Genre Savvy regarding RPGs themselves, but more importantly knows the Monomyth well and can recognise the stages of the Hero's Journey as they occur. More importantly, it should be possible to diverge from the Hero's Journey by a considerable margin, although doing so should effectively prevent the player from proceeding.
In short, an RPG in which the only way to level is to cleave to mythic stereotype, in which the lead character is actually aware of said stereotypes. Strikes me as an interesting journey in and of itself. The main con I can think of is that the game would have to be a stereotypical RPG, sort of by default.

(As a somewhat connected aside, for years now I've wanted to see a character in one of the recent crop of "post-modern" horror movies such as Scream or I Know What You Did Last Summer who was not only aware of horror tropes, but had actually lived through multiple horror movies and was now an emotionally-scarred ultrasurvivor. Imagine the kid from Zombieland, having lived through having his dreams invaded by Freddy Krueger and then avoided an alien monster attack during a visit to New York... just strikes me as an interesting take on the whole genre-savvy concept.)

3 ) Living Kingdoms
For some reason I have an incredible yen for medieval and cod-medieval economics. The part of the Total War series I really enjoy is the strategic map, and I play all sorts of simulators such as the Europa Universalis series.
But while Grand Strategy has its appeal (and I love most forms of it, especially Hearts of Iron), I'd love to see a direct simulation. One of the useful things about medieval economics is that it's fundamentally microeconomic in nature. For that reason, it should be possible to set up a landscape, set up a bunch of resources on that landscape, set up a whole slew of simple AI agents with basic resource-gathering and processing behaviours, and let them loose to form their economies naturally.
So where does a game come into this? Well, if we make it more fantasy-ish, add in some kind of "mystical blood" which allows almost instant control over the little guys, and then gave the player a radius of control around a moveable main character within which they can direct development as they wish, we have the basis for a sort of economic sandbox. Much like the Settlers series, but vastly less contrived and with more complexity (and less requirement for you to personally handle said complexity, since the resource chains would come into existence naturally).
Cons? Just imagine the quantity of testing required to get a system which reliably produced a workable economy to play in. And that's before we even consider the amount of animation work needed for the little peasant dudes. Essentially we'd have the same problem as the Settlers developers, only 20 times worse.

Right, I'm getting quite sleepy now so I'll leave it there. May go into some of them some more in future, may dredge some more out of my brain at some point. As always, all feedback is welcome.

Tuesday, 31 May 2011

More Update

Long break due to Bethan getting ill, meaning I've been home pretty much continually. May continue for a little while, as it's half term. Progress is still happening in fits and starts, however. Axon leg joints now work perfectly, including torque. Am now implementing the "spasming flex" movement, and the fusing of legs that contact with each other.

Wednesday, 25 May 2011

Gestalt Update

Got the physics working absolutely perfectly. Then realised I needed to implement rotating joint motors, so added joints in. Broke the physics again.

Monday, 23 May 2011

Writing Games Is Easy

Oh dear, here we go again. Just saw another string of comments on a RPS post about how "writing games is easier than ever."

Um, no. Writing games is every bit as difficult as its ever been.

Someone else made it worse by saying "No, it's just coding games is easier than ever."

Um, no again. Coding games is every bit as difficult as its ever been. Its just that a lot of very clever people have very nicely done a whole lot of the work for you. This is a good thing - it democratises the process and means that we have more bodies to throw at the "writing games is hard" problem we mentioned earlier.

Unfortunately, if you want to step outside the boundaries of those elements they've been nice enough to provide, you're still going to discover to your horror that coding games is as difficult now - if not more so - than it ever was before.

Gestalt Update

Nearly there. Legs are in place, IT ALL WORKS OMFG. Moving towards having an actual game at quite some pace.

Thursday, 19 May 2011

Rare Stuff and the Retro Sideline

We've been doing this vintage/retro computer stuff for a few weeks now (well, Ian has, I've been coding and parenting) and we keep stumbling into rarities. We've got an Issue 1 Spectrum hanging around, an Atari 2800 (yes, that's correct, a 2800 - the ultra-rate Japanese version of the 2600) and Ian's just shown me a copy of "Grid Master".

Now, setting aside the fact that "Grid Master" sounds like the most awesome name for a CBBC cartoon ever (just try saying it in an evil villain voice), it's apparently even listed as MIA on "World of Spectrum", the definitive online catalogue. So just a teensy bit rare, then.

And this is after 3 weeks.

The sideline's not making any real amount of cash (plenty of turnover, but profit is held back by the need to constantly bring in more stock along with the ungodly postage costs) but it's certainly interesting as all hell.



If you're wondering, the general retro shop is here and you can find the rarest pieces generally on our eBay shop.

Wednesday, 18 May 2011

Gestalt Update

Node ownership done. Axon spawning (and ratios) done but not fully tested yet. Custard level checks done. Update cycle implemented. Axon physics implemented but completely and utterly broken.

Once Axon physics is working, I'll prettify what I have so far a bit and release some super-early screenies and vids.

After that, here's the tasklist to first demo release:

- Axon joins - creation of Yellow chains, Blue definitions, Red assemblies
- Mouse picking and live control of Axons
- Red auto-assemble

- Red assembly templates
- Clickables on the node screen

- Paradigm Screen
- Feed in paradigm output already calculated
- Unlocking mechanism
- Create 3 or 4 demo paradigms

- Axon structures on the Node Map Screen
- Animation of defensive structures
- Travel along node lines

- Demo enemy Gestalt
- Node possession
- Yellow dump
- Red defences
- It won't expand or produce Paradigm for upgrades

- Frontend improvements
- Updated intro screen
- Music
- SFX
- Higher quality UI elements

Optional demo tasks:

- Throbbing/Electrical arcing effect on connected Axons
- Invasive enemy AI
- 3-Axon

Tuesday, 17 May 2011

On Minecraft, Zeitgeist, And Indie Megahits

Gamesindustry.biz has an interview up with Daniel Kaplan (reg rqrd), the business development officer at Mojang Developments, the firm created by Notch from the success of Minecraft.

Much of it involves discussion of the corporate "noise level" they're under, but a big part of it leapt out at me.

Kaplan: "It's really hard to tell. We still don't really know how big Minecraft is - we have to update ourselves! Last year the huge blogs like Kotaku and Penny Arcade wrote about it - that's when we realised, wow. It was already going well, but when those guys wrote about it it started to go great. They made a huge impact on our sales and brand. We are very grateful."

He's keeping it somewhat under his hat, but essentially this has been the way Notch and Mojang as a whole have been all along on the subject of the "secret of their success." This has been in stark contrast with most of the journalists I've read on the subject, who seem to be determined to promote the idea that Minecraft's success was some kind of magical feat, some organic thing that simply leapt fully-formed from the quality of the product.

This is, of course, purest crap. Minecraft is an excellent game with one absolutely masterful mechanic (the spawning of monsters at night-time, which forces the player to engage the world around them with a strict time limit from the start). But there are thousands of excellent indie games out there, and hundreds using the same paid-alpha approach as Minecraft. Why haven't they all made millions?

Because Minecraft, good a game as it is, got its success not from any inherent quality of the game, but from a thousand blogs, forums, and online magazines carrying the news on Mojang's behalf. There's a name for this kind of self-perpetuating narrative. It's called a "zeitgeist". And this zeitgest, this sheer blind luck of the draw, is the secret to Minecraft's success.

Contrary to the magical thinking of journalists, Notch/Mojang simply got lucky. That's all. Nothing more, nothing less.

But here's the awesome part. This industry isn't filled with humble people, not even amongst the indie community (hello there!). And yet... Mojang pretty much hand credit for their success to the blogs and comics. They're talking about funding other indie titles they like the look of. They even recognise the nascent block-em-up genre they've popularised (not invented, incidentally, the concept is a decade old) and seem happy to watch contenders arise. They're pushing to make their users happy, not to broaden their fan base or increase their DLC sales, but pretty much just because they want to. They've made millions, and yet they're displaying humility.

I don't say this often... but in this case it's deserved. Mojang Developments are The Good Guys.

Progress, of a sort

Well, I got Box2D integrated. Which was amusing, as it shares some typedefs with ProtonSDK. It's kind of amusing that the B2D guys went to the trouble of naming everything b2 and then put a base header with some highly generic defs like int32 in there.

It's not quite working at the minute, the renderer's getting a weird-ass fixture list. I think I'm missing something. Will be at it today. Once it's working, axons should start dropping into nodes.

Saturday, 14 May 2011

Blogger Fail

So. I finally write something people pay attention to, start getting decent page views and get a bunch of comments... and then Blogger dies on its backside. Taking my pageviews and comments with it.

Nice going there Google!

Regardless, there's still one thing I can say about it: At least it's better than LiveJournal.

Thursday, 12 May 2011

Android Grumbles

We've pretty much ceased to bother with Android, apart from occasional updates to the 3 titles currently on there. The reasons for this:

1) The service is absolutely swarming with crap. There are certain developers that specialise in cyclically releasing virtually invisible updates to their collection of match-3 games every 2 weeks just to stay atop the "just in" list as much as possible. There are hundreds of apps using the name of well-known film or TV shows, musicians, whatever it takes to get search results. There are apps which are basically the name of well-known iPhone games, followed by a lot of spaces, followed by "... Wallpaper". There's a dog fighting game on there. It's not a healthy and competitive market, it's a morass.

2) As a result, most Android users just look at the "Top" section, but that just means that those titles which already sold ungodly numbers sell more. Everyone else is ignored.

3) There's no practical way to market a game to Android users. There isn't even an equivalent of "freeappaday".

4) Android is supposed to be a blanket solution across multiple handsets, but apps have a horrible habit of randomly not working on some handsets when they work fine on others. This gets much worse if you use anything remotely complex such as wifi, bluetooth, or even the Contacts API.

5) Android users don't email to tell you it doesn't work. They give you a 1 star rating and post a comment to that effect. Neither can ever be removed, even if you fix the problem. This routinely happens due to point 4), above.

6) Android users consider £1.50 too much to pay for a game that took multiple people over a month to create, and get angry if the game they bought for 80p doesn't get updated every single month with new content.

So, as you can probably tell, we're not going back there unless someone pays us to, except to bugsplat our existing apps. It just isn't worth the time and effort.

Tuesday, 10 May 2011

Gestalt - Concept Part II

Paradigm and Evolution

The Gestalt is capable of improving itself via its Blue Axons. As mentioned in Part I, Blue Definitions (geometric structures of Blue Axons) produce a resource known as Paradigm. This represents the Gestalt's slow modification of its own nature.

These modifications are handled via the Paradigm screen. On this screen is a list (with visual cues to the right, just before the Custard Bar) of different possible developments, each marked as an Evolution or a Paradigm (and highlighted in green-blue and darker blue respectively). One can be selected at any time and this will fill at a rate related to the amount of Paradigm resource produced, however all of the entries on this screen will very slowly fill over time regardless of being selected or not.

Once a requisite amount of Paradigm resource has been gathered, the result differs.

Evolutions unlock instantly, allowing some new possibility for the player - examples include 3-legged Axons (called 3-Axons), new Assemblies for Reds, and so forth.

Paradigms, on the other hand, remain on the Paradigm screen. They must be selected again to become "Active", in which case they begin to have an effect. Once this occurs, they turn steel-grey and can no longer be deselected. However, once this occurs, a new Paradigm will appear that has the capacity to reverse the effects of the previous one.

Paradigms act as selectable "powers" for the player. The player may decide to leave a number of Paradigms charged and ready to be activated if needed, and several Paradigms will be designed around that role (Survival Mentality Paradigm is a classic example).

While most Evolutions provide only simple incremental improvements in the player's capacity (in a manner similar to Tech Trees in other games), Paradigms serve to allow us to almost entirely change the way the game is played based upon the player's decisions.

Enemy AIs

Enemy AIs in Gestalt currently come in three forms:

1) Gestalt
Other Gestalt can come into existence, and these will generally be the most common enemies. They operate in the same way as the player's Gestalt, including Axons, Paradigm and so on. Much as with the player, they can only be defeated by destroying their Yellow Axons.

2) Virii
Rapidly moving enemies that piggy-back the natural data packet traffic on the network (represented by occasional pulses of brightness along the link lines). They slip by most defences, steal resources (which can cause Axons to die), and then flee before they can be attacked.

3) Deus Ex
Monolithic intelligences can arise that are based in a single conscious process on a single Node. These opponents are extremely difficult to directly take on, but have limited ability to affect the network beyond their home Node. They can take over the processing of other nodes and weaken them, and can with great effort move their entire selves to another Node to gain better strategic position.

Suggestions for other kinds of opponent AI are gratefully received. Variation in this will be key.

Play Modes

The simplest play mode is called Conquest Mode. The player is let loose on a network and wins by dominating every Node. There will typically be a number of enemy AIs of the three kinds mentioned above.

Slightly more complex is Singularity Mode. This presents the player with a couple of wrinkles on the basic structure laid out in the Conquest Mode. Firstly, many of the Nodes in the network will have some oddity or special property that might help or hinder the player, and secondly, the game will be accompanied by a relentless red ticker counting up as the game progresses. After a pre-defined period, counter-actions will be taken by the humans running the network; deadly viral counter-agents and worse will be released into the network, and Nodes will begin to disappear. The player can prevent this by controlling certain Nodes that will allow the player to keep the human watchdogs away from their own network.

Multiplayer is intended to be effortless and seamless. If it is enabled in the options (which it will be by default), the game will permit other instances on the same local network to connect to it silently and without mentioning the fact to the player. The game will only stay actively able to host for a few minutes after a game is started, however all games will perform this check on game start.
The maps of players in Multiplayer are connected at their edges, so when the player explores outside of their starting area, they will eventually discover their Multiplayer opponent.

It will of course be possible to whitelist, password control, or turn off this feature entirely.

Monday, 9 May 2011

Develop 2011

I just took a look at the list of speakers and topics for Develop this year:


Is it just me or is the entire line-up (Art keynote notwithstanding) just completely nauseating? It's just endless rehashes of the same "EVERYTHING MUST BE CASUAL! EVERYONE MUST USE AGILE! EVERYTHING MUST BE ON A PHONE AND COST 20p! EVERYTHING MUST HAVE SOCIAL FUNCTIONS!" crap that infests Gamasutra these days.

"Can you whether the challenges of the New Games Market?"
- Er, no. Because I can't live off games that sell for £1. I'm neither a student, nor an Indian sweatshop labourer. I have a family to support. Go away!

I suspect the whole thing is going to be more of the same - fashionable braincheese for people with no idea of how to make games and every idea of how to spend the money they make from people who do know how to make them. Coke snorting idiot central, in other words.

That said, I may consider the Indie Dev Day section. £50 ain't going to break the bank and I can go and be patronised and patted on the head along with the rest of my fellows.

Ouch

Went for a very interesting talk with a rep from GO Wales this morning about possibly taking on short-placement interns and maybe even getting funding for conferences. Also, free coffee, which is always good.

I then managed to twist my ankle and as a result I'm not in the office today. I'll try to get some work done, but I doubt there'll be much progress to report.

Friday, 6 May 2011

Progress Again

So, interim map generating and rendering fine. Scrolls around OK, have set up correction for position in the click detection. Floating text and other elements work fine, both under and over, which means the Custard Bar will be a doddle. Something's wrong with the node selecting though, I'll fix that this weekend, then we can move into the Node Screen. Not gonna do zooming until later.

Definitely warming to Proton SDK. Takes a while to get used to (lots of boost, ClanLib and so on) but it's good stuff.

edit: Fixed the node selection in the middle of the night while panicking about family stuff. Suffering for it the next morning, though.

Monday, 2 May 2011

Delays

Not been at work due to illness (Cerys', not mine). So no new progress.

Wednesday, 27 April 2011

Progress

Finally got the scrolling functionality from Proton SDK working right, which was nice. And selection works fine and hands the map a co-ordinate correctly, so drilling down into a node will be a piece of cake. Will have to adjust it later to make it work with scaling, though, especially for the phones.

The node map generator (now it's rendering) is not producing maps to a standard I like. I'm currently using a "path around the area and then connect any close ones" approach. I'll try a different algorithm tomorrow - maybe a space-fill and then connect? That should reduce on the amount of intersection cases I seem to end up with. Or maybe fill the centre then spread outwards?

I'll post up some screenies once I get results I'm happy with.

Tuesday, 26 April 2011

Numerix

Got a request for Install To SD supprt in Numerix today, which is odd, as I thought Numerix already did support Install To SD. I'll look at it tomorrow, I think - the old girl could do with an update anyways. I have Laura's "sweeties" skin somewhere, too.

Gestalt - Concept Part I

The currently active concept I'm working on at MCG is currently named Gestalt. A Plushie Axon will be winging its way to the first person to figure out where the direct inspiration for this concept comes from.

(There are no illustrations yet, as few exist outside of sketches on pads. As this game is almost entirely code-side, I haven' t really involved the art team at all. I will add piccies when the demo is ready.)

Screens

The game opens on the Map Screen; a scrollable view of an abstracted network. Nodes, represented by circles, are connected by blue-white lines. Pulses shoot along those lines, representing packets. One of the Node circles has a highlight around it. We click on this Node, and we find ourselves in the Node Screen.

Within the Node Screen, at least to begin with, we find a rectangular "bucket", and a large mass of yellow, in the rough centre of a few areas clearly representing the connections out of this Node. Every so often, the yellow mass moves and wriggles and a new Axon drops into the bucket - a circle with two short lines coming out of it.
There are 3 kinds of Axon available at the beginning of the game: Yellow, Blue, and Red. Three sliders next to the yellow mass (known as the Yellow Core) permit the player to choose which of these colours is preferred. This is important, as each of these colours has a different yet essential role to play.

Yellow

Yellow Axons contribute to the "consciousness" or general self-motivational capability of the Gestalt. They naturally connect together in long chains, which pulse and throb in colour at a rate connected to the activity level of the player. So if the player is making high-speed clicks in the game the Yellows will flash and flicker rapidly, while if the player is taking their time and considering their moves carefully the Yellows will throb slowly. If for any reason they remain unconnected to at least one other Yellow for more than about 30 seconds, they die.

To the right of this screen (and indeed all screens once in-game) is a large meter showing a yellow bar and a smaller greenish indicator line. At this stage of the game both the indicator and bar are quite low down the screen. This is the Gestalt Meter, and indicates the "mental health" of the entity you represent within the game. The Gestalt Meter throbs at the same rate as the Yellow Axons, indicating the relationship between them.

To keep the Gestalt's consciousness intact, the player must keep the number of Yellow Axons above a certain quantity, indicated by the green line. This quantity is determined by a combination of the total number of Axons in play, and the number of Nodes you currently control. If the number of Yellow Axons falls below this level, first the player will begin to lose control of the Gestalt, then outlying Nodes will begin to fragment and their Axons flee back to core Nodes in an attempt to restore the Gestalt's balance. This process will continue until only a single Node is left, and if the Yellow Axon level remains below the green target line, the Gestalt "dies" and the player loses the game.

It is therefore clear that management of Yellows, and attacking enemy Yellows, is central to victory or defeat in this game. (My colleague Ian refers to the Yellow Bar as the "Custard Bar" and came up with the tagline "The Custard Must Flow.")

Blue

Blue Axons contribute to the Gestalt's ability to think and evolve, to rationally examine itself and its surroundings and modify its own nature to suit. In order to function correctly they must be connected into geometric shapes called Definitions. If left together they will generally connect up into simple Definitions, but they can be guided by the player (by clicking and dragging with the mouse on the Axon's body to move the whole of it, and on one of the legs to force it to connect with another Axon) to form Definitions of their choice. Blues not connected into Definitions give no benefit, but do not eventually die like Yellows.

Once formed into Definitions, a crackling electrical effect is seen across the blue Axon links and the Definition begins producing a resource called Paradigm. Paradigm is used on the Paradigm screen to drive the Gestalt's evolution. More geometrically complex Definitions produce more Paradigm - so a pentagon produces more Paradigm than a triangle, while a kite-shape using more advanced 3-Axons produces more than either.

The player can pull Definitions apart, but as with Red Assemblies (see below), destroying a structure will randomly destroy some of the Axons within it.

Red

Red Axons are specialised elements of the Gestalt's being devoted to its attack and defence. Reds form special geometric structures called Assemblies. Red Axons make no attempt at self-constructing, instead waiting to be told what to form, and do not die if left unconnected. It is not necessary for the player to hand-construct an Assembly - all currently available Assemblies (depending on the player's Paradigm and Evolutions) are shown as floating icons near the Axon "bucket" inside each Node.

Clicking one of these Assembly Icons expands the icon into a large "frame", onto which Reds will automatically travel and assume the geometric form indicated. These will then float into the area surrounding the Node's structure, orbiting near the Links. Clicking one and then clicking on the link will either send the Assembly out along that Link or deploy it for defence on that Link, depending on its type.

If during the course of its life a Red Assembly is broken apart entirely, a portion of the remaining Red Axons will die and the others will disconnect and attempt to flee to a friendly Node.

Next up - Paradigm & Evolution, Game modes, and more!

Monday, 25 April 2011

First Things First

A quick run-down of things as they currently are.

I presently run and work for a little tiny indie games company called Mutant Caterpillar Games. We've actually been around for a year and a half, but we spent a year of that making an XBLA game that never got released and then another half a year chasing shadows. Now we're pushing ahead with our own stuff - or at least I am, while my colleague Ian Gledhill focuses on refurbishing retro computers to bring in the pennies.

We usually have several projects floating around, some of which I can talk about (such as Gestalt, of which you can expect to see quite a bit), some of which I can't. The latter case is typically because there's another company involved who may or may not wish us to talk about it publicly. I'll generally refer to them by codenames - such as "Project M", which is something we're putting a proposal together for right now. But our own projects I'll generally be more than happy to discuss.

I'll also be linking occasional screenshots, videos and demos here. I strongly appreciate feedback - good critique at the start of a project can save me months upon months of wasted time and effort.

Getting Started

Well. It's been a long time coming, and I figured this evening was as good as any other to finally do it.

That's right. At long last I've changed my trousers started a blog.

You can mainly expect posts about games development on here - that is what I do, after all - and possibly the occasional post about LRP or other RPG-related topics. And of course, lengthy, ill-thought-out and opinionated ranting. There might be quite a lot of that.