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

Autolearned recipes need an audit. #37122

Closed
I-am-Erk opened this issue Jan 16, 2020 · 26 comments
Closed

Autolearned recipes need an audit. #37122

I-am-Erk opened this issue Jan 16, 2020 · 26 comments
Labels
Crafting / Construction / Recipes Includes: Uncrafting / Disassembling Game: Balance Balancing of (existing) in-game features. Good First Issue This is a good first issue for a new contributor Items / Item Actions / Item Qualities Items and how they work and interact [JSON] Changes (can be) made in JSON

Comments

@I-am-Erk
Copy link
Contributor

I-am-Erk commented Jan 16, 2020

Is your feature request related to a problem? Please describe.
Many recipes are autolearned currently when they are non-trivial things that you can't just 'figure out'. For example, making hard cheese or sauerkraut. Even sausages aren't that easy to make without some sort of guide. I'm a very skilled and experienced cook (I have a chemistry degree so officially in game my cooking skill must be at least 8) and I would need a guide to do any of those things, except sauerkraut because I'm a great krauter - because I learned how to do it from a book.

Describe the solution you'd like
A careful audit of autolearned recipes. Especially at higher levels, autolearning should be the exception, not the rule.

Reducing the number of autolearned recipes and moving them to recipe books would allow the creation of many more recipe books, which in turn would reduce the ability to gain all crafting knowledge from a handful of books.

Describe alternatives you've considered
We have other ways to fix book learning too, like proficiencies, but this is an important step.

Additional context
This issue should be solved bit by bit, not as a single giant PR. someone could go make a book on fermenting or cheese making and move the recipes to that and off autolearn.

@I-am-Erk I-am-Erk added Good First Issue This is a good first issue for a new contributor Game: Balance Balancing of (existing) in-game features. [JSON] Changes (can be) made in JSON Crafting / Construction / Recipes Includes: Uncrafting / Disassembling Items / Item Actions / Item Qualities Items and how they work and interact labels Jan 16, 2020
@I-am-Erk I-am-Erk added this to the 0.F milestone Jan 16, 2020
@ralreegorganon
Copy link
Contributor

ralreegorganon commented Jan 16, 2020

In case it helps, here's everything that is currently auto-learned. List was generated using jq like this:

jq 'map(select(.autolearn == false or .autolearn == null | not )) | .[] | { result:.result, id_suffix:.id_suffix, autolearn:.autolearn, skills_required:.skills_required, skill_used:.skill_used, difficulty:.difficulty } | .result + " " + .id_suffix' data/json/recipes/**/*.json

where striking the last | .result + " " + .id_suffix will provide a json object with the various attributes that control the actual auto-learn requirements, e.g.:

{
  "result": "survivor_machete",
  "autolearn": true,
  "skills_required": [
    "melee",
    5
  ],
  "skill_used": "fabrication",
  "difficulty": 6
}

or

{
  "result": "element",
  "autolearn": [
    [
      "electronics",
      3
    ]
  ],
  "skills_required": null,
  "skill_used": "electronics",
  "difficulty": 1
}

But just the list of IDs follows here. Note that in some cases the id is followed by the suffix, because multiple distinct recipes may produce the same result.

Current auto-learned recipes:
2_shot_special
2byarm_guard
2byshin_guard
2h_flail_wood
2lcanteen
2x4 from wooden beams
30gal_barrel
30gal_drum from_scratch
30gal_drum welded
30gal_firebarrel
55gal_drum from_scratch
55gal_drum welded
55gal_firebarrel
acid
acid from batteries
acidbomb
acidchitin_plate
acog_scope_mod
acorn_roasted
acorns_cooked
acorns_cooked mortar
adjustable_stock
adobe_pallet_full
almond_milk
almond_milk mortar
almond_roasted
ammo_pouch
ammo_satchel
analytical_set_basic
anesthetic_kit
animal_locker
animal_locker repurpose_wire_basket
anvil
anvil_bronze
apple_canned
apple_canned jarred
apple_canned jarred_3l
apple_cider
apple_sugar vacuum_packed
apron_leather
ar10_makeshiftmag
arm_splint
arm_warmers
arm_xlsplint
armguard_acidchitin
armguard_chitin
armguard_larmor
armguard_metal
armguard_paper
armguard_scrap
armor_acidchitin
armor_chitin
armor_farmor
armor_larmor
armor_nomad
armor_nomad_light
armor_scavenger
armor_scrapsuit
arrow_field_point_fletched
arrow_fire_hardened_fletched
arrow_heavy_field_point_fletched
arrow_heavy_fire_hardened_fletched
arrow_metal_sharpened_fletched
arrow_plastic
arrow_small_game_fletched
arrow_wood
arrow_wood_heavy
arrowrest
ash
ashot
atomic_coffee
attached_ear_plugs_off
aux_flamer
aux_pressurized_tank
awl_bone
awl_steel
ax
axe_ring
back_holster
backpack
backpack_hiking
backpack_leather
backpack_tactical_large
bag_canvas
bag_canvas_small
balclava
baldric
ballistic_vest_esapi
bandages
bandages_makeshift
bandages_makeshift_bleached
bandages_makeshift_boiled
bandana
bandolier_pistol
bandolier_rifle
bandolier_shotgun
bandolier_wrist
basket
bastsandals
battery_ups
battletorch
bead_bracelet
bead_necklace
beans_cooked
beansnrice
bearing
beartrap
bee_balm_tea
beet_syrup
beret_wool
bholster
bigback
bigun
bike_basket
bikini_bottom
bikini_top
bikini_top_fur
bikini_top_leather
bindle
bipod
bipod_mod
birchbark_funnel
birdfood
biscuit
blackjack
blade
blade from steel
blade_scythe
blanket
blazer
blindfold
blindfold from_tape
blt
blun_flechette
blun_shot
blun_shot using_big_scrap
blun_slug
blun_slug using_lead
blunderbuss
board_trap
board_trap use_nailboards
boat_board
boiled_egg
bolas
bologna
bolt_crude
bolt_makeshift
bolt_metal
bolt_simple_small_game
bolt_simple_wood
bolt_wood
bolt_wood_bodkin
bolt_wood_small_game
boltcutters
bone_flute
bone_glue
bone_plate
bookplate
boots
boots_acidchitin
boots_chitin
boots_fsurvivor
boots_fur
boots_h20survivor
boots_hsurvivor
boots_larmor
boots_lsurvivor
boots_scrap
boots_survivor
boots_winter
boots_wsurvivor
boots_xlsurvivor
bootsheath
bootstrap
bottle_metal
bottle_plastic
bottle_plastic_small
bottle_suppressor
bottle_twoliter
bow_sight
bow_sight_pin
bow_sling
bow_stabilizer
bowl_clay
bowl_plastic
bowling_axe
boxer_briefs
boxer_shorts
boxpack
boy_shorts
bp_shot_scrap
bra
brain_cooked
brandy
brass_catcher
bratwurst_sausage
brazier
bread
brew_fruit_wine
brew_mead
brew_milk_curdled
brew_mycus_wine
brew_vinegar
brew_vodka
brick
brick_kiln
briefcase_smg
briefs
brioche
broth
broth canned
broth jarred
broth jarred_3l
broth_bone
broth_bone canned
broth_bone jarred
broth_bone jarred_3l
bscabbard
bucket
buckwheat_cooked
bullwhip
bundle_leather
bundle_rag
bundle_wool
bwirebat
cable
cac2powder
cake2
caltrops
caltrops from wire
caltrops_glass
camera_control
can_beans
can_beans jarred
can_beans jarred_3l
can_bomb
can_chowder
can_coconut
can_medium_unsealed
can_sealer
can_tomato
can_tomato jarred
can_tomato jarred_3l
candle
canister_empty
canister_goo
canned_liver
canned_liver jarred
canteen
canteen_wood
carbine_flintlock
carbine_flintlock_double
carbine_flintlock_double from_antiques
carding_paddles
cargo_aisle
cargo_lock
cargo_rack
catfood
catfood canned
catfood jarred
catfood jarred_3l
cattlefodder
chai_tea
chain
chainmail_hauberk
chainmail_suit
chainmail_suit hauberk
chaps_leather
char_kiln
char_purifier
charcoal_cooker
cheese_fries
cheese_hard
cheeseburger
chem_acetic_acid
chem_aluminium_powder
chem_aluminium_sulphate
chem_ammonium_nitrate
chem_hydrogen_peroxide
chem_manganese_dioxide
chem_match_head_powder
chem_methanol
chem_methanol from wood
chem_nitric_acid
chem_saltpetre niter
chem_sulphur
chem_sulphuric_acid
chem_thermite
chem_zinc_powder
chemical_thrower
chestnut_roasted
chestpouch
chestrig
chestwrap
chestwrap_fur
chestwrap_leather
chestwrap_wool
chicken_cage
chicory_coffee
chilidogs
chilly-p
chilly-p with_from_food_processor
chipper
chips2
chisel
chitin_plate
choc_pancakes
choc_waffles
choco_coffee_beans
chocpretzels
circsaw_blade
claw_bar
clay_canister
clay_hydria
clay_pot
clay_pot_flower
clay_quern
clay_teapot
clay_watercont
cloak
cloak_fur
cloak_leather
cloak_wool
clogs
coat_fur
coat_gut
coat_rain
coffee
coffee_raw
coffee_raw_kentucky
coffee_substitute
coffee_syrup
cola_meth
combatnail
combatsaw_off
compositebow
compositecrossbow
con_milk
con_milk canned
con_milk jarred
con_milk jarred_3l
con_mix
concrete
cooked_cattail_stalk
cooked_dinner
cooked_pumpkin
cookies
cooking_oil
cooking_oil2
copper_ax
copper_knife
cordage_36
cordage_6
cornbread
corndogs_cooked
cornmeal
cornmeal mortar
cornmeal with_from_food_processor
cotton_ball
cotton_ball by hand
cowboy_hat
cowl_wool
cracklins
crackpipe
crafted_suppressor
cranberry_juice
crispycran
crossbow_trap
crowbar
crucible_clay
crude_firestarter
crude_picklock
cs_lajatang_off
cu_pipe
cudgel
cuirass_scrap
cured_hide
cured_hide scraped
cured_pelt
curry_meat
curry_veggy
currywurst
dandelion_cooked
dandelion_fried
decorative_wreath
dehydrator
deluxe_beans
deluxe_beansnrice
deluxe_eggs
deluxe_eggs from_powder
deluxe_rice
deluxe_veggy_beans
deluxe_veggy_beansnrice
deluxe_veggy_rice
digging_stick
disincotton_ball
disinfectant_makeshift
disinrag
distaff_spindle
diveknife
dogfood
dogfood canned
dogfood jarred
dogfood jarred_3l
donut_holes
doublespeargun
down_blanket
down_mattress
down_pillow
dragonskin
drink_beeknees
drink_boozeberry
drink_hobo
drink_kalimotxo
drink_martini
drink_rumcola
drink_screwdriver
drink_sewerbrew
drink_strawberry_surprise
drink_wild_apple
drink_wsour
drinking_hat
dry_beans
dry_beans frozen_ingredients
dry_fish
dry_fish frozen_ingredients
dry_fruit
dry_fruit frozen_ingredients
dry_lentils
dry_lentils frozen_ingredients
dry_meat
dry_meat frozen_ingredients
dry_meat_tainted
dry_meat_tainted frozen_ingredients
dry_mushroom
dry_mushroom frozen_ingredients
dry_tofu
dry_tofu frozen_ingredients
dry_veggy
dry_veggy frozen_ingredients
dry_veggy_tainted
dry_veggy_tainted frozen_ingredients
duffelbag
duster
duster_fur
duster_leather
duster_survivor
e_combatsaw_off
e_tool
earthbag
ecs_lajatang_off
edamame_roasted
eggs_ferment
elbow_pads
electrolysis_kit
electronics_controls
element
fal_makeshiftmag
felt_patch
fencing_epee_sharpened
fencing_foil_sharpened
fencing_sabre_sharpened
fertilizer_bomb
fertilizer_liquid
fertilizer_liquid simple
fiber_mat
fiddlehead_boiled
fiddlehead_sauteed from_boiled
fiddlehead_sauteed from_raw
filter_suppressor
fire_brick
fire_drill
fire_drill_large
firecracker
firecracker_pack
fish_canned
fish_canned jarred
fish_canned jarred_3l
fish_cooked
fish_fried
fish_pickled jarred
fish_pickled jarred_3l
fish_sandwich
fish_smoked
fishing_hook_basic
fishing_hook_bone
fishing_rod_basic
fishspear
flask_hip
flask_yeast
flatbread
flintlock_ammo
flintlock_pouch
flintlock_shot
flotation_vest_ms
flour
flour mortar
flour with_from_food_processor
foldframe
folding_basket
folding_stock
foldwoodframe
food_processor
foot_crank
footrags
footrags_fur
footrags_leather
footrags_wool
forge
fragment_bomb
frame
frame_wood
frame_wood_light
frenchtoast
fresh_fries
fried_seeds
fried_spam
fruit_cooked
fruit_leather
fruit_pancakes
fruit_waffles
fsurvivor_suit
fuel_bunker
fungicidalbomb_makeshift
funnel
fur_blanket
fur_rollmat
fuse
fuse with gunpowder
fuse with paper & gunpowder
g_shovel
g3_makeshiftmag
gambeson
gasbomb_makeshift
gasfilter_m
gasfilter_s
gasoline_cooker
gasoline_lantern
gauntlets_acidchitin
gauntlets_chitin
gauntlets_larmor
gin from_mash
glass_macuahuitl
glass_sheet
glass_shiv
glasses_safety
gloves_bag
gloves_fingerless
gloves_fingerless from patches
gloves_fingerless_mod
gloves_fsurvivor
gloves_fur
gloves_h20survivor
gloves_hsurvivor
gloves_leather
gloves_light
gloves_lsurvivor
gloves_survivor
gloves_survivor_fingerless
gloves_wool
gloves_wraps
gloves_wraps_fur
gloves_wraps_leather
gloves_wraps_wool
gloves_wsurvivor
gloves_xlsurvivor
goggles_swim
goggles_welding
granola
greatcoat
grenade_pouch
grenadebandolier
grip
grip_hook
grip_mod
h20survivor_suit
hacksaw
hamburger
hammer
hammer_sledge
hand_axe
hand_drill
hand_paddles
hand_rims
handrolled_cig
hardtack
hat_boonie
hat_cotton
hat_fur
hat_hard
hat_hard_hooded
hat_hunting
hat_knit
hat_noise_cancelling
hatchet
hazelnut_roasted
hdframe
heavy_rail_rifle
helmet_acidchitin
helmet_chitin
helmet_hsurvivor
helmet_larmor
helmet_nomad
helmet_scavenger
helmet_scrap
helmet_survivor
helmet_xlsurvivor
helsing
herbal_tea
hickory_nut_roasted
hide_bag
hide_tainted_bag
hinge
hk417_makeshiftmag
hobo_stove
hoe
hollow_cane
holster
holy_symbol_wood
homemade_burrito
homewrecker
honey_bottled
honey_bottled from_honey_glassed
honey_glassed
honey_gold
hood_fsurvivor
hood_h20survivor
hood_lsurvivor
hood_rain
hood_survivor
hood_wsurvivor
hood_xlsurvivor
hoodie
hot_chocolate
hotdogs_campfire
hotdogs_cooked
house_coat
hstomach_boiled
hsurvivor_suit
human_cooked
human_lard
human_tallow
humble_pie
i_staff
iceaxe
icecream
icecream_candy
icecream_custard
icecream_fruit
icecream_sorbet
icecream_yogurt
iggaak
insecticidalbomb_makeshift
insta_salad
irish_coffee
it_battery_mount
jacket_leather
jacket_leather_mod
jam_fruit
jam_fruit jarred
jam_fruit jarred_3L
javelin
javelin_bag
javelin_iron
jerky
jerrycan
jerrycan_big
jerrycan_big welder
jerrypack
johnnycake
joint
jug_clay
jug_plastic
jug_plastic plastic-mod
juice
juice fresh
jumper_cable
jumper_cable_heavy
keffiyeh
keg_steel
ketchup
kevlar_armor_horse
kiln
kiln_full
kitchen_unit
knee_pads
knife_bread
knife_butcher
knife_carving
knife_chef
knife_combat_mod
knife_folding
knife_meat_cleaver
knife_paring
knife_rambo
knife_steak
knife_vegetable_cleaver
knit_scarf
knitting_needles
knuckle_nail
knuckle_steel
kompot
kompot jarred
kompot jarred_3l
l_car_223
l_dsr_223
l_lmg_223
l_mbr_223
lajatang
lamp_oil
lard
large_space_heater
large_stomach_sealed
large_tent_kit
lasagne_raw
laser_cannon
launcher_simple
lawn_dart
leather
leather_belt
leather_funnel
leather_harness_dog from_scratch
leather_pouch
leather_tarp
leatherbone_armor_horse from_leatherarmor
leatherbone_harness_dog from_leatherharness
leatherbone_harness_dog from_scratch
leathersandals
leg_splint
leg_warmers
leg_warmers_f
leg_xlsplint
leggings
legguard_bronze
legguard_metal
legguard_paper
legguard_scrap
legpouch
legpouch_large
legrig
lemonade
lemonade from_mix
lentils_cooked
leotard
livestock_carrier
livestock_carrier repurpose_cargo_rack
lobotomizer
loincloth
loincloth_fur
loincloth_leather
loincloth_wool
long_island
long_knit_scarf
long_patchwork_scarf
long_underpants
long_undertop
long_undertop_sleeveless
long_undertop_sleeveless cutting
longbow
longshirt
lsurvivor_armor
lsurvivor_pants
lsurvivor_suit
lutefisk
lye
lye_powder from_lye
m_fishspear
m14_makeshiftmag
m203_mod
m2browning_sawn
m320
m320_mod_mod
macaroni_cooked
macaroni_helper
macaroni_raw
machete
magazine_battery_heavy_mod
magazine_battery_light_mod
magazine_battery_medium_mod
magazine_battery_mod
magnifying_glass
makeshift_axe
makeshift_bayonet
makeshift_crowbar
makeshift_funnel
makeshift_grenade
makeshift_halberd
makeshift_hammer
makeshift_knapsack
makeshift_knife
makeshift_machete
makeshift_sap
makeshift_scythe_war
makeshift_sling
marble
mask_fsurvivor
mask_fsurvivorxl
mask_h20survivor
mask_h20survivorxl
mask_hsurvivor
mask_lsurvivor
mask_rioter
mask_ski
mask_survivor
mask_survivorxl
mask_wsurvivor
mask_wsurvivorxl
masterkey_mod
material_cement
material_quicklime
mayonnaise
meal_bone
meal_bone mortar
meal_bone with_from_food_processor
meal_bone_tainted
meal_bone_tainted mortar
meal_bone_tainted with_from_food_processor
meal_chitin_piece
meal_chitin_piece mortar
meal_chitin_piece with_from_food_processor
meat_aspic
meat_canned
meat_canned jarred
meat_canned jarred_3l
meat_cooked
meat_pickled jarred
meat_pickled jarred_3l
meat_salted vacuum_packed
meat_smoked
mess_tin
metal_butcher_rack
metal_funnel
metal_smoking_rack
metal_smoother
metal_tank
metal_tank_little
milk
milk_coffee
milk_cream
milk_cream_rising
milk_powder
milk_powder frozen_ingredients
milk_reconstituted from_condensed
milk_reconstituted from_powder
milk_tea
milkshake
milkshake_deluxe
miner_hat
minispeargun
mirror from_steel
misc_repairkit
mittens
mixed_alcohol_strong
mixed_alcohol_weak
mocassins
modularvest
modularvestceramic
modularvesthard
modularvestkevlar
modularveststeel
modularvestsuper
mold_plastic
molotov
mop
morel_cooked
morel_fried
mortar_adobe
mortar_build
mortar_pestle
mosin44
mosin44_ebr
mosin91_30
mosin91_30_ebr
mountable_heater
mounted_spare_tire
muffler
mugwort_oil
mushroom_cooked
mutagen_jabberblood
mutant_human_cooked
mutant_meat_cooked
muzzle_brake_mod
nachos
nachosc
nachosm
nachosmc
nail
nail_bomb
nailbat
nailboard
nailmag
nailrifle
needle_bone
needle_curved
needle_wood
net
noise_emitter radio-mod
noodles_fast
nopalitos
oatmeal
oatmeal mortar
oatmeal with_food_processor
oatmeal_cooked
oatmeal_deluxe
offal_canned
offal_canned jarred
offal_canned jarred_3l
offal_pickled jarred
offset_sight_rail_mod
offset_sights_mod
oil_cooker
oil_lamp
oj
omnicamera from-cameras
onion_rings
paint_brush
pallet_lifter
pancakes
panties
pants_fur
pants_leather
pants_survivor
paper
pastaextruder
patchwork_scarf
peacoat
peanutbutter
peanutbutter_imitation
pebble
pebble_clay
pecan_roasted
pelmeni
pemmican
pet_carrier_wooden
petpack
pickaxe
pickles_ferment
pie
pie_maple
pie_meat
pie_veggy
pillow
pilot_light
pine_nuts
pipe
pipe_combination_gun
pipe_double_shotgun
pipe_shotgun
pipebomb
pistachio_roasted
pistol_bayonet
pistol_flintlock
pistol_grip
pistol_stock
pitchfork
plant_fibre
plastic_boat_hull
plastic_chunk
plastic_chunk from_cash_cards
plastic_chunk from_plastic_bags
plastic_jack_o_lantern
plastic_shopping_bag
platinum_grille
pliers
pneumatic_shotgun
pointy_stick
poncho
poncho knitted
popcorn
popcorn2
pot
pot_canning
pot_copper
pot_helmet
pot_makeshift
pot_makeshift_copper
pot_xlhelmet
potato_baked
powder_eggs
powder_eggs frozen_ingredients
press_dowel
pressurized_tank_chem
primitive_adze
primitive_axe
primitive_hammer
primitive_knife
primitive_shovel
protein_drink
protein_powder
protein_powder with_from_food_processor
protein_shake
punch_dagger
q_solarpack
q_staff
quesadilla_cheese
quiver
quiver_birchbark
quiver_large
quiver_large_birchbark
radio_mod
rag
rag knitting
ragpouch
railroad_track_small
raw_butter
razor_shaving
rebar
rebar_plate
rebar_rail
rebar_rifle
rebreather_xl mod_existing
recoil_stock
rehydrated_fish
rehydrated_fruit
rehydrated_meat
rehydrated_veggy
reinforced_glass_sheet
reinforced_solar_panel
remotevehcontrol
revolver_shotgun
rice_cooked
rifle_22
rifle_223
rifle_3006
rifle_308
rifle_38
rifle_40
rifle_44
rifle_45
rifle_9mm
rifle_flintlock
rifle_scope_mod
rm121aux_mod
roasted_coffee_bean
rock_quern
rock_sock
rolling_paper
rope_30
rope_6 from_cloth
rope_6 from_string
rope_makeshift_30
rope_makeshift_6
rosin
royal_beef
rubber_armor_horse
rubber_armor_horse from_scratch
rubber_harness_dog
rubber_harness_dog from_scratch
ruger_makeshiftmag
saddlebag
sail
salsify_baked
salt
salt from_hickory
salt from_mineral
salt from_salt_water
salt_water
salted_fish
salted_fish vacuum_packed
sandbag
sandwich_cheese
sandwich_cheese_grilled
sandwich_cucumber
sandwich_deluxe
sandwich_honey
sandwich_jam
sandwich_pb
sandwich_pbh
sandwich_pbj
sandwich_pbm
sandwich_sauce
sandwich_t
sandwich_veggy
sauce_red
sauce_red canned
sauce_red jarred
sauce_red jarred_3l
sauerkraut_ferment
sauerkraut_onions
sausage
sausage_cooked
sausage_raw
sausage_wasteland
sausage_wasteland_raw
sausagegravy
saw
scabbard
scarf
scarf_fur
scarf_fur_long
scarf_fur_long merge_scarves
scarf_long
scarh_makeshiftmag
scarh_makeshiftmag conversion
scarhmag
scarhmag_30rd
scissors
scrambled_eggs
scrambled_eggs from_powder
scrap_bronze
scrap_copper
screwdriver
screwdriver_set forged
scythe
scythe_war forge
seasoning_salt
seat
seat_leather
seed_barley
seed_beans
seed_bee_balm
seed_blackberries
seed_blueberries
seed_buckwheat
seed_cattail
seed_chamomile
seed_chicory
seed_chili_pepper
seed_corn
seed_cranberries
seed_cucumber
seed_dogbane
seed_elderberries
seed_garlic
seed_grapes
seed_huckleberries
seed_lentils
seed_mugwort
seed_mulberries
seed_mushroom
seed_mushroom_morel
seed_oats
seed_potato_raw
seed_pumpkin
seed_raspberries
seed_raw_dandelion
seed_rhubarb
seed_rose
seed_salsify_raw
seed_strawberries
seed_sugar_beet
seed_sunflower
seed_thyme
seed_tomato
seed_veggy_wild
seed_wheat
seed_wild_herbs
seed_wildcarrot
seed_zucchini
selfbow
sewing_kit
shark_suit_faraday
sheath
sheet
sheet_metal
sheet_metal welding
sheet_metal_small
shelter_kit
shelter_kit repair
shillelagh
shillelagh_weighted
shoes_birchbark
sholster
shortbow
shorts
shorts_cargo
shorts_cargo from_pants
shorts_denim
shot_scrap
shotbelt_20
shotcanister_bearing
shotcanister_flechette
shotcanister_pebble
shotcanister_scrap
shotgun_trap
shoulder_strap
shovel
sickle
sieve_primitive
sieve_steel
skewer_bone
sleeping_bag_fur_roll
sleeping_bag_roll
sleeveless_duster
sleeveless_duster from_duster
sleeveless_duster_faux_fur from_duster_faux_fur
sleeveless_duster_fur
sleeveless_duster_fur from_duster_fur
sleeveless_duster_leather
sleeveless_duster_leather from_duster_leather
sleeveless_duster_survivor
sleeveless_duster_survivor from_duster_survivor
sleeveless_trenchcoat
sleeveless_trenchcoat from_trenchcoat
sleeveless_trenchcoat_faux_fur from_trenchcoat_faux_fur
sleeveless_trenchcoat_fur
sleeveless_trenchcoat_fur from_trenchcoat_fur
sleeveless_trenchcoat_leather
sleeveless_trenchcoat_leather from_trenchcoat_leather
sleeveless_trenchcoat_survivor
sleeveless_trenchcoat_survivor from_trenchcoat_survivor
sleeveless_tunic
sleeveless_tunic cutting
sling
sling cord
slingshot
sloppyjoe
small_hstomach_boiled
small_space_heater
small_stomach_boiled
smg_40_mag
smg_45_mag
smokebomb
smores
soap
soap_flakes
soap_flakes fast_cut
soapy_water
sockmitts
socks
socks_ankle
socks_bag
socks_wool
soft_adobe_brick
solar_panel
solarpack
solder_wire
soldering_iron
soup_fish
soup_fish canned
soup_fish jarred
soup_fish jarred_3l
soup_meat
soup_meat canned
soup_meat jarred
soup_meat jarred_3l
soup_mushroom
soup_mushroom canned
soup_mushroom jarred
soup_mushroom jarred_3l
soup_veggy
soup_veggy canned
soup_veggy jarred
soup_veggy jarred_3l
soup_woods
soup_woods canned
soup_woods jarred
soup_woods jarred_3l
sourdough_bread
sourdough_split
sourdough_young
soy_milk
soy_nuts
spaghetti_cooked
spaghetti_raw
spear_copper
spear_forked
spear_homemade_halfpike
spear_knife
spear_knife_superior
spear_knife_superior from simple version
spear_pipe
spear_rebar
spear_spike
spear_steel
spear_survivor
spear_wood
speargun
spearsling
spezi
spike
sponge_cake
sports_bra
spring
spring_plate
stabilizer_mod
staff_sling
starch
starch from_fibrous_stuff
steel_armor
steel_chunk
steel_grille
steel_lump
steel_pan
steel_plate
steel_rail
stepladder
stockings
stockings_tent_arms
stockings_tent_arms from_stockings
stockings_tent_legs
stockings_tent_legs from_stockings
stomach_boiled
stomach_sealed
stone_pouch
straw_basket
straw_hat
straw_sandals
string_36
string_6
sugar
sugar from_sweets
sugar_fried
sundress
superglue
suppressor
surv_carbine_223
surv_hand_cannon
surv_six_shooter
survival_marker
survivor_belt
survivor_belt_notools
survivor_duffel_bag
survivor_goggles
survivor_hairtrimmer
survivor_light
survivor_machete
survivor_mess_kit
survivor_pack
survivor_rucksack
survivor_runner_pack
survivor_scope
survivor_shavingkit
survivor_suit
survivor_vest
survivor223mag
survivor9mm_mag
swag_bag
swage
sweater
sweet_water
switchblade
sword_bayonet_mod
sword_crude
sword_nail
sword_wood
syrup
taco
tacvest
taint_tornado
tallow
tallow_tainted
tank_top
tanned_hide
tanning_hide
tanning_pelt
tarp_raincatcher
tea
teapot
tearer
tent_kit
thermal_shirt
thompson_makeshiftmag
thread
throwing_axe
throwing_knife
throwing_stick
thyme_oil
tihar
tinder
tinderbox
tinfoil_hat
toasterpastry
tobacco
tofu_rice
tongs
tool_belt
toolbox
toolbox_workshop
torch
torch pine
torso_bandolier_shotgun
tortilla_corn
tourist_table
towel
towel knitting
towel_hanger
travelpack
tree_spile
trenchcoat
trenchcoat_fur
trenchcoat_leather
trenchcoat_survivor
tricorne
triple_launcher_simple
tripwire
tshirt
tunic
tunic_rag
turban
turret_controls
u_shotgun_mod
ugl_buttstock
ump45_makeshiftmag
under_armor
under_armor_shorts
undershirt
unitard
UPS_off
V8
V8 jarred
vacutainer
vambrace_larmor
veggy_aspic
veggy_canned
veggy_canned jarred
veggy_canned jarred_3l
veggy_cooked
veggy_pickled jarred
veggy_pickled jarred_3l
veggy_salad
veggy_salted vacuum_packed
veggy_wild_cooked
vest_leather
vest_leather from_patches
vest_leather_mod
vh_autoclave
vine_30
vinegar
vodka from_ethanol
vodka from_wash
w_table
waffleiron
waffles
walnut_roasted
wash_kit
washboard
wastebread
water_clean
water_clean using_water_purifier
water_faucet
water_mill
water_wheel
waterproof_gunmod
waterskin
waterskin2
waterskin3
wearable_atomic_light
wearable_light
welder_crude
welding_mask_crude
well_pump
wheel_caster
wheel_metal
wheel_mount_light
wheel_rail_small_pair
wheel_wheelchair
wheel_wood
wheel_wood_b
wind_mill
wind_turbine
wire
wire_barbed
wire_mesh
wood_beam from logs
wood_panel from nailed planks
wood_panel from wooden beams
wood_panel from wooden sheets
wood_plate
wood_smoother
wooden_barrel
wooden_bead
wool_hoodie
wool_suit
workbench
wrench
wsurvivor_suit
XL_holster
xl_water_wheel
xl_wind_turbine
xlframe
xlhsurvivor_suit
xlkevlar
xlsurvivor_suit
zinc_metal

@scrotty
Copy link
Contributor

scrotty commented Jan 16, 2020

This could also open the door for more bookshelves (which could themselves provide crafting bonuses for using as book storage). [Apologies if this is already available in game]

@I-am-Erk
Copy link
Contributor Author

Wow, it's worse than I thought. By far.

@I-am-Erk
Copy link
Contributor Author

I am working on a spreadsheet that reviews all the items currently set to autolearn, suggests a proficiency to assign them to (for later), and offers a rationale for why they shouldn't be autolearned, if it's not obvious. I will convert the simple part of the results into a checklist for this issue later, and that should make it easier for people to start converting recipes and adding recipe books

@I-am-Erk
Copy link
Contributor Author

I-am-Erk commented Jan 16, 2020

Putting it here so I don't forget: the book 101 crafts for beginners, while humorous, needs to be broken up. So does the DIY compendium.

@l29ah
Copy link
Contributor

l29ah commented Jan 17, 2020

I'd suggest #27312 to be addressed first.

@I-am-Erk
Copy link
Contributor Author

Balancing for people who choose particular crippling negative traits is definitely not on the radar here.

@Inglonias
Copy link
Contributor

this is also a great opportunity to diversify available books

@I-am-Erk
Copy link
Contributor Author

Yeah, on my review of recipes, with recipe books added in, I think we'll probably wind up with a ton of new books, maybe five to ten times as many. Fewer recipes per book and hundreds of new recipes to add.

It should do a lot to reduce the ability to quickly grind up skills

@TechyBen
Copy link
Contributor

I think we need a "knowledgeable" trait, that "auto learns recipes", to counterbalance this. ;)
Well, I'm just wondering how this affects gameplay. I agree with it. Just wondering what unintended or intended consequences it has.

@Inglonias
Copy link
Contributor

I don't know how plausible something like that trait would be, but a "Tinkerer" trait that has a better chance of learning recipes via disassembly might be easier to implement and accomplish much the same goal.

@I-am-Erk
Copy link
Contributor Author

The major negative gameplay impact is going to be that innawoods characters are totally borked for a bit until we figure out a solution. I might make a mod that keeps these autolearn, for that reason, until figuring it out is possible

@GGgatherer
Copy link
Contributor

Maybe some professions - like churl, blacksmith, electrician and so on - should have access to a broader recipes variety? As in they should know them from the start if they have high enough skills for that, and probably even some recipes which require +1/+2 skills from what they can do (obviously uncraftable until skills are raised).

@I-am-Erk
Copy link
Contributor Author

That will require a proficiency system, ie. subskills that connect similar recipes together, and that's a system for another day. It's desirable, but not part of this issue

@TechyBen
Copy link
Contributor

The major negative gameplay impact is going to be that innawoods characters are totally borked for a bit until we figure out a solution. I might make a mod that keeps these autolearn, for that reason, until figuring it out is possible

Yeah. I totally understand that it's not the main gameplay type/loop. But it does have some relevancy in that, it still needs balancing to some degree. Just to make sure obvious/needed (lore or gameplay)/simple recipes are not accidentally gated off. Inna woods totally won't be making a laser pistol. But if a "helicopter crash" survivor, should have no trouble making a makeshift wind generator and night light out of spares from the crash (motor + light etc). But as you say, a lot of the recipe limits is not as simple as "what level/skill is this", but more "can someone learn this on their own/in a small survivor community?" Some things/chemicals/electrics took decades with teams/industries. Even though we do take it for granted now.

So I understand it's hard to balance, and it's great it's under careful consideration to the changes.

@Barhandar
Copy link
Contributor

I disagree with sauerkraut not being autolearned, along with anything else that can be learnt by letting something spoil or otherwise not requiring any specific knowledge (sauerkraut, sourdough, cider/wine/any other fruit alcohols that can be made from the yeast present on fruit itself, charcoal kiln - any campfire is going to make charcoal, kilns just make it much more efficient - et cetera).

And I don't think autolearn = NONE, GAMESTART, ALWAYS would need proficiency/subskill system, only autolearning new recipes on skill-up if you had some amount of that skill on starting the game would. And I don't think it even makes all that much sense, a blacksmith wouldn't be any better equipped to figure out how to smith something they don't know already than a layman of equal skill, and hence would have to be taught.

@kevingranade
Copy link
Member

Sauerkraut fermentation is very much not a matter of, "letting it go bad", if you do it wrong you can produce something poisonous. Same with sourdough and fruit fermentation.
With a campfire as charcoal production, yes you can literally build a campfire and get a minuscule amount of charcoal out if it, but that has nothing to do with the process for making a charcoal kiln.

@kwl01skz
Copy link
Contributor

When you have enough knowledge and have a preliminary idea of ​​what you want, you should be able to try to make it, although you may experience a lot of failures. For example, when I have "strips" and " adhesives", I should naturally think of making "tape".
Proposal:
If player can make something with reference books at Lv3. They can make the same thing at Lv5 through experiments and failed attempts, without the help of books.

@I-am-Erk
Copy link
Contributor Author

It amuses me how much of a demonstration of my point it is that someone asserted sauerkraut production is just a matter of letting cabbage go bad.

@KorGgenT KorGgenT added this to Proposed blockers in 0.F Release Planning Jul 29, 2020
@I-am-Erk I-am-Erk removed this from Proposed blockers in 0.F Release Planning Jul 30, 2020
@NicholasDM
Copy link

NicholasDM commented Sep 27, 2020

https://www.reddit.com/r/cataclysmdda/comments/j0ih2l/a_possible_solution_to_autolearned_recipes/

This is a proposal I'm now working on that would heavily mitigate a lot of the autolearning concerns.

@I-am-Erk
Copy link
Contributor Author

I-am-Erk commented Sep 28, 2020

Your reddit post is similar to my own thoughts, but I don't really want the discussion to fade into reddit.

Basically, I want a few things.

Proficiency books

  • The ability for a book to provide some of the benefits of a proficiency, eg. "counts_as_prof": { "proficiency": "leatherworking", "value": 0.5 ] meaning having this book nearby grants you half of the effect of having a leatherworking proficiency. Multiple books would add together but not perfectly, we'd use sum of squares (so 1total proficiency value = sqrt(value² of each book that grants the proficiency)`) like we do for morale sources.
  • The above would also allow books to grant you proficiencies you can't learn normally. For example, if "basic metalworking" is a proficiency you can't learn from just doing it, but you have a book that grants 0.1 of the effect of having the proficiency, you can now do metalworking recipes and learn metalworking using that book as a (poor quality) reference.

Autolearn recipes by proficiency

  • Some recipes should only autolearn if you meet proficiency requirements. This should include a list of proficiencies required and a list of proficiencies you need x number of. EG:
"autolearn_requirements": {
  "always_required": [ "prof_blacksmithing" ],
  "flexible_requirements": [ "prof_leatherworking", "prof_polymerworking", "prof_plasticworking" ],
  "number_of_flexibles_needed": 2
}

In this example, you need blacksmithing and then two of the subsequent listed proficiencies to be able to autolearn this recipe.

Recipe book changes

  • I firmly believe we need to do the deeply unpleasant JSON churn project of moving recipe definitions to a new JSON recipelist object, and allowing books to call that list. In this way we can do a few things:
  • Easily track and audit which books are granting which recipes and which books have too much in them
  • Allow recipebooks to vary: we could have recipe lists which randomize, so a given magazine has something like three recipes randomly selected from recipelist_cooking_magazine
  • Additionally, recipe books should be able to require certain proficiencies before you can use recipes in them, just like they require skill levels. That would be best for books that aren't "how to" guides, but rather would contain a bit of information that could be worked out into a recipe by a sufficiently knowledgeable reader.
  • We could consider recipebooks that grant all recipes belonging to a single proficiency. I thought about that initially but now that proficiencies are shaking out as they are, I think this would just muddy the waters. It would be better to maintain explicit recipe lists and do it that way.

@kevingranade kevingranade added this to Delayed blockers (for 0.G) in 0.F Release Planning Dec 14, 2020
@kevingranade kevingranade removed this from the 0.F milestone Dec 14, 2020
@actual-nh
Copy link
Contributor

actual-nh commented Dec 15, 2020

When you have enough knowledge and have a preliminary idea of ​​what you want, you should be able to try to make it, although you may experience a lot of failures. For example, when I have "strips" and " adhesives", I should naturally think of making "tape".

I agree; it makes sense for someone to autolearn a recipe at a higher skill level than needed to do the recipe (which should also be available in books).

For instance, I can fix some basic cooking recipes on my own - meaning they require cooking something like 1-2 - if I have a recipe book. My spouse, OTOH, not only doesn't need a recipe book for such basic recipes (and in-game should have them already learned), but is quite capable of creating (delicious!) variants "on the fly" (which might be written as a recipe someplace - but not one my spouse has ever read). Is this a high cooking skill "only", or a proficiency that enabled my spouse to autolearn these recipes? About the only thing I can think of for this case would be a proficiency of vegetarian_cooking_but_not_baking. This would be rather broad, IMHO; broad enough that just it should not cause autolearning of every recipe one is capable of following in a recipe book. (It plus high cooking skill should result in autolearning all of the easier recipes. For more complex recipes, my spouse will typically follow a (written) recipe the first time, then start trying variations.)

If player can make something with reference books at Lv3. They can make the same thing at Lv5 through experiments and failed attempts, without the help of books.

Add to this some combination of (higher) skill level and proficiency at which experimentation won't be needed - at least for up to some (low) difficulty of recipe. For your example above, someone at Lv5 will only autolearn the recipe after they succeed (possibly more than once). Someone at Lv9 with an appropriate proficiency may have it autolearned automatically.

@aahue1889
Copy link
Contributor

aahue1889 commented Feb 25, 2023

This issue looks like its getting stale; so to bump it a bit

Can the folks here confirm if this is the work that we need to do? Or if there is something that can be done to make this process more streamlined?

---- Step 1 - Identify Recipes to Group into a Book

So to go over what must be done in order to appropriately make these changes:

First:
Identify the Recipes that have autolearn:

image

I chose these 7 recipes that require knapping proficiency and skill fabrication

----- Step 2 - Create Book

create a book that is going to contain these recipes

image

------ Step 3 - Edit Recipe JSON files and make them Associated to Book

Add and delete attributes in the 7 Recipe Items

image

---- Step 4 - Test Verification

If your trying to test: all you need to do is confirm that the Recipe isn’t magically something you know unless your around the book

image


The bigger question that formed upon me naively approaching this work; We need to come up with some documentation on how we plan on grouping the Recipes Together for a book. And divvy out the work.

@anothersimulacrum
Copy link
Contributor

Yes, those are the appropriate steps. Grouping is the larger question.

@DeltaR9A2
Copy link

An idea I had for helping with availability of recipes: With certain skill levels, the player could autolearn recipes to craft a recipe book. Like the player should probably always autolearn something like pointy stick, and at the same time could autolearn a recipe craft to "Improvised Spear Designs" which would result in a hand written notebook with recipes for things like knife spears. It could require paper and pen/pencil/etc. Or for innawoods like... charcoal and birch bark? Whatever strikes the right combination of fun/realistic/balanced.

I would really love any change that reduces the number of recipes in the crafting interface. Right now I find it completely unmanageable; only the excellent search function makes it usable. I've been experimenting on my own with generating mods to blacklist things or disable autolearn, but I don't have much experience modding the game and haven't had much success so far.

@I-am-Erk
Copy link
Contributor Author

I-am-Erk commented Jan 5, 2024

I think, while this issue is going to be a permanently ongoing one, it's save to close it. The situation is nowhere near as bad as it was when I opened this, and there's never going to be a point where it's "finished". Some of the more complex ideas for improving autolearn should really be separate issues of their own as they'll be lost if they're just comments in here.

@I-am-Erk I-am-Erk closed this as completed Jan 5, 2024
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 Game: Balance Balancing of (existing) in-game features. Good First Issue This is a good first issue for a new contributor Items / Item Actions / Item Qualities Items and how they work and interact [JSON] Changes (can be) made in JSON
Projects
No open projects
0.F Release Planning
  
Delayed blockers (for 0.G)
Development

No branches or pull requests