Items and weapons – key ingredients in a good role-playing game
For the past few days I’ve been working on some exciting things in Deathfire, that have propelled the game forward quite a bit in my mind. Items. Sounds trivial, I know, but items are the salt and pepper of any role-playing game.
It started when I decided to make a weapons list for the game. We have been working on parts of the user interface for the past two weeks or so, and it got to the point that I wanted to see some weapon icons in the respective slots. In order for Marian to begin drawing some icons, we began making a weapons list. It started out quite innocuously, but once I got into it, the list grew very rapidly, and at the end of the day we had a list of over 150 weapons for the game. And that is just the first go at it, not including any quest items and not including any unique, named weapons, which we plan to feature prominently in the game.
Adding all those will easily double the number of weapons in Deathfire, and I have no doubt that on top of that I probably forgot a good number of cool weapons that we will want to include in the game as we go along. All things said, in the end, I would estimate that we will have somewhere between 300 and 400 weapons. Just to give you a comparison, Shadows over Riva, the third of the Realms of Arkania games had less that 100 weapons. In fact, looking over the game’s source code showed me that the entire game contained a mere 480 items. So, in essence, it looks as if we will have nearly as many weapons as Shadows over Riva had items. Nice!
Here are few examples of the weapons from Deathfire
(Temporary artwork)
But a weapons list like this is useless, of course, if the items don’t actually make it into the game. I mean, anyone with a spread sheet can make a list easy enough. Especially, when Marian sent me a number of weapon icons a few days later, I really wanted to see these items in the game. It is quite interesting to note at this point that even in this day and age, there are no really qualified tools in the market for game design. (I am aware of articy:draft, of course, but since it is a Windows-only application, and horribly overpriced at that, it is of no use to me – or many other game developers for that matter, aside from the fact that it uses a very specific approach to game design from what I’ve seen, that seems to shoehorn you into specific patterns.)
The reality of game design is, that it really is a jungle out there and that to this day, most designers still use a lot of tools that are not really meant for the job, such as regular word processors or spread sheets. These inadequate tools typically create their own set of problems, especially because the data have to be somehow transferred from these document or spread sheet formats into data the game can actually use. It is a process that is tedious and error prone and often results in a lot of extra work, not to mention that designing item lists with item properties inside a spread sheet is anything but a satisfying process in and of itself. So I set out to write an Item Editor to make our lives easier.
Among the endless list of cool things about Unity3D, the middleware engine we’re using for the game, is that you can fully program it, including the development environment itself. So I began writing our Item Database Manager as an Editor Extension which works right inside the Unity environment. Not having to switch to external tools is an incredible boon that can not be overstated.
I wrote an item class, specializations for it to handle things such as weapons, armors, keys, consumables, etc and then began to write the editor that would allow us to enter the items in an internal database where the game can directly access them. Here’s a little screenshot for you to see what it looks like.
As you may notice there’s a bunch of drop-down menus that allow us to make key selections and depending on these selections the editor window will actually change, as weapons have a different set of parameters than armor, for example.
Just by means of comparison, take a look at what one of the external editors looked like that we used for the Realms of Arkania games. Bit of a different world, isn’t it?
When you take a look look at this Deathfire Item Editor I wrote for Unity, the window also gives you a good idea for the level of complexity we are building into his game, I think. This is a first go at the weapons, of course, but already you can see that there is tremendous flexibility built in to customize these weapons in many ways.
Nonetheless, I am certain that I’ve forgotten certain fields that we will need to add to the items as development progresses and requirement change or grow. Magic items, for example have not yet been properly tackled in the editor, as I will need to provide a hook to the magic spells/abilities the item may have. However, one of the truly great side effects of having this item editor and database right inside Unity is that it can grow with the game. Unlike static data formats imported from external tools, where you always have to be very aware of changes and additions to the data fields, here we are working with much more organic data that will adjust easily – and mostly automatically – to new requirements as we work on it. The amount time that procedure saves is invaluable while it also minimizes effort and hopefully errors – though that is always a double-edged sword. In development terms, convenient does not always equate safe.
To round out this post, I thought I’d give you a quick glimpse what the player might see in the actual game in the end, when calling up the stats for the weapon. This image is entirely temporary art, of course, but I think it illustrates the point nicely.
Temporary art for illustrative purposes only. Not an actual game item
Items may not be the most glamorous of things to talk or read about, but as you will agree, they are an integral part of any role-playing game, and how many of you have ever thought about the actual process of getting these items into a game? Well, now you know…
I hope you found this peek behind the scenes interesting. Feel free to let me know what topics you are most interested in and what subjects you’d like me to cover most in future blog posts.
Please make sure to also read this follow-up article with more details on the bound and attuned items in the game.
At this point I would like to congratulate Kevin N. as the winner of the last give-away. Kevin won himself a copy of “Sons of Anarchy,” which he should find in his mailbox soon. But do not despair, you can be a winner, too. I have prepared another give-away for everyone out there, willing to help us spread the word about Deathfire. This time around you can win a copy of the ”Catch Me If You Can: The Film and the Filmmakers” Pictorial Moviebook. This full-color book includes not only the entire script of the Steven Spielberg movie starring Tom Hanks and Leonardo DiCaprio, but also various photographs and behind the scenes tidbits about the making of the movie, as well as an introduction by Frank W. Abagnale, whose unique life story the film is based on. You’re interested? Well, just make sure you collect entries for the give-away below, and don’t forget, you can obtain more entries every day for the duration of the give-away, simply by tweeting about Deathfire.
You are putting a lot of weapons into the game. Don’t you think the quality of the individual weapon will suffer because of this? I mean, you obviously have a description field for your items, so you’ll have to write MANY descriptions for them.
Fortunately, unlike code or graphics, text is cheap. Writing descriptions for items and weapons is truly one of the lighter tasks of game development. 🙂
Hello!
I’d be interested to get an impression of the time that’s required for the features you develop. For example:
– How much time you need to spend for the individual tasks, e.g. making that item editor.
– How much time you estimate until you have a playable prototype where the fun can be evaluated. (If that’s what you’re planning.)
– A vague impression of how productive you are. Maybe measured in number of code lines per day? So I can see: if Guido writes 500 lines of code per day, gets the item editor done in one day, and estimates 2 months until a playable prototype, then if I write 250 lines per day, get an item editor done in two days, I’d need at least 4 months for a similar prototype.
I know that this can be completely misleading and maybe useless, as there are plenty other factors at play (code stlye, experience, …). I ask because when I read Indie game developers’ articles, I can’t estimate how fast they work, and whether I could do the same or whether I’m too slow, or whatever. It’s no problem if you can’t or don’t want to provide this info, though.
In any case: I’m looking forward to see more of your in-depth development posts, they’re very interesting. This seems to become a thorough, earnest game, for lack of better words. What I mean by this is a quality that many RPGs in the late 80s and early 90s had, but which kinda fell by the wayside the last 10 years or so. Don’t know how to express this better. Maybe you can guess what I mean? 🙂
Interesting. Is the item editor something you might consider sharing with others? If you’d put it into the Unity Asset Store, I’d buy it (well, if it won’t cost an arm and a leg, that is)!
Was surprised to see that the item was BOE (Bind-on-equip). This, from a lore point of view, has always interfered with immersion, for me.
Kris,
Here is a bit more info on the bind-on-equip feature of items in “Deathfire.”
http://guidohenkel.com/2013/05/why-would-you-have-bind-on-equip-items-in-a-single-player-rpg/
Peter,
No, not at this point. I’m afraid I simply could not spare the time to handle the support of a software package in the Asset store. Since it is not fully fleshed out either, it would be premature at this time. Maybe once the game is done I will think about it, but for now, it is something I am writing very specifically with “Deathfire” in mind.
These post are fascinating.
I love to read about the theories different developers have on game design, and the trails and triumphs they go through while implementing them.
Thanks for taking time out of your schedule to write this journal.
I am excited to play the game.
I seldom leave a response, but I read a great deal of comments on Items and
weapons – key ingredients in a good role-playing game: Guido Henkel.
I do have a couple of questions for you if it’s okay. Could it be simply me or does it appear like a few of the remarks appear like they are coming from brain dead folks? 😛 And, if you are posting at other sites, I’d like to follow everything
new you have to post. Could you make a list of all of all your
social networking sites like your Facebook page, twitter feed,
or linkedin profile?