DieReicheErethons / Brewery

GNU General Public License v3.0
161 stars 182 forks source link

Add fermention info on cauldrons and bottles #80

Closed tschaffter closed 3 years ago

tschaffter commented 9 years ago

First of all I would like to thank you for your amazing work on Brewery. The brewing mechanics are well designed as well as what happens when the drunk rate of a player increases.

Would it be possible to add a sign on the cauldron that would keep track of the fermenting time? One would place a sign on the cauldron, hit ESC without entering any text and the info should appear automatically like in the plugins Lockette or ShowCaseStandalone.

Moreover, that would be great to add the fermenting time on the bottles. When inferring the recipes, that would be very useful to know which bottles in a chest contain "Fermented wheat" (8 min) and "Fermented wheat" (10 min), for instance.

EDIT: I just saw that the information "X minutes fermented" appears on the potion label but for some reason only after spending some time in a barrel. That would make more sense to have this information at the time the bottles are filled.

Sn0wStorm commented 9 years ago

The Info on bottles can also be enabled in the config when bottles are distilling in the brewing stand, but right after fermenting is not possible yet.
Also the fermenting time of a cauldron can be seen by clicking on it with a watch, so i don't think a sign would be very useful?

tschaffter commented 9 years ago

By default, the "fermenting time" is displayed only once a potion is starting aging. This means that you start en experiment without knowing exactly the ingredient you are using, right?

Having a sign on the cauldron that updates the information automatically would allow:

  1. to watch the fermenting process smoothly (no need to stand next to the cauldron to click once in a while on it to get the information)
  2. to get the information from further away, allowing to do something else instead of waiting next to the cauldron.
Sn0wStorm commented 9 years ago

Yes, and both are for the purpose of making brewing a more difficult task. You have to invest some work to get good potions. If you could follow each step of brewing perfectly fine and time it on the second it would be extremely easy to have perfect brews on the first try.
If a bottle taken out of the cauldron would instantly show in the lore how well you have done on the ingredients and cooking time, you would make people find the perfect ingredients in seconds.

Also brews are very generic right after fermenting, from a fermented brew there can be many different outcomes depending on how different recipes need distilling and aging, so the quality is not set at that point.

tschaffter commented 9 years ago

If you could follow each step of brewing perfectly fine and time it on the second it would be extremely easy to have perfect brews on the first try.

Follow each step from where? My understanding of Brewery is that at first you know nothing but the fact that a recipe is a combination of fermentation, aging, and distillation (e.g., fermentation, fermentation+aging, etc.). For me the difficulty is to find the following parameters:

Fermentation:

Aging:

Distillation:

I count 9 parameters to combine/explore in order to infer the best recipes. Normally nobody should be able to find a top-quality recipe "on the first try" with that many parameters (without taking into account two other factors: a priori knowledge and the recipe difficulty coefficient).

Now let's say that I have found a recipe (a set of values for the 9 parameters). From what you said, I don't understand if by "following each step" I should be able to reproduce 100% time the same brew (deterministic brewing) or if you added some random variables (which would not make sense to me).

Once again, identifying the parameters values of a recipe is what I find extremely challenging. Forcing the player to stand next to the cauldron or come back continuously to it is not something I would deem necessary.

If a bottle taken out of the cauldron would instantly show in the lore how well you have done on the ingredients and cooking time, you would make people find the perfect ingredients in seconds.

I didn't say anything about "how well done" the fermentation has been done. I just suggested to add the following information to the lore of the fermented brew:

Players can not find the perfect ingredients in seconds with the above information (let me know if I missed something).

Finally, let's say that I want to do experiments to infer the perfect recipe of beer. The first step to me is to prepare different batches of fermentation: 1 wheat fermented 0 minute, 1 wheat fermented 1 minute, ... 2 wheats fermented 1 minute, etc.

I suggested to provide the above two fermentation information to the lore of the brew so that I know clearly what I'm using for the next step of the process (aging). With the current implementation, I would have a chest full of "Fermented wheat" without further indication, or I would have to create a chest for each combination of (number of wheat)/(fermentation time) with a sign on top of them. In the case where a brew requires more than one ingredient (e.g. coffee), having the detailed information of the fermentation process in the lore of the temporary brew would be a lifesaver.

Sn0wStorm commented 9 years ago

There are many factors, you are right. The most difficult ones being the ingredients. So I think it would be best to also give the players a vague idea of what ingredients/kind of ingredients/amount should be used, there are endless combinations of items, so without at least that prior knowledge there is no way for players to really experiment with new stuff.

There are no random factors in the process.

What you are suggesting to add the numbers to the lore would make some kind of "brute forcing" recipes possible/easier. Just dumb going through each possible combination until there is a match. As you said, one brew with one ingredient and one minute, one with one two, two one, etc. All would be written on the lore and when you finished a batch of brews, you know exactly which number did best. I don't know if that is a nice way of brewing... I rather not would want to work with the raw numbers like "17 wheat, 4 sugar, fermented 8 min" but more like "a stack of wheat for 4 cauldrons, add some sugar and ferment it about 10 minutes" or for some players even just throwing some stuff in to get some cheap alcohol. I don't really think it should be the target for every player to create the perfect brew, just some that do the work should get the crown.

Also adding all that information to the lore would really clutter it even more.... If you have some ideas regarding this and how that could be implemented, I would really appreciate to see some examples or even a branch of the project! I already thought of something like a custom block (enchantment table) that makes such informations show in the lore while placed inside, or when paying for it with lapis or something. Maybe you can come up with some nice things? :)

tschaffter commented 9 years ago

Just dumb going through each possible combination until there is a match. As you said, one brew with one ingredient and one minute, one with one two, two one, etc. All would be written on the lore and when you finished a batch of brews, you know exactly which number did best.

You can tell by now that I have an engineering/scientific background. :) Isn't the above method used in real life, e.g. to develop new perfume or even beer taste? Of course you don't test all possible combinations, but once you have a good starting point, wouldn't you gradually modify the quantity of the ingredients to converge to a good solution?

The additional information in the lore of the intermediate brew (e.g. Fermented wheat) would not help determining if the fermentation has been done correctly (correctly for which recipe?) but would only help the player to know what ingredients he will be using for the next brewing stage (aging and/or distillation).

The above method requires time and organization to find one top-quality recipe. I would reward anyone who found it to be able to reproduce top quality brews.

There are many options I'd like to discuss with you for your plugin but writing them take time. :) Would it be possible to have a Skype meeting (evenings or week-ends)?