Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Migrate pickup menu to a new inventory_multiselector menu #51033

Merged
merged 7 commits into from
Nov 5, 2021

Conversation

mqrause
Copy link
Contributor

@mqrause mqrause commented Aug 23, 2021

Summary

Interface "New pickup menu able to handle containers and their contents"

Purpose of change

The old pickup menu is unfit for the pocket system and also a general pain.

Describe the solution

  • make a pickup menu using inventory_multiselector that can pick items from the surrounding map/vehicles
  • remove all directional pickup functionality (examine and "pick up at feet")
  • remove WORKBENCH_ALL_OPTIONS external option
  • allow custom invlet solutions for menus using inventory_selector
  • pickup_inventory_preset hides ammo from ammo belts
  • pickup_inventory_preset only checks weight of a single charge to determine if an item is too heavy. This can possibly have negative consequences, but the alternative would be not being able to select a stack that's too big at all. Handling items with charges is still generally problematic.

This does not remove or clean up Pickup::pickup because a) that's still used by autopickup and b) I'm too low on time right now to sort through all that.

Describe alternatives you've considered

Make a directional version of the new menu instead of removing pickup functionality from examine and pick up at feet.

Testing

I played with this for a bit. I'm relatively sure there's still some special cases I missed that might cause strange behavior, but it should be good enough for now.

Additional context

grafik

@actual-nh actual-nh added <Bugfix> This is a fix for a bug (or closes open issue) <Enhancement / Feature> New features, or enhancements on existing [C++] Changes (can be) made in C++. Previously named `Code` Info / User Interface Game - player communication, menus, etc. Inventory / AIM / Zones Inventory, Advanced Inventory Management or Zones PUBLIC TEST Come and try this! labels Aug 23, 2021
@mqrause mqrause force-pushed the pickup_menu branch 2 times, most recently from 1b6c8b6 to 3a3a8af Compare August 25, 2021 02:09
@mqrause mqrause marked this pull request as ready for review August 28, 2021 23:09
@mqrause mqrause force-pushed the pickup_menu branch 3 times, most recently from 611c944 to 9902313 Compare August 29, 2021 01:05
@Night-Pryanik
Copy link
Contributor

remove all directional pickup functionality (examine and "pick up at feet")

While personally I'm not against it, many other players will hate this change because of muscle memory.

@mqrause
Copy link
Contributor Author

mqrause commented Aug 29, 2021

While personally I'm not against it, many other players will hate this change because of muscle memory.

Ha, yeah, I hate myself already, but I still think it's the better option. I'm not against reverting that, though.

@mqrause mqrause force-pushed the pickup_menu branch 2 times, most recently from ce1876b to 1e4c0ca Compare August 29, 2021 03:56
@mqrause
Copy link
Contributor Author

mqrause commented Aug 29, 2021

Since 0-9 as hotkeys for selection didn't work and it's stupid anyway, I allowed a flexible solution for menus now and made a simplified version of what was in the old pickup menu. It seems the input_context forbids a few too many keys (see screenshot)?

@mqrause
Copy link
Contributor Author

mqrause commented Sep 8, 2021

@Night-Pryanik
What's your opinion on removing the WORKBENCH_ALL_OPTIONS external option? Since this will remove pickup functionality from examine anyway, I think it's not needed anymore? I also found it quite confusing until I realized that was what changed workbench examination when using No Hope.

@Night-Pryanik
Copy link
Contributor

@mqrause if the pickup functionality will be removed from examine menu, I'm fine with removing this external option.

@mqrause mqrause changed the title New pickup menu in the style of the multidrop menu Migrate pickup menu to a new inventory_multiselector menu Sep 29, 2021
@ghost
Copy link

ghost commented Nov 5, 2021

Not having directional pickup ability makes the game unplayable for me personally. I'm forced to rollback as having to scroll through several pages of items to figure out which tile has what is too painful.

@Aphegis
Copy link

Aphegis commented Nov 6, 2021

Everyone already knows this, but I'm explaining the problem in case someone played it differently (something I'm noticing after reading some comments, some players used 'g', some 'e').

This is an exaggerated situation (common if you have a small base with many items close together, even after managing 'Y' zone (shift + y).

Previously, I would press 'V' (shift + v), so I could scan the area in a few seconds and see if I found something good, then press 'e' + arrow keys to select the item's position.

Currently you don't have the option to select tiles specifically, so when you press 'g' with too many items around you, it becomes confusing and inefficient.

Character surrounded by items
cataclysm-tiles_2021_11_06_11_48_43_022

Current 'g' interface
cataclysm-tiles_2021_11_06_11_48_47_000

Obviously devs are already aware of this, but i must say, highly controversial change, specially given the fact that current 'g' does not 100% substitutes the previous 'e'.

@wapcaplet
Copy link
Contributor

wapcaplet commented Nov 7, 2021

Agreed; I must strongly object to this new g menu not taking a directional input. The previous get, as well as Grab, Drop, examine, smash, open, and close commands all take a direction, and it is bizarre for the new interface to skip that.

Edit I have submitted a fix to restore the directional selector: #52683

@Zhid13
Copy link
Contributor

Zhid13 commented Nov 7, 2021

I see absolutely no upside to this new update. It removes functionality and replaces it with nothing. It is mentioned that the previous system was a "pain" to use with the pocket system, however the new one does not offer any novel function regarding said pocket system.

Not only does this affect ease of looting around but it also interferes with the a menu, as objects inside a container which contents are hidden are unusable through that menu. And ironically another issue that has cropped up is that objects inside containers that are themselves contained in pockets show up when pressing i, needlessly cluttering the inventory and overriding the decision you've taken to hide a container's contents, and adding the need to do the same for every container within.

Objects appear disordered, and container's contents don't appear next to them, merely referencing their container by highlighting it, which is disappointing considering the new feature is supposed to work better with pockets. And on top of that the ; command to categorize everything by item categories is broken as well, losing a piece of functionality that could put at least some order in the very ugly looking list of all items spread over your surrounding tiles.

@mqrause
Copy link
Contributor Author

mqrause commented Nov 7, 2021

Not only does this affect ease of looting around but it also interferes with the a menu, as objects inside a container which contents are hidden are unusable through that menu. And ironically another issue that has cropped up is that objects inside containers that are themselves contained in pockets show up when pressing i, needlessly cluttering the inventory and overriding the decision you've taken to hide a container's contents, and adding the need to do the same for every container within.

Objects appear disordered, and container's contents don't appear next to them, merely referencing their container by highlighting it, which is disappointing considering the new feature is supposed to work better with pockets. And on top of that the ; command to categorize everything by item categories is broken as well, losing a piece of functionality that could put at least some order in the very ugly looking list of all items spread over your surrounding tiles.

This has nothing to do with this PR. I changed nothing about the menu behavior. The ; thing is worth looking into, though.

@Zhid13
Copy link
Contributor

Zhid13 commented Nov 8, 2021

I apologize for jumping to conclusions so quickly. I have done more testing and filed the proper report.

@Shinoskay
Copy link

Shinoskay commented Nov 1, 2022

I was directed to here to give feed back about the experimental modes pick up interface.

So, the experimental mode seems really un intuitive compared to the previous one. In stable, its really easy to right click pick up items and if there are other functions on the spot then it gives you a list with get items as one of them. I literally just started two days ago and can assure you that the previous system is much more functional and better than the new system. Which is really clunky (metaphorically speaking, of course).

I am specifically referring to the right click functionality when interacting/interfacing with items on the ground.

@mqrause
Copy link
Contributor Author

mqrause commented Nov 1, 2022

Please make a separate issue about this, describing the functionality you miss in a bit more detail.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
<Bugfix> This is a fix for a bug (or closes open issue) [C++] Changes (can be) made in C++. Previously named `Code` <Enhancement / Feature> New features, or enhancements on existing Info / User Interface Game - player communication, menus, etc. Inventory / AIM / Zones Inventory, Advanced Inventory Management or Zones PUBLIC TEST Come and try this!
Projects
None yet
Development

Successfully merging this pull request may close these issues.

8 participants