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

add "use items" menu item to crafting table [e]xamine menu #30243

Open
joe9000 opened this issue May 4, 2019 · 10 comments
Open

add "use items" menu item to crafting table [e]xamine menu #30243

joe9000 opened this issue May 4, 2019 · 10 comments
Labels
Crafting / Construction / Recipes Includes: Uncrafting / Disassembling Fields / Furniture / Terrain / Traps Objects that are part of the map or its features. Info / User Interface Game - player communication, menus, etc. (P3 - Medium) Medium (normal) priority

Comments

@joe9000
Copy link

joe9000 commented May 4, 2019

problem: currently if you want to [a]pply a pot/pan/etc to heat up frozen food and the pot isn't in your inventory, the [a]pply menu lists all [a]pplyable items within the 3x3 squares centered on where your character is standing. frequently means there isn't a useful key assigned to the pot.

solution: add a "use items" menu item to the crafting table [e]xamine menu that performs an [a]pply action but filters the items to items that are on the crafting table you [e]xamined. now you can put your pot/heating tool on the table you use to craft food and only have three or four items to choose from rather than everything around you that can be [a]pplied.

a further enhancement would be to dynamically add menu items to the crafting menu that represent the [a]ppliable qualities of the items on the crafting table.

adding use item menu:
add use items

add dynamic menu items (assume there's a pot on the table):
dynamic menu

@JeanLucVanDamme
Copy link

This seems like a problem worth addressing, but I'd vote against this implementation - it adds even more to the already-overloaded examine menu (which other contributors are actively working to reduce, rather than expand).

What do you think about this instead? Since we now have the ability to mark any item we please as a favorite... Just add a favorites section in the [a]pply menu. Like this:

CDDA - apply for food items - solve with favorites section

I like this as a general-purpose solution. Whatever the item(s) are that you in particular use repeatedly, you can define them, for easier access within the [a]pply menu. But for your use-case, it needs to be extended to address items not in your inventory... hmmm.

Or, if this annoyance is common, what are the trade-offs of adding a new hotkey? (What do the actual coders think?)

Maybe something like, "activate coo[k]ware". It's just a heavily-filtered apply menu, really. It would only list cooking/defrosting tools. (I know, I know, k and every other letter are taken already. It'd likely have to be unbound by default).

@JeanLucVanDamme
Copy link

JeanLucVanDamme commented May 5, 2019

Actually, does anyone think the whole problem is that "TOOLS" is too broad a category?

Either by-default, or toggled with user intervention, some subcategories within "TOOLS" could be pulled out into their own categories. That'd include COOKWARE.

I'd find that useful. Even better if you can customize - choose which subcategories are especially important to you, and toggle on/off pulling those out from inside TOOLS.

(Assuming [a]pply is modified to include a FAVORITES category, you could achieve the same goal by manually favorite-ing every item in that subcategory, but that's the long way to do it.)

@esotericist
Copy link
Contributor

Speaking for myself as a player (rather than as a contributor), I am really excited by the proposal in this issue of being able to add tools to specific workstations so that I can spatially organize my activatable items while still keeping them close together.

This is the kind of thing that helps me reason about the space my character is in, and helps me feel that a workshop is an actual workshop, rather than merely a collection of tiles which may contain the things a workshop should contain.

As someone who spends a lot of time thinking about UX needs, one interesting thing about this proposal is that implementing it is actually one of the cases where the behavior could be a) optional, b) enabled by default, and c) still not actually substantially impact anyone in most cases unless they take the extra step of leaving tools on a table/workbench.

Unless the use case in question where it is impactful is "I want to examine in order to get items without anything else in the way", in which case that ship has basically already sailed.

@JeanLucVanDamme
Copy link

JeanLucVanDamme commented May 5, 2019

@esotericist - Great Scott, you're right! This proposal has a lot of gameplay and UX potential that I overlooked.

(Sorry, @joe9000, I went way too deep into only the least-interesting use-case of your proposal.)

Potential menu bloat still seems like a problem - the atmosphere of the game (and the true gameplay) is interrupted to the extent menus become larger, more frequent, and more expansive. When I explore the awesome new features built on this proposal, I don't want it to be through a big menu. That trend detracts from the atmosphere in a lot of ways - a large menu physically blocks more of the lovely tile graphics, takes longer to navigate (more keypresses), etc. ANYWAY, so do everything you guys said, but let me get straight to it with a hotkey, or with fewer intervening menus.

Maybe a directional [a]pply function (just like [g]et now has) accomplishes this. [a]pply towards a specific workbench tile to apply only the tools on that space.

P.S. And these features are especially optional if we tweak how workbenches are designated. So, don't automatically designate every flat surface as a workbench -- only certain surfaces based on sensible, default but customizable rules. Users can manually designate more.

@joe9000
Copy link
Author

joe9000 commented May 5, 2019

i think there's some real meat to @esotericist's thoughts above... the potential for building a custom workstation is really intriguing. the best way i can articulate it is in terms of dwarf fortress. tortured analogy: building a workshop (e.g., jeweler's workshop) explicitly filters tasks available in the [e]xamine menu to cut and encrust. i assign specific stockpiles to the workshop to explicitly filter the components available to the workshop (e.g., a furniture stockpile limited to masterwork or better and a cut gem stockpile limited to masterwork cut gems). when i [e]xamine the workshop, my options are effectively encrust, because only the encrust task has the required materials.

translating that to cdda, i designate a square containing a table and a pot as a crafting station; i designate three zones: perishable food (fridge), non-perishable food(display rack), and a heat source (brazier); i assign the three zones to the designated crafting station. [e]xamining the designated crafting station brings up the current menu items: craft items, recraft last recipe, craft as long as possible, and work on craft. appended after work on craft are the [a]ppliable qualities of items in the designated crafting square. for the first four menu options, recipes are filtered to recipes that can be crafted with the tools in the designated crafting station and assigned zones. recipes that could be crafted but are missing ingredients within the assigned zones are grayed out. for the item specific qualities appended the [e]xamine menu, the subsequent menu is an [a]pply menu filtered to items you can heat up, further filtered by the zones assigned to the designated crafting station.

i really like the idea that an initial hard filter is applied based on the tools placed in your station, and subsequent soft filter based on whether you've got the ingredients readily available. @esotericist's spot on: spatial organization has a natural feel to it.

@joe9000 joe9000 closed this as completed May 5, 2019
@joe9000 joe9000 reopened this May 5, 2019
@joe9000
Copy link
Author

joe9000 commented May 5, 2019

sorry, still learning git, thought it was going to close back to the issue list :D

@JeanLucVanDamme
Copy link

I like everything about your last comment.

Bonus, there's tons of room for this to interact with traits, skills, and skill progression.

@joe9000
Copy link
Author

joe9000 commented May 5, 2019

random thought arising from my evident desire to turn cdda into df2: assigning NPCs to crafting stations. [j][m][q] deluxe oatmeal...

@esotericist
Copy link
Contributor

random thought arising from my evident desire to turn cdda into df2: assigning NPCs to crafting stations. [j][m][q] deluxe oatmeal...

There is a great deal of future functionality for NPCs that we all desperately want.

@ZhilkinSerg ZhilkinSerg added Crafting / Construction / Recipes Includes: Uncrafting / Disassembling Fields / Furniture / Terrain / Traps Objects that are part of the map or its features. Info / User Interface Game - player communication, menus, etc. labels Jun 16, 2019
@stale
Copy link

stale bot commented Jul 28, 2019

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

@stale stale bot added the stale Closed for lack of activity, but still valid. label Jul 28, 2019
@kevingranade kevingranade added the (P3 - Medium) Medium (normal) priority label Jul 29, 2019
@stale stale bot removed the stale Closed for lack of activity, but still valid. label Jul 29, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Crafting / Construction / Recipes Includes: Uncrafting / Disassembling Fields / Furniture / Terrain / Traps Objects that are part of the map or its features. Info / User Interface Game - player communication, menus, etc. (P3 - Medium) Medium (normal) priority
Projects
None yet
Development

No branches or pull requests

5 participants