CleverRaven / Cataclysm-DDA

Cataclysm - Dark Days Ahead. A turn-based survival game set in a post-apocalyptic world.
http://cataclysmdda.org
Other
10.14k stars 4.1k forks source link

Reimplement attribute of sealed containers #74991

Open TheWallOnFire opened 1 month ago

TheWallOnFire commented 1 month ago

Is your feature request related to a problem? Please describe.

Things like "can opener" or "bottle opener" should be able to open sealed cans or bottles. Make sealed container locked, can't be eaten/disassemble/crafting. To open container, disassemble them. It return an unsealed container and the food inside start to spoil. When opening (disassemble) sealed containers, it requires some tools quality like cutting 10 or opening 2 (below)

Solution you would like.

My suggestion:

Describe alternatives you have considered.

No response

Additional context

No response

GuardianDll commented 1 month ago

it is year 2024, almost no one manufacture cans without can puller image

Holli-Git commented 1 month ago

it is year 2024, almost no one manufacture cans without can puller ![image](https://private-user-

What? No

GuardianDll commented 1 month ago

wdym no? i don't think i ever saw cans without one in my life Besides, there is no reason to use can opener specifically, any knife would work well enough for it not being reasonable to represent

Holli-Git commented 1 month ago

wdym no? i don't think i ever saw cans without one in my life Besides, there is no reason to use can opener specifically, any knife would work well enough for it not being reasonable to represent

image I disagree. Knives are a whole lot slower

TheWallOnFire commented 1 month ago

what about sealed bottle

th (2)

Holli-Git commented 1 month ago

I'm going to reopen this, I feel it was closed a bit preemptively. Properly implemented can openers, which A) Don't require you to open each and every can individually B) Have varying levels of time depending on what is used, eg can opener, knife, spoon Would be nice

GuardianDll commented 1 month ago

> I disagree okay, i'll reopen it got ninja'd > Knives are a whole lot slower it is not worth to represent 1 minute loss when eating canned food (in ocasion it doesn't have puller, which is, again, i don't think i ever saw recently), since player do not hurry while eating > what about sealed bottle There are more ways to open sealed bottle without a can opener than with a can opener

My conclusion: it is very not worth it, someone would need to make cans, that specifically do not have puller, update all recipes that use such cans, implement a code to open cans while eating, fix the bugs like autoeat zone still being able to eat food despite being in locked container etc etc etc, and all for player spending a minute more while eating, if they happen to not have a knife

TheWallOnFire commented 1 month ago

can with a puller

Firstly, a can with a puller is just one of that sealed container, st things like sealed bottle, sealed box,.. still need to be opened... All can have puller can have the level of quality to opening is 0, which require no tool. Open these container can be done by add "Opening" when press 'B', therefor don't need to add new action to each item or tool.

The buggg

Secondly, (I think) the way we pull this off is treating sealed container as SEALED at first ( add Tag "SEALED" that make the code skip checking its contents only when eating and crafting), then when open it remove tag "SEALED" from it? This may require a huge change in the code and you may think it not worth it, but in my opinion this can be a huge change when dealing with sealed item, like accidently using sealed food for crafting,...

QuillInkwell commented 1 month ago

Just throwing in my two cents: In personal experience there are still a great many cans probably even most of the cans sold in stores in my area, that don't have pull tabs. It's primarily a few select name brands that have them over here.

But I do agree that the work involved would be greatly disproportionate to the payoff. Since can and bottle openers are a common spawn in residences. Many of the same places that would be giving you these sealed containers would also be giving you the best means to unseal them.

A) Don't require you to open each and every can individually B) Have varying levels of time depending on what is used, eg can opener, knife, spoon

For that reason I feel implementing in the feature in the unintrusive way that (I think) Holli is suggesting would be the wrong way to go about it. Since it could easily result in: "Raid first houses, grab your can/bottle opener. Never think about it again" As Guardian pointed out I highly doubt anyone would pay any mind to a little extra time unsealing can food to eat it since eating food is generally not something you'd do in a time sensitive situation in the first place.

So if it were me I think I would prefer opening cans be an individual per can action. The only conceivable benefit I think can achieved from this feature, is supporting the theme and trying to sell the player on the post-apocalyptic survivor experience. For which opening the cans individual is significant I feel. (And I'd imagine we'd be "unsealing" the food in the truest sense of the word as in it starts it's expiring process after being unsealed. So you wouldn't want to open more than what you plan to eat at one time anyway. (Hypothetically) ) In that way at least, the tool you use feels somewhat significant. And the feature is not simply a bit of set and forget tedium.

All that being said I still very much think it's not worth the time but I wouldn't stop anyone crazy enough to do it. A simple super dirty JSON solution might something like just adding non-container versions of cans that can be converted to their container versions with the food item inside. Through something like Crafting recipes or activation EOCs that check for the tool quality and assign an activity. (Not sure if crafting recipes can actually output an item with something in the pocket already actually.)

GuardianDll commented 1 month ago

> I would prefer opening cans be an individual per can action. No, no, no. It is is a giant amount of unnecessary micromanagement, you will quickly find yourself hating this system once your character find a lot of cans. Even if i disagree it is worth it, i am okay with the system per se, i just thought there is much more of cans that can be opened on their own We already have sealing of container, someone may try to advance it from here

QuillInkwell commented 1 month ago

No, no, no. It is is a giant amount of unnecessary micromanagement, you will quickly find yourself hating this system once your character find a lot of cans. Even if i disagree it is worth it, i am okay with the system per se, i just thought there is much more of cans that can be opened on their own We already have sealing of container, someone may try to advance it from here

To clarify: I don't think all can/bottles should requires a can/bottle opener. Only some. I don't know exactly what the percentage ought to be. But I wouldn't want to just start pretending pull tabs don't exist.

Though I won't disagree that it probably would get annoying to individually open cans just to eat food. It's just the only way I feel the feature would be impactful/meaningful in any way. Like if it boils to just: "have can opener you can use the eat menu the same way you always have". Then you would just grab one at the start and never see an appreciable difference from just leaving things as they already are. Which is what leads me to think the feature really isn't worth the effort. (Though we are already in agreement on that point.)

TheWallOnFire commented 1 month ago

I would prefer opening cans be an individual per can action.

The main idea of this is that you can open sealed things, and you can open them by "disassemble" (Press 'B'), which turn sealed container into unsealed. Create a zone for it and you can opening these at ease. After a day I realise how naive I am, so instead of opening by Action, we can implement like above, also we can add some requirement when disassemble like "require cutting quality of 10..." so we don't have to change the code too much So why should we implement this? The whole idea is to make sealed container work as a locked container for food, which reduce the code for checking sealed container' item, and reduce the change of bug.

PatrikLundell commented 1 month ago

I wouldn't mind it taking extra time to get things out of sealed containers, and I wouldn't mind them requiring tool qualities to do so, as long as nearby tools are used automatically, don't end up in your inventory afterwards, can be used by companions in the same way, and are used in the same way regardless of how you process the contents (camp food store, crafting, eating, giving food to companions/NPCs, quest deliveries, etc.). I would, however, hate to have to micro manage the opening of each and every can in a sequence of tedious actions. That said, I don't think it's worth the effort to implement such a system, and I don't think such a system should be accepted into the game with partial implementations, at least not if it isn't a disabled option while under development.

harakka commented 1 month ago

Tools and tool qualities for something that is trivial to find and carry around and, sans the tool, adds a few minutes to an action you do in your downtime anyway where the minutes don't matter, is completely unnecessary. It doesn't add anything to gameplay.