Thorinair / Stardew-Profits

A Stardew Valley crop profits calculator and visualizer. Link: https://thorinair.github.io/Stardew-Profits/
MIT License
153 stars 74 forks source link

Add replant calculations to regrowing plants and fix miscalculation with extra produce plants #64

Closed iDuelZz closed 2 months ago

iDuelZz commented 2 months ago

Added calculations so that one produce per two regrowing plants are used to replenish seeds that were used initially to make them comparable to non regrowing plants.

Additionally extra produce of a crop won´t increase the amount needed to make seeds, increasing their profit ccalculations (e.g. Potato).

I also noticed that the label for "Process & Replant:" was linked to the checkbox of "Pay For Seeds:" so i fixed that too.

Thorinair commented 2 months ago

Hey, I have implemented this on the dev branch, but numbers don't seem to add up. Checking "Process & Replant" should not affect crops which regrow on their own, like Hops, Srawberries, etc, but the profits drop for these crops as well. Can you please have a look at your code and apply a fix for this before I merge it to master? I would appreciate simply submitting a new pull request to dev with an adjustment for this.

iDuelZz commented 2 months ago

Hey thanks for your feedback, it was my intention to make "Process & Replant" affect crops which regrow so that they can be replanted the next year. So it was my expectation that their profits drop sligthly.

If that is not desired i can make another PR without this part.

Thorinair commented 2 months ago

Ah, I understand the intention now. Hmm, how about I add another checkmark for "Save for next year" which gets enabled when reprocess is checked?

Thorinair commented 2 months ago

This option should also be ignored if the calculation is in Greenhouse mode, so there should be no next year processing when Greenhouse is enabled

Thorinair commented 2 months ago

I pushed another commit to dev which includes a new toggle called "Use Next Year". It is internally stored as options.nextyear for your use to implement this! :) It gets automatically disabled when Process is not enabled and/or when Greenhouse season is set.

iDuelZz commented 2 months ago

That sounds good, i will adjust my code accordingly.

How should it behave for normal(non regrowing) crops? As is the calculation leaves one with seeds left for next year.

I would reduce the harvest that are turned into seeds by one, when "Save for next year" is not selected. That would reflect that the last harvest would be used/sold fully.

Thorinair commented 2 months ago

I would make it behave the same. Leave the same amount for next year for easy restart basically. :) Yep, what you propose is probably right. It would skip reusing 1 when it is not selected!