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

Total tailoring overhaul #32766

Closed
wants to merge 14 commits into from

Conversation

Rail-Runner
Copy link
Contributor

@Rail-Runner Rail-Runner commented Jul 30, 2019

Summary

SUMMARY: Content "Overhaul tailoring to be more realistic"

Purpose of change

https://github.com/CleverRaven/Cataclysm-DDA/projects/25

Describe the solution

Making clothing from scratch now takes much more time and uses purpose-made material sheets as well as "secondary" parts like zippers, buttons, buckles or whatever, as needed. Most are craftable; base materials may be crafted via weaving as well (the most basic craftable loom was added for that purpose).

Awls were added as well, to be used for leatherworking.

Tailoring pattern set was added, to be used for more advanced and/or fancy tailoring projects.

Requirements for working with different soft materials were implemented, as well as for waterproofing and dyeing cloth. They have guidelines in comments as to how much time the resulting recipe should take, how much material should be used, and how much waste material should be created.

A few recipes were made/changed to showcase how it's supposed to work for recipes in general.

Tailoring recipes produce waste material as byproducts; some types of it can be reused.

Uncraft recipes were added for clothing items whose recipes were changed/added, as simply cutting it into bits wouldn't let one recover fasteners that the clothing may have. There may be an issue of fasteners changing to different fasteners if someone crafts some clothing and then disassembles it, but this seems too difficult to abuse (and really not worth it).

Describe alternatives you've considered

Adding more tailoring recipes in this PR, but it already has grown quite large as I was working on it.

Trying to handle more of the things noted in the project, but once again, this PR already got quite large.

Additional context

None.

Copy link
Member

@anothersimulacrum anothersimulacrum left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good!
I suggest you for the chem naming scheme for potassium alum, e.g. chem_potassium_alum.
Also, you may want to add leather sheets, instead of making every leather sheet recipe use tanned hides.

data/json/items/resources/misc.json Outdated Show resolved Hide resolved
data/json/npcs/items_generic.json Outdated Show resolved Hide resolved
data/json/requirements/tailoring.json Outdated Show resolved Hide resolved
data/json/requirements/tailoring.json Outdated Show resolved Hide resolved
data/json/item_groups.json Outdated Show resolved Hide resolved
data/json/recipes/armor/suit.json Outdated Show resolved Hide resolved
data/json/recipes/armor/suit.json Outdated Show resolved Hide resolved
data/json/recipes/armor/suit.json Outdated Show resolved Hide resolved
data/json/recipes/armor/torso.json Outdated Show resolved Hide resolved
data/json/recipes/other/tool.json Outdated Show resolved Hide resolved
@nexusmrsep
Copy link
Contributor

Interesting. Sewing machines would be logical next step. Both powered and unpowered. Most powered mechanical sewing machines can be operated by hand at a minimal speed but will perform their's action nevertheless, and the quality of the stitch is greater than one hand made. Powered machines would exponentially speed up the job. Just saying, its not the scope of this PR.

@kasanryukin
Copy link
Contributor

Your suggested time changes aren't realistic, even when sewing by hand. It doesn't take 75 hours to make a leather cloak by hand. It takes about 8, and that assumes making a pattern, measuring and cutting the leather from a hide, using a awl to prepunch holes, and then actually sewing it up which takes the least amount of time. A full, two sided, double insulated, hooded, felt and fur cloak sewn by hand using 11th century tools only took 9 hours, and that was with would be considered a 2 or 3 in tailoring. Somebody with the skill required to make the cloaks here would be able to zip through the project pretty quickly.

data/json/items/tool/tailoring.json Show resolved Hide resolved
data/json/items/tool/tailoring.json Outdated Show resolved Hide resolved
data/json/items/tool/tailoring.json Outdated Show resolved Hide resolved
@macrosblackd
Copy link
Contributor

Skill level should definitely make the process faster.
Some suggestions I would make:

  • For an unmemorized recipe: it should take about 25-50% longer than the 'default' speed.
  • For a recipe that you have memorized, and are AT the base skill level for, it should take the default speed.
  • Skill above base should drastically reduce the time needed to craft a recipe, this represents familiarity with the skills and should also adjust the speed of unmemorized recipes.

@kasanryukin
Copy link
Contributor

* Skill above base should drastically reduce the time needed to craft a recipe, this represents familiarity with the skills and should also adjust the speed of unmemorized recipes.

This might require an overhaul on skills in general since I'm unaware of code for reducing craft times beyond bulk crafting existing. It would make absolute sense however for all recipes except perhaps cooking recipes.

@anothersimulacrum
Copy link
Member

Yeah, I think that's a bit out of scope for this PR.

@kasanryukin
Copy link
Contributor

I just noticed: https://github.com/CleverRaven/Cataclysm-DDA/projects/25 in the projects menu. Is this part of that, or are we stepping on some toes here?

@anothersimulacrum
Copy link
Member

It's part of that, it's under purpose of change in the PR summary

@Rail-Runner
Copy link
Contributor Author

Rail-Runner commented Jul 31, 2019

Also, you may want to add leather sheets, instead of making every leather sheet recipe use tanned hides.

I'm not sure if it'd be efficient to craft raw leather into leather sheets first. Leather doesn't come in sheets naturally, after all, so would just be more wasted material unless I'm missing something.

Your suggested time changes aren't realistic, even when sewing by hand. It doesn't take 75 hours to make a leather cloak by hand. It takes about 8, and that assumes making a pattern, measuring and cutting the leather from a hide, using a awl to prepunch holes, and then actually sewing it up which takes the least amount of time. A full, two sided, double insulated, hooded, felt and fur cloak sewn by hand using 11th century tools only took 9 hours, and that was with would be considered a 2 or 3 in tailoring. Somebody with the skill required to make the cloaks here would be able to zip through the project pretty quickly.

Any sources for that? Do note that this could have been assumed to be done by more than one person working on it at once. But if it's right, I might just note that there might be exceptions for how much time is needed to craft things if they're particularly simple. Also leather cloak takes 36 hours right now to make.

Interesting. Sewing machines would be logical next step. Both powered and unpowered. Most powered mechanical sewing machines can be operated by hand at a minimal speed but will perform their's action nevertheless, and the quality of the stitch is greater than one hand made. Powered machines would exponentially speed up the job. Just saying, its not the scope of this PR.

Well, I guess #32227 would need to be resolved first, and also the possibility of higher-than-needed qualities speeding up the crafting. Making separate recipes for sewing by hand and for sewing with a sewing machine isn't the way to go, I think.

@anothersimulacrum
Copy link
Member

Also, you may want to add leather sheets, instead of making every leather sheet recipe use tanned hides.

I'm not sure if it'd be efficient to craft raw leather into leather sheets first. Leather doesn't come in sheets naturally, after all, so would just be more wasted material unless I'm missing something.

Not that the survivor crafted, but something you'd find. I don't imagine modern leatherworkers use hides, but I admittedly don't know much about that area.

@kasanryukin
Copy link
Contributor

Any sources for that? Do note that this could have been assumed to be done by more than one person working on it at once. But if it's right, I might just note that there might be exceptions for how much time is needed to craft things if they're particularly simple. Also leather cloak takes 36 hours right now to make.

The quoted time using 11th century tools is a personal anecdote, so not really since citing myself isn't really citing anything. (I'm an active member of the Society for Creative Anachronism.).

@anothersimulacrum
Copy link
Member

@FuelType-Memes
Copy link
Contributor

FuelType-Memes commented Jul 31, 2019

I don't think I've ever seen a "20 ml" button. That would mean that even if a button is 0.5 cm high that would make it 7.2 cm in diameter

V= pir^2h -> 20 cm^3 = pi * r^2 * 0.5 cm -> r = sqrt(20/(pi*0.5))cm -> r =~ 3.6cm -> d =~ 7.2 cm

EDIT: regarding the survivor suit recipe, I don't understand why should it be made from scratch, when a theme with survivor items are that they're heavily modified existing items. So it's not you making a coat from scratch it's you taking an existing coat, cutting of decor and useless parts, sewing a couple of pouches to it and then a chest rig on top of it, while making it fit you as much as possible

@kasanryukin
Copy link
Contributor

EDIT: regarding the survivor suit recipe, I don't understand why should it be made from scratch, when a theme with survivor items are that they're heavily modified existing items. So it's not you making a coat from scratch it's you taking an existing coat, cutting of decor and useless parts, sewing a couple of pouches to it and then a chest rig on top of it, while making it fit you as much as possible

All the crafting times need major adjustments. I think somebody with practical tailoring experience should weigh in on crafting times. I think they're wildly excessive, but I agree the base times should be looked at.

@curstwist
Copy link
Contributor

about the tailoring_pattern_set.

I could see some pattern oriented sewing books & some blank pattern paper being used, but a pre-made pattern wouldn't be a one-size-fits all solution. Generally you have specific patterns per clothing item like trench coat, pants, etc. Or you make your own using a book reference/own knowledge & sewing pattern paper to draw it out on. Can also use deconstructed clothing as a pattern for a new item.

This is certainly something that can become more granular at a later stage though. Just wanted to mention it.

terminology:
Also probably for a future PR: cloth comes in bolts from the factory (length is measured in yards and varies per material type, as does width). So a bolt with multiple charges would be a great bulk cloth addition. Sheets will work fine for initial implementation though. Finally, I hesitate to call them sheets but I'm not sure there is a better alternative. Common language is: 1 yard of cotton, 1 leather hide (they can't be combined for bolts as far as I know), 2 yards of nomex, etc.

@Rail-Runner
Copy link
Contributor Author

I don't think I've ever seen a "20 ml" button. That would mean that even if a button is 0.5 cm high that would make it 7.2 cm in diameter

It's not single button volume, it's the volume of a stack of 20 buttons.

EDIT: regarding the survivor suit recipe, I don't understand why should it be made from scratch, when a theme with survivor items are that they're heavily modified existing items. So it's not you making a coat from scratch it's you taking an existing coat, cutting of decor and useless parts, sewing a couple of pouches to it and then a chest rig on top of it, while making it fit you as much as possible

Up to someone else to decide here, but I think that the best clothing/armor has to be made from scratch (see scrap steel armor vs. forged plate armor). It could have been made from scratch before anyway, as some ingredient options were craftable.

about the tailoring_pattern_set.

I could see some pattern oriented sewing books & some blank pattern paper being used, but a pre-made pattern wouldn't be a one-size-fits all solution. Generally you have specific patterns per clothing item like trench coat, pants, etc. Or you make your own using a book reference/own knowledge & sewing pattern paper to draw it out on. Can also use deconstructed clothing as a pattern for a new item.

This is certainly something that can become more granular at a later stage though. Just wanted to mention it.

Well, there would have to be some new system for that then. I really wouldn't want to make separate pattern items for every single tailoring recipe there is, as it'd be a huge clutter. Generic set is still better than just ignoring it outright, I think.

@curstwist
Copy link
Contributor

yeah more specific patterns would definitely be a lot of work & clutter, which is why I am fine with generic patterns to begin with. I may look into it later once this PR is done and any refinements stemming from it. glances at guns...I don't think more clutter is a deal breaker in general, just not suitable for this phase.

@ZhilkinSerg ZhilkinSerg added <Enhancement / Feature> New features, or enhancements on existing [C++] Changes (can be) made in C++. Previously named `Code` [JSON] Changes (can be) made in JSON labels Jul 31, 2019
@ZhilkinSerg ZhilkinSerg added the Crafting / Construction / Recipes Includes: Uncrafting / Disassembling label Jul 31, 2019
@81Denton
Copy link
Contributor

81Denton commented Aug 1, 2019

@nexusmrsep A good progression would be hand sewing -> hand operated sewing machine -> consumer grade sewing machine -> industrial sewing machine.
Cheap consumer grade machines usually struggle with thick leather, so I think it would also be reasonable that leather recipes either require an awl or a specialized sewing machine.

But as you said, that's out of scope for this PR.

"color": "dark_gray",
"count": 250,
"ammo_type": "components"
},
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'd suggest making a new resource file, "chemicals.json", and putting this (and maybe dye powder) in there. We're going to need a separate file for chemicals eventually anyway.

@I-am-Erk
Copy link
Member

I-am-Erk commented Aug 2, 2019

image
I can't tell you how happy changes like this make me.

Regarding the survivor armour, I do think it is meant to be made from existing parts. It's supposed to be the post-apocalypse chic, an armour made from top of the line pre-apocalypse stuff that's been modified to suit the new needs of the cataclysmic world. It should also be really hard and slow to make because you have to custom fit a ton of stuff.

Rail Runner added 2 commits August 3, 2019 20:45
@ZhilkinSerg ZhilkinSerg self-assigned this Aug 14, 2019
@ghost
Copy link

ghost commented Aug 22, 2019

Where'd ya go, Rail? Is this PR done? >.> <.<

@Rail-Runner
Copy link
Contributor Author

Yeah, it's done. I'll be converting other recipes in separate PRs, as that would be too many lines changed at once.

@chaisawlajatang
Copy link
Contributor

There are 2 recipes for the jean jacket. Do you plan to do the same for other recipes? Wouldn't it bloat already bloated craft menu?
Patchwork jean jacket requires 48 hours to craft. Isn't it too prohibitive? Don't you think nobody ever would craft it?

@Rail-Runner
Copy link
Contributor Author

Rail-Runner commented Aug 30, 2019

There are 2 recipes for the jean jacket. Do you plan to do the same for other recipes? Wouldn't it bloat already bloated craft menu?

Yeah, that's how I plan to do it. I guess one could split current recipe subcategories into smaller subcategories, to make crafting menu easier to navigate, but I don't see any other option to do it.

I'd expect those recipes to be grouped by two, though, so it shouldn't affect ease of navigation much.

Patchwork jean jacket requires 48 hours to craft. Isn't it too prohibitive? Don't you think nobody ever would craft it?

My opinion is that patchwork things are supposed to take lots of time to make (both IRL and as a balance measure to avoid survivors crafting near-ideal outfit within a couple days from start), especially if you're doing it manually; if they do have the time, though, up to the player to craft what they actually want, be it a jean jacket, trenchcoat, bondage suit or whatever, as long as one could actually make that.

@chaisawlajatang
Copy link
Contributor

chaisawlajatang commented Aug 30, 2019

if they do have the time, though, up to the player to craft what they actually want, be it a jean jacket, trenchcoat, bondage suit or whatever, as long as one could actually make that.

Is there a gameplay reason to waste 48 hours (two full days of nonstop work or three full days with some rest) to craft a jean jacket aside from plain possibility to do it?
Maybe the better solution would be to craft a cotton sheet from patches and use it to craft a jacket? It would help to avoid useless recipe clutter and takes use of cotton scraps.

@Rail-Runner
Copy link
Contributor Author

Rail-Runner commented Aug 30, 2019

Is there a gameplay reason to waste 48 hours (two full days of nonstop work or three full days with some rest) to craft a jean jacket aside from plain possibility to do it?

Wanting to get some clothing without having to deal with zombies, I guess?

Maybe the better solution would be to craft a cotton sheet from patches and use it to craft a jacket? It would help to avoid useless recipe clutter and takes use of cotton scraps.

That's just not how it works, I believe. That's what the looms are for.

@chaisawlajatang
Copy link
Contributor

Wanting to get some clothing without having to deal with zombies, I guess?

And waste 48 hours to just get a jacket? Making cotton sheets from cotton patches first gives the same result without useless recipe and simplifies the whole thing.

That's just not how it works, I believe. That's what the looms are for.

Patchwork item = patches sewn together. Item, sewn from sheets of sewn patches = still patchwork item.

@Rail-Runner
Copy link
Contributor Author

Well, I figure it'll have to be sort of "generic" then, by having a "patchwork cotton clothing piece" item, which is usable for most (but probably not all) clothing crafting. I'll do that tomorrow unless someone gives different feedback.

@Rail-Runner
Copy link
Contributor Author

Rail-Runner commented Aug 31, 2019

Done, won't be needing two recipes for each item now.

Unless I'm missing something, test failures aren't related to changes in this PR.

@ghost
Copy link

ghost commented Sep 2, 2019

woah this discussion is still going on

@ghost
Copy link

ghost commented Sep 2, 2019

woah this discussion is still going on

Considering this PR is a complete rework of a skill all players regardless of playstyle have to worry about(even looting-only clothing runs still may need the skill for repairing their stuff), there'd better be a long ass discussion beforehand. 😛

@Rail-Runner
Copy link
Contributor Author

Alright, seems like I've messed it up. What do?

@Rail-Runner
Copy link
Contributor Author

Closing this in favor of #33806.

@Rail-Runner Rail-Runner closed this Sep 4, 2019
@ZhilkinSerg ZhilkinSerg removed their assignment Sep 5, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
[C++] Changes (can be) made in C++. Previously named `Code` Crafting / Construction / Recipes Includes: Uncrafting / Disassembling <Enhancement / Feature> New features, or enhancements on existing [JSON] Changes (can be) made in JSON
Projects
None yet
Development

Successfully merging this pull request may close these issues.