space-wizards / space-station-14

A multiplayer game about paranoia and chaos on a space station. Remake of the cult-classic Space Station 13.
https://spacestation14.io
MIT License
2.71k stars 3.42k forks source link

E hotkey to quick equip to best slot available not implemented #7667

Open Victor239 opened 2 years ago

Victor239 commented 2 years ago

Description

This has been implemented on tg for many years and the hotkey is used in a number of scenarios:

This keybind works by analysing the type of item you have in-hand then putting it in the best slot:

mirrorcult commented 2 years ago

i don't really think we need this but others may feel differently

ElectroJr commented 2 years ago

I'm not clear on what the keybinding should do. If its targeting an item in the world under a users mouse, then yeah we don't have that and adding something like that might be useful.

If its just quick-equipping the currently held item, there is already a key for that, the use-item-in-hand key (default Z, same as just clicking the currently active hand). If the clothing has quick-equip enabled, it should try to equip it to an appropriate slot. The logic for what counts as an appropriate slot may need improving, but it works well enough atm.

Though that key may conflict with some interactions like open UI for backpacks or PDA's, I'm not sure atm.

Victor239 commented 2 years ago

I'm not clear on what the keybinding should do.

It would work like z for clothing that there's an available slot for, but if there isn't then it would put it in suit storage/belt/pockets/backpack as appropriate. Likewise it would put non-clothing in those slots as appropriate.

This allows users to spam simply one hotkey in order to both equip their gear AND fill all their available storage slots with items.

mirrorcult commented 2 years ago

i don't see why that should be one hotkey considering it does different things (and makes it not possible to put clothing items in backpacks or such, forcing you to equip it). furthermore we already have hotkeys for quick inserting (and removing) items into the backpack and belt slots, which I personally think is better than just one hotkey that puts it in some unknown place in your inventory

mirrorcult commented 2 years ago

though, the backpack/belt hotkeys are pretty unused and could maybe do with a better hotkey

helladamnleet commented 2 years ago

i don't see why that should be one hotkey considering it does different things (and makes it not possible to put clothing items in backpacks or such, forcing you to equip it). furthermore we already have hotkeys for quick inserting (and removing) items into the backpack and belt slots, which I personally think is better than just one hotkey that puts it in some unknown place in your inventory

Because that's how the original game is and it's incredibly convenient to pick up, say, a breather mask and hit 'E'. If the goal is to mimic the original game, then putting the equip hot key only makes sense

It doesn't prevent you from storing items either. Storing items is actually still incredibly easy. Click the item to put it in your hands -> click the container

PJB3005 commented 2 years ago

Yes we need a general-purpose quick-equip hotkey like SS13 does. Make it ctrl+e instead (so it doesn't interfere with our activate hotkey) and make it the /vg/ one instead of the garbage TG one.

Easy clap.

PJB3005 commented 2 years ago

which I personally think is better than just one hotkey that puts it in some unknown place in your inventory

It is true that we can't read people's minds when they press E to figure out where they intend the item to go, but in 99% of cases the educated guess goes where the user expects it to. And for the other 1% they'll just learn to not try. Almost all clothing items only go into a single slot. Gloves on hands, boots on feet, etc... Guessing here is trivial

Having put in belt and put in backpack is still useful of course, because they allow you to quickly stash stuff (quick equip for belt would swap belts, not put one in the other).

Also, a good (and this would be better than /vg/) implementation would be stateful and allow you to easily swap between many slots in case of conflict. For example if you have two slots that fit (pocket and suit tank storage) then pressing E twice would maybe put it in suit first, then try putting it in pocket if you press again.

PJB3005 commented 2 years ago

My last idea would need to be accompanied by in-UI indicators and flashing animations to make it clear what is going on, so it's far from trivial.