Slot system (inventory reform)

Request new features or present your ideas.
User avatar
kharnov
Granger
Posts: 1851
Joined: Tue Mar 06, 2012 10:54 pm UTC
Clan: GT
Location: New York City

Slot system (inventory reform)

Postby kharnov » Sun Jun 23, 2013 5:09 am UTC

I am proposing that we replace the abstract inventory system we've inherited from Tremulous with a more sensible solution that is both logical and permits for additional expansion. This has been brought up on the channel a few times, and since I support the idea, I will now expand it and attempt to codify it and make suggestions for interface integration.

To put it quite simply, I feel that each item of human equipment should take up a set amount of slots. Instead of the old system in which you perpetually had a blaster in addition to a primary weapon that you purchased or spawned with, this one would allow for greater flexibility. There would be several types of slots depending on the category of the equipment in question. For instance, there would be weapon slots, body slots, and accessory slots. Clearly, this would correspond to your guns, your armor, and the miscellaneous things you buy. Further, each item is assigned its very own size. A 'small' item takes up one slot, a 'medium' item takes up two slots, and a 'large' item takes up three.

Assuming that you can have three items in each slot, this would allow for you to have the following combinations: three small items, a small item and a medium item, or solely a large item. Of course, this would assume that we kept three slots for each category. My choice of three is somewhat arbitrary, but would allow for a nice square grid. Three categories, three slots each for a total of nine. Very easy to deal with.

Proposed weapon slots:
  • Small: blaster, other pistol-like weapons, construction kit?
  • Medium: most weapons, including rifle, etc.
  • Large: chaingun, lucifer cannon, flamer?
Proposed armor slots:
  • Small: helmet, light armor, battery pack, jet pack.
  • Medium: heavy armor, etc.
  • Large: battlesuit, etc.
Proposed accessory slots:
  • Small: grenade, that helmet upgrade Viech talked about, etc.

Most of the old Tremulous equipment combinations are still possible. You can equip your suit of armor with a jetpack and go around with a primary weapon and a blaster if you feel like it. On the other hand, it's now possible to diversify. You could go with three small weapons if you felt like it. Or, you can go with something besides the blaster. Armor becomes a choice of taking the old light suit and a backpack, or going heavier while still being able to crouch, unlike with the battlesuit. Accessories could be limited by type if you feel that grenades are too powerful.

Another major reason for the slot system is how you actually represent all of this. Instead of having to deal with the armory in a way that makes you slowly buy and sell things from a menu, you could simply drag and drop, just like the inventory system in games like Diablo. When you go to the armory, you're presented with two windows. The top window has all the equipment available at the armory, and if you can buy it, it's colored blue; otherwise, it's in red. As for the bottom window, you have your nine slots. Buying something is simply a matter of dragging and dropping, as if you drag onto an occupied slot, it's replaced by whatever you've chosen. To get information on what you're buying, you hover the mouse over the item in question and there's an info popup.

Yet another thing you can do this way is set your default equipment set. Either from the menu or while you're in the spawn queue, you can drag and drop things onto your preferred equipment list, and it'll automatically purchase all of that the next time you run by an armory.

Here's a silly mockup of what a typical set could look like:

Image

See what I'm getting at? Comments? Criticism?
User avatar
Viech
Project Head
Posts: 2137
Joined: Fri Aug 03, 2012 11:50 pm UTC
Location: Berlin

Re: Slot system (inventory reform)

Postby Viech » Sun Jun 23, 2013 12:49 pm UTC

I'm totally in favor of a Diablo like slot system but I find your proposal too abstract. The issue is that we need to be able to fine-tune the possible combinations. If the heavy armor includes a helmet then it doesn't make sense to allow the player to buy an additional helmet. It's also not possible to carry both a jetpack and a battery pack but such an inventory would allow this (or atleast create the impression to do so). The system you are proposing is often used for a general carry-along inventory but it doesn't really fit the application of an equipment inventory.

Here's what I had in mind:

  • Head (helmet, gas mask)
  • Body/Legs (light armor)
  • Back (jetpack, battery pack)
  • Weapon (guns, big construction kit)
  • Sidearm (blaster, pistol, small construction kit)
  • Grenade (grenade, incendiary grenade)
Potentially these two, if we find additional items that fit.

  • Utility (radar) *
  • Syringe bag (medikit)

The battlesuit would fit in the Body/Legs slot but disable the Head and Back slots (like a two handed weapon in Diablo disables the second hand).


* I would like to decouple the radar from the helmet, make it a seperate upgrade and improve it (read more). If it wasn't for the jetpack+radar combination I would put the radar in the back slot. Maybe this will work when the radar also displays enemies to teammates.
Responsible for: Arch Linux package & torrent distribution, Parpax (map), Chameleon (map texture editor), Sloth (material file generator), gameplay design & programming, artistic direction
User avatar
kharnov
Granger
Posts: 1851
Joined: Tue Mar 06, 2012 10:54 pm UTC
Clan: GT
Location: New York City

Re: Slot system (inventory reform)

Postby kharnov » Sun Jun 23, 2013 4:22 pm UTC

Sure. My categories were only a suggestion. You can use whatever you want.
User avatar
Viech
Project Head
Posts: 2137
Joined: Fri Aug 03, 2012 11:50 pm UTC
Location: Berlin

Re: Slot system (inventory reform)

Postby Viech » Sun Jun 23, 2013 4:57 pm UTC

Maybe Gireen wants to concept a fitting Diablo like (II, III) slot system visualization for us? :smile:

It would be used to show the current equipment on the HUD, with keybindings displayed next to usable items (in tutorial mode) and as a (potentially interactive) part of the buy menu.
Responsible for: Arch Linux package & torrent distribution, Parpax (map), Chameleon (map texture editor), Sloth (material file generator), gameplay design & programming, artistic direction
freem
Mantis
Posts: 90
Joined: Mon Feb 11, 2013 1:02 pm UTC

Re: Slot system (inventory reform)

Postby freem » Mon Jun 24, 2013 1:29 pm UTC

The slot idea is indeed the direction to go.

I made a class diagram for a potential design of gamelogic last week, when I had to think about that equipment problem, and I came to the same solution as viech spoke about.
About the disabling stuff, in graphical term, it only needs something like a race' shape (you'll understand why I speak about race and not only human after) with squares containing the stuff.
On coding side, it is simply needed to associate equipment with more than one slot, and then when trying to buy a new stuff, check if all associated slots are empty. Quite easy.

I would add a comment on the race thing, now.
Various number of slots can be given to players depending on the race (we would have 2 species: humans and aliens, with various races in each one. Currently only one for humans, though) :

For a human standard clone (we are speaking about clones, in the background, right? So I use the term of standard clone, because it might be interesting to add stronger or faster clones, with disabled stuff: stronger would be to heavy to use a jetpack, faster would not be strong enough to wear big armors, by example) there are the one viech said, equipped by default with the blaster/rifle combo or blaster/ckit combo (other clone usable: engineer, with a better understanding of ckit which allow to build faster? Just ideas...).

For an aliens... it would depend, each alien race having various slots. Since there is currently no possibility to give them custom stuff, it is not important: they'll just stand with their default stuff every-time.

The advantage of this, is that in term of coding, managing a human or an alien for stuff would work in exactly the same way and so the code would be simpler.
It might also allow to use some scripting to implement weapons/races/species, so that this stuff would not have to be hard-coded. As for bot's behaviors? This could help modders to create stuff, without having to bother with the inner mechanisms of unvanquished (well, still have to code to add weapon's behaviors which does not exists, I guess).



PS:
Following the last diagram I made (not modified since few days, and still have improvements to do), in case people are interested. It uses UML to show relationships so reading that link to understand it will help. Note that it does not only concerns equipment/species/race stuff. About technical stuff, it would be indeed easier with C++ to implement an object oriented architecture, but it is also very doable in C.

diagram

Edit: wrong image. Twice. Sorry for that...
Attachments
unvanquished_gameplay.jpg
unvanquished_gameplay.png
User avatar
Gireen
Graphic Designer
Posts: 217
Joined: Wed Mar 07, 2012 1:26 pm UTC
Location: Germany
Contact:

Re: Slot system (inventory reform)

Postby Gireen » Mon Jun 24, 2013 5:03 pm UTC

to complicated. thats what i think about a Diablo like inventory. In a RPG this might be a good way but a Shooter needs a simple and fast way.

Lets take a look how this is done in other shooters:
Urban Terror: inventory & weapons
before spawning you can chose weapons/items/armo the 3. item slot can only be used when there is no armor selected or something.

Battlefield 3/BC2: inventory & detail view
class based, where special classes have special items/weapons. before spawning these can be modified.

...
continue this for every 2. Shooter available
...

The current Tremulous menu is slow, this wouldn't be such a big problem if it isn't used in a fight. e.g. aliens attack the base or a outpost with armory. Advanced players use binds but this is no real solution. The game must be usable without binds. Circle menus are intended to resolve this, but when if have many items the problem begins again.
A solution could be to offer a preset of 5 -7 sets of weapon/armor/items in a circle menu. what else would be defined in binds could be accessible for everyone and personalized in the options.

Personal i would direct use a class based systems. Where different variations in a class are possible, for humans different weapons/armors/items
for aliens different abilities. like for the dretch a version where he is transparent or can jump like a goon. Than players can chose between stealth or faster movement. Or the goon with sniping or the ability to block bullets.
fear ma engrish :granger:
User avatar
Viech
Project Head
Posts: 2137
Joined: Fri Aug 03, 2012 11:50 pm UTC
Location: Berlin

Re: Slot system (inventory reform)

Postby Viech » Mon Jun 24, 2013 6:02 pm UTC

You are probably right regarding the buy menus. Actual drag and drop would be too slow for combat situations. But for displaying the current equipment on the HUD, I still think a Diablo like slot graphic is perfectly suited.
Responsible for: Arch Linux package & torrent distribution, Parpax (map), Chameleon (map texture editor), Sloth (material file generator), gameplay design & programming, artistic direction
freem
Mantis
Posts: 90
Joined: Mon Feb 11, 2013 1:02 pm UTC

Re: Slot system (inventory reform)

Postby freem » Wed Jun 26, 2013 12:41 pm UTC

Gireen wrote:Personal i would direct use a class based systems. Where different variations in a class are possible, for humans different weapons/armors/items
for aliens different abilities. like for the dretch a version where he is transparent or can jump like a goon. Than players can chose between stealth or faster movement. Or the goon with sniping or the ability to block bullets.


Unvanquished is already using a sort of class-system. The problem is only that aliens classes have no stuff to buy, and humans only have one class.
I can not really think for a fast buying/evolving system, honestly, but the mechanic viech spoke about have nothing to do with GUI: it could even keep the current menu.


I think circle menu is the best direction at least for alien's evolutions. For humans, I think that the best solution is to make a set of preferred combinations (somewhere in the config) and then display them at armory like if they were real equipments, but displayed first, so that they could be reached very quickly.
In fact, there is another game which faced the problem: warzone2100. It's not a FPS but a RTS, but the player have to save combinations of stuff to make vehicles and then he can buy them. A combination between that preference system and the current one should be fast enough.

There is also the possibility to automatically add "last used combination" or combos that the player often uses, even without saving them himself.
User avatar
Viech
Project Head
Posts: 2137
Joined: Fri Aug 03, 2012 11:50 pm UTC
Location: Berlin

Re: Slot system (inventory reform)

Postby Viech » Wed Jun 26, 2013 3:18 pm UTC

For aliens, I would indeed go with a pie menu. Humans have a lot more options and will need either a stacked pie menu or somehting more expanded like the BF3 class selection menu Gireen posted – with or without "classes"/predefined sets of equipment. However, there needs to be a form of display of the current equipment and I propose to use a Diablo like slot graph, as it illustrates the underlying slot system (which I want to keep and extend) pretty well.
Responsible for: Arch Linux package & torrent distribution, Parpax (map), Chameleon (map texture editor), Sloth (material file generator), gameplay design & programming, artistic direction
User avatar
Gireen
Graphic Designer
Posts: 217
Joined: Wed Mar 07, 2012 1:26 pm UTC
Location: Germany
Contact:

Re: Slot system (inventory reform)

Postby Gireen » Fri Jun 28, 2013 3:05 pm UTC

About what do we talk here?
Displaying a Diablo like inventory while buying or always in the hud?
The latter needs to much space in field of view.
I would splitt it into different parts, for Usable Weapons/Items/Abilities on the bottom where the actual inventory is and armor/shields/powerups near the health bar.
and switching usable stuff with the 1-9 keys.
fear ma engrish :granger:

Return to “Ideas & Suggestions”

Who is online

Users browsing this forum: No registered users and 1 guest