Its been a slow week for development (of the programming kind) this week, but I've actually been quite busy with what you might think of as business development. On monday I spent the day at an event being jointly sponsored by the "Technology Strategy Board", which is funded by the UK Government to try and promote industrial research and development. I've actually been involved with a TSB project before and figured it would be interesting to attend this meeting and find out about a new fund they had for my local area (Greater Manchester area of the UK).
It turns out that what they are looking for, are small-ish (approx £100k) projects of industrial research. Which is quite useful because it falls in line with my thinking for a particular project I'd want to do related to the game.
One of the biggest issues most indie developers face, especially if they are programmers, is the sheer cost of "content". The 3D models and 2D images that form the core of the games artwork. Ultimately if you have almost no budget and you are a programmer or designer, chances are you are limited to "stock" content, or saving up for an artist, or doing things yourself and accepting the poor quality that usually leads to. But it doesn't have to be that way for everything. My focus is always on video game characters, so I've been thinking about this issue a lot. If you consider the games with the largest character count, you'll see that there's a way to fix the issue of character content at least. I'm talking about procedurally generating them, in much the same way an MMO would.
Now there are various technical approaches to character generation, but they are all relatively well known, if entirely proprietary. I've linked a couple of character generation videos in this post to show the kind of thing I mean.
I particularly like the APB Reloaded character generation system because it provides a huge amount of visual flexibility and customization:
The APB character creation system is very nice texture wise and has some pretty nice shaders and base meshes. But I also particularly like the idea of having proportion editing too similar to the City of Heroes character creator:
So my thinking is, that I'll pitch a project to the TSB to create an SDK to generate characters procedurally, that can be then used by developers of all sizes to create characters. Essentially make an embeddable library that can generate character content for any size or style of game (I've got a few ideas on how to achieve scalability across really-high-end devices and down to mobile/tablet). This of course is going to be a long process and its always difficult to gauge exactly what the judges are looking for from these kind of funds, but if nothing else it will give me a reasonable costing for that functionality for the game.
What I really want to do, is make it relatively trivial to have great looking video game characters available to all sizes of developer. Perhaps opening up a way for artists to get content out to a greater audience (think the hats thing for Team Fortress, only targeted at indies).
More on this later, when I've prepared the pitch video (the initial round of competition for funding is a 2 minute video).
So there have been a few other dull "business" issues to deal with this week, which means that development has been slow. But I have managed to get some time to work on a feature that didn't occur to me until a few weeks ago. That is, you can now drop and pick up items! OK, I know its dumb, but I completely forgot about this type of feature when working on the inventory system. I guess I was too focussed on the "building" aspect of the game that I didn't think about what the player would want to do with items in her/his inventory beyond "using" them or "crafting" them etc. But being able to drop stuff into the world is actually quite useful.
I'm not going to make a video of it this week, because right now I've still not updated all items in the item database to have the correct settings for dropping into the world (for instance right now if you drop a jetpack from your inventory, it turns into a wooden bedside cabinet) but next week I'll show it in action. I still need to add some code to check that when you drop things that they actually drop correctly, so for instance if you drop something onto a container (something with an inventory) I'm going to make it that the item gets added to the inventory, same with the AI characters and buildings with storage. What this should mean is that you can quickly move stuff around inventories, place them in the world for use, or just throw them off the rig if you don't want them.
Of course there is the traditional "do not drop" checks on this stuff. Right now a vast majority of things in the item database are no-drop, but I suspect that at some point almost everything that isn't too big will be droppable.
The next question I've been thinking off to try and finish this inventory handling stuff off once and for all, is the notion of encumberance. Is it right that a player could carry literally tons of junk around the rig? Or should there be a weight associated with each item and have some threshold where it starts affecting movement? I'm leaning towards implementing encumberance because it will add a feeling of importance to the items you have in your inventory. It will also mean that having a way to automated movements between inventories (i.e. helper robots) will add value to the gameplay.
As ever, these things are "experimental" in nature. I'm not going from a set feature list here. So if they don't feel right, they will get reversed. But I really want to make progress on this stuff and it is relatively simple to implement.
What do you guys think? Does being encumbered in a game with lots of inventory put you off? Given this isn't a combat-oriented game, does it matter if you move slightly slower or can't jetpack as far?