SteveTownsend / SmartHarvestSE

AutoHarvest 2 Skyrim SE mod ported to CommonLibSSE
GNU General Public License v3.0
18 stars 7 forks source link

producer ingredient pickup logic error #388

Open SteveTownsend opened 2 years ago

SteveTownsend commented 2 years ago

Nexus report

I'm in the process of making a very small mod, modifying the Salmon to provide Salmon Roe when collected. I've gone about doing this by modifying the FormList to include the Salmon Roe alchemy ingredient.

After I load up my mod, your mod is no longer collecting the Salmon as previously. Now I suspect this is because there is a formlist check somewhere under the hood, and because both FoodRaw and Alchemy ingredient is a part of the formlist, Smart Harvest is unsure how to handle it.

Would my assumptions be correct? If this is the case, do you know of how best I could modify my mod to play nicely with yours? Thanks

EDIT: So on a whim, I decided to remove the reference to the nonIngredientLootable (where I added the Salmon Roe) previously, and tried re-enabling the addition of the Salmon Roe to the lootable. This seems to have allowed Salmon to be harvested by your mod for Salmon Roe (at the cost of the Salmon Meat, which I deem acceptable).

It still doesn't explain why having both Lootable and NonIngredientLootable prevents Salmon Roe being added, and why your mod doesn't know how to handle multiple items within a single FormList.

My response:

The script code that handles startup-time resolution of a critter to a lootable item does not currently support more than one element in nonIngredientLootable. You could argue that in this case, we should just fall back to the lootable if it's present.

SteveTownsend commented 5 months ago

For review in next milestone. This area has been updated for v5.2.0

SteveTownsend commented 4 months ago

review for next

SteveTownsend commented 1 month ago

Clarified report from user regarding CACO clams

I figured out why I keep autoharvesting clams. There's "clam" which is the harvestable shell object. It yields "raw clam". Both are flagged as ingredient when they should be food. They're also separate, so blacklisting raw clam will still harvest the clam shell, resulting in a raw clam still being added to your inventory. This is why blacklisting raw clam will still autoharvest from a clam, but not autoharvest the raw clam as a loose object. I was able to blacklist clam as well, preventing the harvesting of it. However, that also prevents harvesting the occasional pearls they contain. Not sure of that's vanilla or CACO which I have installed. These clams are in Solstheim.

image

image

CACO turns a simple INGR into 'food and optional INGR".