minetest / minetest_game

Minetest Game - A lightweight and well-maintained base for modding [https://github.com/minetest/minetest/]
http://minetest.net/
Other
1.42k stars 572 forks source link

Improving vessels #1934

Closed hkzorman closed 4 years ago

hkzorman commented 6 years ago

I'm opening this issue just to get an opinion and to seek concept approval for improvements to the vessels mod. I would like to clarify I'm totally willing to code all these changes and submit a PR once the concept is approved by MTG devs.

I've seen some comments about vessels mod, and some of them are towards removing it. I think vessels mod can be very good if we give it an useful function. Therefore, I propose the following improvements:

These simple improvements can create the foundation for many survival possibilities in MTG. For example:

Again, if concept is good to MTG devs, I'm more than willing to code this. Please let me know your opinions.

kingoscargames commented 6 years ago

Add a tin bottle, with capacity for three drinks

More uses for that (almost)useless material would be good.

paramat commented 6 years ago

I have been considering making river water drinkable for a little health, nice idea. Let's see what other devs think first though. One possible issue is that river water is infinitely renewable (as long as you have 2 source nodes nex to each other) so you then create an infinite health resource.

Desour commented 6 years ago

Why shouldn't you be able to drink directly out of a river instead of with a vessel? What about boiling the water in the vessel to make it drinkable? A cauldron could be good to hold many drinks that are boiled all at once. Drinking ocean water is a bad idea, it's so salty. But minetest's small "water" deposits are no real oceans, they can be seen as lake, ergo "water" is maybe no ocean water but lake water.

hkzorman commented 6 years ago

One possible issue is that river water is infinitely renewable (as long as you have 2 source nodes nex to each other) so you then create an infinite health resource.

A possible solution to this could be to remove water nodes placed by buckets once they have filled 10-20 vessels.

Why shouldn't you be able to drink directly out of a river instead of with a vessel?

The main idea of this suggestion is to give a use to the vessels mod. Adding the ability to drink water directly is ok as well, but using vessels give you the advantage of being able to carry drinks with you.

What about boiling the water in the vessel to make it drinkable?

I want to make water boilable, but that is not in scope for this. I believe it would be for a cooking/brewing mod.

A cauldron could be good to hold many drinks that are boiled all at once.

Same as above.

Drinking ocean water is a bad idea, it's so salty. But minetest's small "water" deposits are no real oceans, they can be seen as lake, ergo "water" is maybe no ocean water but lake water.

I agree to this.

paramat commented 6 years ago

Obviously apples and wheat are an infinite source of health too, but require time and effort to generate, river water health is too easy, boiling (in the furnace?) might perhaps be the answer.

I consider any water at y = 1 and below 'salty ocean water' even if just in small pools. Making ocean water drinkable would require distillation, which adds the required time and effort.

Desour commented 6 years ago

distillation

Another use of vessels could be to store alcoholic drinks. Adding alcoholic stuff to minetest_game would make it much more interesting. And what would speak against it? Actually in many films where a rather small group humans is far away from any civilization and has to build a new one (like in minetest_game), one of the first things that are done is making alcoholic drinks (eg. stargate universe). However I don't know if it's just because they're american…

paramat commented 6 years ago

Well, alcohol is illegal in many parts of the world, that would be no different to adding cannabis cultivation to MTGame, a drug of similar (probably less) danger that is illegal in many parts of the world. Drugs are best left to optional mods, too specialist for MTGame.

hkzorman commented 6 years ago

Obviously apples and wheat are an infinite source of health too, but require time and effort to generate, river water health is too easy, boiling (in the furnace?) might perhaps be the answer. I consider any water at y = 1 and below 'salty ocean water' even if just in small pools. Making ocean water drinkable would require distillation, which adds the required time and effort.

@paramat I 100% agree to all of these. However, that, in my opinion, shouldn't be something that belongs into vessels mod, but to a brewing mod. And I'm all for it. If desired I can also create an initial issue for discussion.

Another use of vessels could be to store alcoholic drinks. Adding alcoholic stuff to minetest_game would make it much more interesting. And what would speak against it?

Well that's why I proposed to a add a drinkable liquids API. Maybe it doesn't belong either into vessels mod but into a brewing mod. Maybe some liquids could be registered as non-drinkable (e.g. raw ocean water) and with some processing make them into drinkable liquids (e.g. distilled ocean water). As to alcohol itself, I believe that if MTG provides a drinkable liquids API, a mod can easily add alcohol.

I guess then we do agree that vessels can be used to carry drinkable liquids, and some vessels can be used in processes to brew other drinkable stuff.

Thinking a little bit about it, maybe we can transform vessels mod into brewing mod, and make the vessels themselves be part of it, both as instruments and usable for drinking devices?

Desour commented 6 years ago

Drugs are best left to optional mods

I think, I have to agree, drugs would also bring many problems, like child-unfriendliness.

paramat commented 6 years ago

We made a big effort to make MTGame acceptable for an education environment, by removing expletives. Unfortunately there is a double standard where players hacking each other to bits with swords is seen as ok, but relaxing with soft drugs would make MTGame unacceptable for education environments or whereever adults are concerned about the material under-18s have access to.

hkzorman commented 6 years ago

I think we got a little bit off-topic. @paramat , what do you think about my above comment?

paramat commented 6 years ago

I'm still somewhat unsure and neutral

C1ffisme commented 6 years ago

Well, alcohol is illegal in many parts of the world, that would be no different to adding cannabis cultivation to MTGame, a drug of similar (probably less) danger that is illegal in many parts of the world.

Whilst I agree that this could be seen as child unfriendly or controversial, there are two arguments I feel like bringing up:

  1. Alchohol has historical significance, both in politics (trade, etc.) and in culture. Whilst you could have Minetest bars that sell milk or healthier sounding drinks, that doesn't really carry the same cultural meaning.

  2. I'm sure there are other games that have alchohol. The ESRB has actually rated a lot of games with alchohol or achoholic references as E for Everyone. Although the ESRB only covers people within the United States, Canada or Mexico.

Ezhh commented 6 years ago

I'd like to see vessels extended rather than removed, but using water to restore hearts feels a bit basic and too easy. Apple juice (which should restore more than an apple so it's worth the extra effort) would be good though.

Things like thirst and potion mods should probably be left for non-MTG mods, unless a very good reason can be found for them. Many server owners (and even players) might not want thirst, and there's so many ways a potion mod might work that it's best to leave that for people to decide for themselves.

paramat commented 6 years ago

C1ffisme, as i said double standards, alcohol is seen as acceptable despite being as dangerous as many illegal drugs. But good points. However it would still be risky to have alcohol in a subgame that has had a lot of effort made to make education-environment friendly. Mostly though it's quite specialist so can be left to optional mods.

Ezhh i agree.

Desour commented 6 years ago

using water to restore hearts feels a bit basic and too easy.

Irl you need to eat and drink to survive, in minetest_game there's no hunger nor thirst, so eating refills health directly, why shouldn't drinking do the same?

Ezhh commented 6 years ago

@DS-Minetest If you read the full comment, I'm not against drinking restoring health, but water is just too easy to get. It's a game balance issue. Also if we were going to use "in real life" as the basis for what MTG does, neither eating nor drinking would heal wounds. You'd instead need separate hunger and thirst mechanics, which aren't something every server or player would want. (Note, this isn't me saying I'm against both personally.)

paramat commented 6 years ago

Yes water is too easy a resource of health, even with boiling or distilling it it may be too easy compared to having to farm trees and crops. I wouldn't want to see players stop farming and live on water. So i'm not keen on drinkable water.

Desour commented 6 years ago

I wouldn't want to see players stop farming and live on water.

Afaik normally no player farms for bread since that needs so much fuel to bake. And no player would live on water just to restore health. Health is one of the most valueless resources in minetest_game, you can simply die and respawn again with full health. Eating would be a waste or real resources like time or food that could be used for something else. Ergo it makes no sense trying to keep a non-existent balance. And fuel to health would not be too cheap if enough fuel is needed.

Ezhh commented 6 years ago

@DS-Minetest Almost every public server uses MTG. This change would carry through to them and would definitely affect balance for servers. By your own logic, if health is valueless in MTG, MTG as a standalone game doesn't have a need for water to restore health. I agree health is not much of an issue within MTG itself, but MTG health restoration mechanics start being important when you add more mods, and that's when this would be an issue.

hkzorman commented 6 years ago

Guys, I think we are suffering here from scope creep.

I understand the opposition to drinking water to restore health without a hunger/thirst mechanism. I agree to all of this. But this is not the main scope of this suggestion.

The main idea here is to add a liquids (yes, I mentioned at first drinkable, but they don't have to be drinkable) API and that vessels can hold any liquid defined there. This API would look something like this:

vessels.register_liquid("vessels:water", { drinkable = false, }

And like this as well:

vessels.register_liquid("vessels:apple_juice", { drinkable = true, hp = 1, }

And if some mod wants for whatever reason add drinkable water, they could do: vessels.override_liquid("water", {drinkable=true, hp=0.5})

Same for the vessels, there would be an API that would define vessels and their capabilities, something like this: vessels.register_vessel("glass_bottle", { capacity = 2 })

This is not about drinkable water, but about improving vessels mod. I understand that big changes are hard to get approved, so I'm trying to suggest a simple beginning: let's make vessels carry liquids.

This, in the future, can evolve into better things. A liquid-carrying vessels mod can help be the base of a MTG/non-MTG thirst mod, brewing mod, potions mod, cooking mod, etc. It can be extremely useful, whether the extra features are added or not to MTG.

And if then the argument becomes, "why add then a feature if MTG will not use it?". Well, it can use it. We can have one single drinkable liquid in MTG: apple juice, like @Ezhh mentioned. And its recipe could be a glass bottle with water and an apple, producing a glass bottle with apple juice (2) (where the 2 is amount of times player can drink)

So please, let's discuss the merits of this suggestion. I feel no-one is against liquid-carrying vessels, as I haven't seen any argument against it. Let's add that. We can care about other features once the foundation is established.

paramat commented 6 years ago

And no player would live on water just to restore health. Health is one of the most valueless resources in minetest_game, you can simply die and respawn again with full health. Eating would be a waste or real resources

Some servers or mods may alter health behaviour, or make dying hardcore, or count the number of player's deaths. So these arguments are irrlelevant, and suggest we remove all food and wheat farming from MTG.

Anyway, hkzorman i agree, making the bottles able to carry a liquid seems ok, and would be much more suitable than carrying a drinkable liquid in a bucket.

maybe we can transform vessels mod into brewing mod,

Best not i think.

I diagree with carrying liquids in a drinking glass, too spillable to be usable as containers, they can remain as decoration. I disagree with adding a tin bottle, not needed and a non-healthy material for drinkable liquids. We could consider the steel bottle to have a larger capacity than the glass bottle.

Something to consider: VanessaE tells me the vessels mod was added to give mods vessels they can use to store liquids, so mods are doing this already, the API should ideally not break these mods, so you'll need to investigate how they work. Storing potions is another use and much more suitable and visually appealing than storing them in an open bucket.

hkzorman commented 6 years ago

Anyway, hkzorman i agree, making the bottles able to carry a liquid seems ok, and would be much more suitable than carrying a drinkable liquid in a bucket.

@paramat Great, thanks! Should I edit the initial post to reflect the changes caused by the discussion here, or should I create a new issue? Can this get Concept Approved label now, or does it need inputs from other devs as well?

I diagree with carrying liquids in a drinking glass, too spillable to be usable as containers, they can remain as decoration.

I disagree, given that a bucket is as spillable as a drinking glass. But adding drinking glass as liquid-carrying vessel is trivial enough so we can add at a later point if there's consensus.

Something to consider: VanessaE tells me the vessels mod was added to give mods vessels they can use to store liquids, so mods are doing this already, the API should ideally not break these mods, so you'll need to investigate how they work.

I will check on this, no problem.

paramat commented 6 years ago

I think we need input from other devs on this, might be worth waiting a while before working on it.

paramat commented 4 years ago

Closing due to #2710