Game Development Community

dev|Pro Game Development Curriculum

Inventory System and New Site

by Nick Zafiris · 08/01/2006 (4:52 am) · 14 comments

Hey everyone, I just want to update you on what I've been working on lately regarding Nuclear Nightmare.

Drag and Drop Inventory System
I'm pretty much done with the Drag and Drop Inventory system. The inventory has been completely rewritten and is mostly done in script while the dragging of items is done using the excellent DragDropGui Control resource from Beffy slightly modified.

I've spent a lot of time making sure that its bug free and robust but I'm sure something will popup in the beta test. I was hesitant to show a screenshot because we have not done any GUI work yet but everyone wants a screenshot and also you'll get a better idea of the functionality. It's all programmers' art as well as some images found on the net.

Since the game is a mix of action and RPG, we were trying to find a balance between making it simple and responsive enough when needed in action scenes and comprehensive enough to fulfill the needs of RPG fans.

Some of the major features are described below. To make the description easier to write, all items, weapons, ammo, armor, etc. will be referred to as "items".

- The inventory consists of a grid in which items are placed when picked up. Items are picked up by simply walking over them. There are two tabs, Weapon tab and Item tab. All weapons, upgrades and ammo go in the Weapons tab while everything else goes into the Items tab. We will most likely implement a Body Suit tab in the near future.

- The amount of items the player can carry is determined by the total carried weight since each item has a specific weight. The player has two weight limits, the overload and the maximum. When the overload limit is surpassed, the player cannot run but can still pick up items until the maximum limit is reached.

- All items can be moved around by dragging them. If you're dragging a weapon upgrade on a weapon that is compatible with that upgrade, it will get upgraded. You will have the ability to downgrade a weapon. The upgrades are then placed back in the inventory.

- There is a Quick Slot bar consisting of 10 slots (this may change) that can be accessed by pressing hotkeys 1 through 10 on the keyboard. The player has the ability to drag a usable item (which can be a weapon, a health kit, etc.) to a Quick Slot. Dragging an item to a slot does not remove it from the inventory grid. Then, hitting the appropriate number on the keyboard when in-game equips or uses that item. Not all items can be dragged to the Quick Slot bar. Items excluded are ammo as well as any non-usable items.

Also, when in-game the Quick Slot bar can be used as a weapon bar. By rotating the mouse wheel up or down, you can switch between any weapons placed in it. For example, if you have a weapon on slot 2, a health kit on slot 5 and another weapon on slot 7, rotating the mouse wheel will switch between slots 2 and 7, automatically equipping the appropriate weapon each time. This is useful when you need to quickly switch weapons like being in the middle of a battle.

- Dragging items from the Quick Slot bar to anywhere in the inventory grid, removes them from the bar.

- The currently equipped weapon can be reloaded after its ammo runs out by pressing the "R" key assuming there is ammo for that weapon in the inventory. Picking up ammo while the equipped weapon is empty and is compatible with that ammo, will cause the weapon to automatically get reloaded.

- Double-clicking on an item, equips/uses it.

- Single-clicking on an item, enables its appropriate buttons. For example, if it's a health kit, the Use/Equip and Drop buttons will get enabled while the Unequip and Downgrade buttons will remain disabled. If it's a weapon that has been upgraded, then the Unequip, Downgrade and Drop buttons will get enabled.

- Weapons have a life attribute. The more the player uses a weapon, the more its life gets depleted. Weapons can be repaired via Maintenance Toolkit items. Each time a toolkit is applied to an item, it restores its life by a certain percentage. Each toolkit can be used up to 5 times.

- Hovering the mouse pointer over items inside the inventory will pop up a window displaying a larger picture of the item as well as its properties (name, weight, etc.) and status (weapon life, loaded ammo, upgrades, etc).

- When picking up 2 or more items of the same type, you still see one image of that type in the inventory with the exception that a quantity number is displayed over it. This keeps things organized but it does not apply to weapons since each weapon is unique by means of the life attribute and loaded ammo.

- Every time a new item is picked up or dropped, a brief text description is displayed on the upper left corner of the screen specifying the action. All text messages scroll up and disappear after a few seconds.
There are items that modify the player's abilities (radiation resistance, oxygen levels) or skills but that falls into a different category and will be discussed in the Player Attributes and Skills section.

- All items display their name when the player moves near them (not implemented yet).

I'd love to hear your comments and ideas on how we can improve this system as well as criticism on features that may have been wrongly implemented or missing. Feel free to post your comments in this forum thread too.

New Web Site Coming Soon
Another thing I've been working on lately is redesigning our site by making it CMS based by installing Joomla. This allows us to provide updates MUCH easier and faster. It should go live in the next few days but you take have a preview here.

Update: New site is up

The menu buttons will be redone and more images will get uploaded before it goes up. I'd like to hear your thoughts on it too.

One last thing, if anyone has experience in making Maya characters work with the default Torque animations please post in this thread. Thanks!

I leave you with a screenshot as promised.
www.nuclearnightmare.com/images/GGimages/dragdropinv.jpg
Nick
Element115 Entertainment

#1
08/01/2006 (5:42 am)
Pretty snappy, Nick
#2
08/01/2006 (6:22 am)
Woah man, 2 inventory systems in less than 24 hours. Are you trying to one up me Nick !? :)

Good job, Reminds me of Deus Ex, System Shock, and Vampire: Bloodlines (especially) systems, which were good for RPG FPS inventory.
#3
08/01/2006 (6:27 am)
Hey Matt, lol didn't do it on purpose. I planned on getting this out here on GG before sending out a major press release later this week for Milestone 1 completion. Thanks, love your GUI too! Very clean. Thanks Adam.

Nick
#4
08/01/2006 (7:21 am)
Heh, I know, and thanks.

I'll send ya an email later today or tomorrow, was working on some saving and loading stuff and wanted to show it to you in case you might be able to make use of it.
#5
08/01/2006 (7:29 am)
Sounds good, thanks.
#6
08/01/2006 (8:00 am)
Nice! The interface does feel DeusEx-y, but the background level immediately got me thinking of max payne..
#7
08/01/2006 (11:38 am)
looks nice
#8
08/01/2006 (8:54 pm)
@Simon - that is EXACTLY what I was thinking!
#9
08/01/2006 (10:52 pm)
Well that subway is not going to be used. I just use it for testing purposes. You can see the current screenshots of the subway here.

Regarding the interface, you guys suggest modifying it a bit?
#10
08/02/2006 (2:38 pm)
Its funny you guys were thinking max payne when you saw that screen because thats exactlly what I was thinking about when I made it. :)
#11
08/03/2006 (1:10 am)
@Nick - Keep the interface - being like Deus Ex is a very good thing!
#12
08/03/2006 (1:33 am)
Thanks, although there are some differences like you can only equip weapons. In Deus Ex you can equip anything even cigs!
#13
11/17/2006 (8:19 am)
Is there an example code resource on this that can be learnt from?
#14
08/08/2008 (8:17 am)
There is no update for a very long period. Whats going on Nick...