minetest / minetest_game

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

Too easy to get wheat seeds #838

Closed sofar closed 8 years ago

sofar commented 8 years ago

It's way too easy to get wheat seeds, since grass can be dug by hand over and over again - one can easily convert 100% of grass to seeds this way.

to reproduce:

Proposed solutions that I can think of, best one on top:

  1. Require scissors to cut grass. If grass is dug without scissors, destroy the grass without dropping the grass node. Drop seeds occasionally (1 in 20). Do not drop seeds when cutting grass with scissors.
  2. Drop seeds from grass_5 only when dug. If seed drops, do not drop grass node.
  3. ... ?

Similarly, leaves, flowers should not be diggable by hand, but instead require a tool?

Perhaps we can do something original like a sickle instead of scissors, as that's a far more common and appropriate tool to cut grass and wildflowers.

C1ffisme commented 8 years ago

The way I see it, grass is wheat that hasn't been cultivated properly. Thus it turns green and produces no crop. Then if you dig through it enough, you can find seeds.

Shears or scissors is a good idea though. It makes it a bit less ridiculous. I'm not sure if we can set node drops based on the digging tool, though.

Napiophelios commented 8 years ago

Shears are a pretty common tool used by several mods like plantlife and mobs, I think it would be a good addition to the default collection of tools.

@C1ffisme plantlife by VanessaE already sets node drops based on weilded item used to dig: https://github.com/VanessaE/plantlife_modpack/blob/master/vines/functions.lua#L122

rautars commented 8 years ago

Similarly, leaves, flowers should not be diggable by hand, but instead require a tool?

Leaves for me is most time junk in inventory I would support idea to get leaves only when I intended (when using proper tool). However current flowers obtaining method seems fine for me. As flowers does not have seed obtaining problem I would opt-out them for now.

Perhaps we can do something original like a sickle instead of scissors

Sickle? Why not scythe? No seriously minetest_game already have few sharp items which can do job. Why not re-use swords, at least up from iron version they should be sharp?

sofar commented 8 years ago

@xeranas a scythe would look too much like a hoe.

rautars commented 8 years ago

@sofar it was joke :)

We should not add new tools unless we absolute need it. Right now it would be cosmetic addon rather than necessary.

From my point of view it was mistake to add scissors and now we cannot remove it because there already mods who depends on it. Same fate could be with sickle. After year or so another dev would think oh wait sickle does not make much sense and introduce toolC. And soon players will need infinity inventory to hold all of them. With every new tool comes new recipes which needs to remember.

Perhaps we can do something original

Whe already have nyan cat block. New skinned item or new block is not "original" stuff. For such tiny-bitsy optimisations we should reuse as much stuff as posible and move on more important stuff.

sofar commented 8 years ago

it was mistake to add scissors and now we cannot remove it

there are no scissors in minetest_game.

Your last argument is nonsense: minetest_game isn't done, it's going to change whether you like it or not. If you don't want it to change, then check out a git copy and stop updating it.

p5yg3n commented 8 years ago

:+1: for solution 2 with increased drop rarity.

It's the quickest and most reasonable option IMO. Adding another tool for a single node drop is kinda silly. Since swords already handle snappy nodes there's really no need for it. Nevertheless, if shears or scissors had other specialty uses then it's a good idea. Otherwise it's just like the tin controversy... 1 use == pointless.

sofar commented 8 years ago

@MT-Modder I'm thoroughly in the Alton Brown camp that hates unitaskers :)

p5yg3n commented 8 years ago

I'm sorry but I don't know what you mean by that.

sofar commented 8 years ago

@MT-Modder a unitasker is a tool that has only a single application. The TV-chef and cooking scientist Alton Brown has a cooking show where he expresses his dismay at unitasker kitchen tools. It's just a pop reference.

p5yg3n commented 8 years ago

Ah gotcha now thanks. I don't watch that many cooking shows. :smiley:

paramat commented 8 years ago

I would support solution 2 but perhaps keep drop chance at 1 in 5. I seem to remember that PilzAdam is okay this cheat remaining.

PilzAdam commented 8 years ago

If seed drops, do not drop grass node.

This is the current behavior, isn't it?

As @paramat said, I like it that you are guaranteed to get seeds even if you found only 1 grass node. It helps if the player can't find a lot of grass and still wants to start farming (I found myself in that situation a few times; I walked a few minutes and only found about 5 grass).

If you really want to change that, then just make grass randomly drop nothing.

Btw, we already have tools for the snappy group: swords

paramat commented 8 years ago

Not sure about only grass 5, the distribution of grasses changes on a large scale meaning grass 5 is not always available.

sofar commented 8 years ago

hmm the game seems to drop either seed or grass, but not both. This is done in farming/nodes.lua line 140

paramat commented 8 years ago

Oops just saw that.

sofar commented 8 years ago

So looking through this code and all the bits carefully (thanks to everyone who commented), I would like to only make one change:

if wielding a snappy tool, drop default:grass_1 otherwise, occasionally drop farming:seed_wheat (but never default:grass_1)

This prevents the repeated planting of the same grass. I do like to make the game more difficult, and this is one of the things that's needed to make singleplayer vanilla more challenging (the other is a decent hunger mechanism that forces the player to farm for food).

sofar commented 8 years ago

Similarly, I'd make this same change for junglegrass and for all leaves as well - chopping leaves with a snappy tool should not yield saplings, either.

paramat commented 8 years ago

On this i think no change, repeated planting and digging is tedious anyway, and we can only get 1 seed from 1 grass, so it's not overly easy. Saplings are also like this.

0-afflatus commented 8 years ago

Big no to more tools. This isn't really an issue for me, it takes quite a lot of work getting started with farming as it is and I don't see how this would improve the game.

Fixer-007 commented 8 years ago

I think solution 2 is good enough, will be nice to use it on jungle grass and leaves somehow.