Commit Graph

223 Commits

Author SHA1 Message Date
thunderdog1138 e3b7755223 Delete 'mods/farming/textures/farming_straw.png' 2020-05-08 02:37:38 +00:00
thunderdog1138 0d4eabb6e1 Delete 'mods/farming/textures/farming_soil_wet_side.png' 2020-05-08 02:37:29 +00:00
thunderdog1138 7fcafc019d Delete 'mods/farming/textures/farming_soil_wet.png' 2020-05-08 02:37:21 +00:00
thunderdog1138 fd80266efe Delete 'mods/farming/textures/farming_soil.png' 2020-05-08 02:37:12 +00:00
thunderdog1138 e6507cb522 Delete 'mods/farming/textures/farming_flour.png' 2020-05-08 02:37:05 +00:00
thunderdog1138 4561f6829a Delete 'mods/farming/textures/farming_desert_sand_soil_wet_side.png' 2020-05-08 02:36:54 +00:00
thunderdog1138 8fcf7761c5 Delete 'mods/farming/textures/farming_desert_sand_soil_wet.png' 2020-05-08 02:36:44 +00:00
thunderdog1138 2467028bdb Delete 'mods/farming/textures/farming_desert_sand_soil.png' 2020-05-08 02:36:35 +00:00
thunderdog1138 44836e9178 Delete 'mods/farming/textures/farming_cotton_seed.png' 2020-05-08 02:36:25 +00:00
thunderdog1138 edc0b3ab63 Delete 'mods/farming/textures/farming_cotton_8.png' 2020-05-08 02:36:17 +00:00
thunderdog1138 97182a09cd Delete 'mods/farming/textures/farming_cotton_7.png' 2020-05-08 02:36:10 +00:00
thunderdog1138 36777fc2ee Delete 'mods/farming/textures/farming_cotton_6.png' 2020-05-08 02:36:03 +00:00
thunderdog1138 52f0da9d9f Delete 'mods/farming/textures/farming_cotton_5.png' 2020-05-08 02:35:54 +00:00
thunderdog1138 3f7cacf449 Delete 'mods/farming/textures/farming_cotton_4.png' 2020-05-08 02:35:44 +00:00
thunderdog1138 705b91a402 Delete 'mods/farming/textures/farming_cotton_3.png' 2020-05-08 02:35:32 +00:00
thunderdog1138 ecf51d7441 Delete 'mods/farming/textures/farming_cotton_2.png' 2020-05-08 02:35:21 +00:00
thunderdog1138 4c9e2f0371 Delete 'mods/farming/textures/farming_cotton_1.png' 2020-05-08 02:35:11 +00:00
thunderdog1138 88c9ecf4ec Delete 'mods/farming/textures/farming_cotton.png' 2020-05-08 02:34:51 +00:00
thunderdog1138 69235adad9 Delete 'mods/farming/textures/farming_bread.png' 2020-05-08 02:32:08 +00:00
thunderdog1138 3144248b51 Delete 'mods/farming/nodes.lua' 2020-05-08 02:31:55 +00:00
thunderdog1138 0583c47c88 Delete 'mods/farming/mod.conf' 2020-05-08 02:31:46 +00:00
thunderdog1138 73684285ab Delete 'mods/farming/license.txt' 2020-05-08 02:31:36 +00:00
thunderdog1138 caa7f2c4eb Delete 'mods/farming/init.lua' 2020-05-08 02:30:47 +00:00
thunderdog1138 547842d10e Delete 'mods/farming/hoes.lua' 2020-05-08 02:30:05 +00:00
thunderdog1138 62eaac4169 Delete 'mods/farming/api.lua' 2020-05-08 02:29:53 +00:00
thunderdog1138 0148df1b15 Delete 'mods/farming/README.txt' 2020-05-08 02:29:42 +00:00
thunderdog1138 f86170bee2 Update 'mods/farming/init.lua' 2020-05-07 23:00:26 +00:00
thunderdog1138 77459f18eb Update 'mods/farming/nodes.lua' 2020-05-07 22:58:50 +00:00
thunderdog1138 4a8e8a3c5c
Add files via upload 2019-12-15 09:40:04 -05:00
thunderdog1138 fa7a8bfe51
Delete farming_tool_steelhoe.png 2019-12-15 09:39:47 -05:00
thunderdog1138 b8114577e6
Delete template.txt 2019-12-12 19:35:04 -05:00
thunderdog1138 fe433fb295
Delete farming.se.tr 2019-12-12 19:34:58 -05:00
thunderdog1138 d0047db3fe
Delete farming.ru.tr 2019-12-12 19:34:49 -05:00
thunderdog1138 a086b6b1c6
Delete farming.ms.tr 2019-12-12 19:34:41 -05:00
thunderdog1138 ec37d33ec3
Delete farming.it.tr 2019-12-12 19:34:34 -05:00
thunderdog1138 2cbf06b7e4
Delete farming.fr.tr 2019-12-12 19:34:26 -05:00
thunderdog1138 2f506354c7
Delete farming.es.tr 2019-12-12 19:34:18 -05:00
thunderdog1138 5a4b33033a
Delete farming.de.tr 2019-12-12 19:34:12 -05:00
thunderdog1138 2a841cc622
Update hoes.lua 2019-12-12 18:51:06 -05:00
Muhammad Nur Hidayat Yasuyoshi (MNH48) 710605687b Add Malay translation 2019-11-30 17:31:40 +01:00
Aresiel 10dce79451 Add Swedish translation 2019-11-30 17:31:29 +01:00
Andrey2470T 6fea665fcc Add Russian translation (#2525) 2019-10-24 21:54:20 +02:00
Hamlet 93a49f082c Italian translation (#2491) 2019-10-12 14:30:37 +02:00
JDiaz a00ff24df9 Spanish Translation (#2505) 2019-10-10 21:19:20 +02:00
DrHackberry 0f369b43fe French translation (#2514) 2019-10-10 21:18:25 +02:00
Wuzzy 106c36da33 Add translation templates and German translation 2019-09-22 13:42:40 +02:00
sfan5 b4c7522248
Fix more translation strings (#2487) 2019-09-18 20:38:27 +02:00
sfan5 e4adb01fbf
Fix and improve translation strings (#2471) 2019-09-12 19:03:10 +02:00
Yves Quemener bb9279ccb8 Add support for MT 5 game translation (rebasing ) (#2466)
rebased #2368
2019-09-10 19:09:51 +02:00
TumeniNodes 7f830124f7 Various mods: Use " " instead of ' ' for item names 2019-08-01 02:40:39 +01:00
TumeniNodes c32b8adaa3 Add 'dry dirt' and 'dry dirt with dry grass' nodes for savanna biome 2019-07-26 17:50:44 +01:00
sfan5 9b226c7045 Switch to mod.conf, delete deprecated depends.txt 2019-07-17 00:38:23 +02:00
An0n3m0us e19f42d648 Add groups for tools and mushrooms (#2378) 2019-06-01 21:10:30 +02:00
Paul Ouellette ccf03ea404 Remove extra empty strings in craft recipes (#2281) 2019-01-02 12:40:32 +01:00
Paramat 5b3b609270
Stairs: Add field to determine world-aligned textures (#2219)
All stair/slab nodes with parent nodes that are rotatable (wood and bricks)
are reverted to not having world-aligned textures, to fix the breakage of
rotated stair/slab appearence in worlds.

Update, and add missing documentation to, game_api.txt.
2018-10-04 00:33:11 +01:00
Paramat 9c459e77ac
Farming: Deprecate bronze, mese and diamond hoes. Tune steel uses (#2103)
Remove unnecessary "air" fallback recipe for hoes to avoid this showing
in crafting guides.
2018-04-08 17:55:19 +01:00
tenplus1 11b3407671 Add food_* groups to default edibles (#2089) 2018-04-04 10:59:15 +02:00
paramat d1db66bf4f Ferns: Add 3 sizes for coniferous forest biome
Remove flowers from coniferous forest.
Add 'dirt with coniferous litter' to farming mod overrides.
2017-12-24 20:50:44 +00:00
DTA7 a2d7678ffd Add nil checks for placer 2017-11-15 23:16:28 +00:00
paramat 08727bcd69 Farming: Make cotton look like cotton, add crafted string item
Remove string -> cotton alias.
2017-08-18 18:48:25 +01:00
Ezhh c2f3c99cad Correct farming/stairs dependency (#1838) 2017-07-22 16:11:40 +02:00
Paramat 1d5bc15f9a Crafting: Remove duplicate reversed recipes (#1777)
For axes and hoes only use one recipe that matches the appearance of the texture and in inventory.
2017-07-16 14:31:21 +02:00
ezhh 15ba96467d Descriptions: Make capitalization consistent 2017-06-14 20:26:33 +01:00
zaoqi 077316b4cd Use creative.is_enabled_for for creative mode if possible (#1558) 2017-03-29 21:02:26 +02:00
paramat bd4d2dff1c Farming: Add override for default:dirt_with_rainforest_litter 2017-03-15 22:22:21 +00:00
Auke Kok 78c632ebd4 Allow interaction with nodes while wielding these items.
- beds
- boats
- carts
- key/skeleton key
- seeds

All these had on_place handlers that did not allow nodes with
an on_rightclick() handler to be used first (if not using
sneak). This code is taken from the torches mod and applied
everywhere.

This allows all these items to e.g. be inserted into the `frame`
mod's item frames.
2017-02-28 18:16:12 -08:00
Thomas--S c88c0a98fd Make drop logic work better for non-8-step-plants. (#1544)
Using @paramat's formula.
2017-02-08 15:59:25 -08:00
paramat 55a16cd2c6 Default: Add missing 'default_dig_snappy' sound
Some nodes with the snappy group (wool, glass pane, seeds) were missing
sound when dug with a sword.
Adding the sound causes it to be used for glass pane, so define a 'dig'
sound in the 'node sound glass defaults' table, use the footstep sound.
Adding the sound also causes it to be used for seeds which deliberately
have no dig sound, so add an empty sound override for seed dig.

Reduce the gain of the glass footstep sound which was excessively loud.

Add some freesound members to license.txt.
2016-12-13 03:15:30 +00:00
Auke Kok ea9c4012d5 Farming: Change wheat into # shaped plant
This changes the farming API such that any nodedef with paramtype2
and place_param2 are passed through to all the plant stages of the
farming plant.

This allows plants to use an alternative mesh for the plantlike
drawtype, and provide a bit of graphical variation in plants.

We enable this for wheat, using place_param2 = 3, which is the '#'
shaped plant mesh. If you would actually be able to give yourself
this plant in creative or through /give, you would also get the
same '#' shape.
2016-12-04 06:34:51 +00:00
paramat e837621537 Farming/fire: Add tool break sounds
Add tool break sounds to hoes and flint and steel.
Flint and steel: Reduce gain of use sound and only add tool wear
if not in creative mode.
2016-11-26 03:14:56 +00:00
Thomas--S 55ab3a117d Farming: Add forgotten colon
This makes the itemstrings consistent over the whole file.
2016-11-21 03:19:47 +00:00
Auke Kok 75caa9167c Fix whitespace errors to silence luacheck.
Currently all minetest_game PR's are failing travis since the
upstream luacheck now also warns about whitespace issues, and
there are a few of those in the code. This fixes all of them
so we can yet again rely on luacheck.
2016-11-19 19:39:51 -08:00
paramat 47efa2f558 Textures: Revert many back to RGBA to fix visual bug
With mip-mapping enabled, some GPUs cause a visual bug with indexed
textures that use alpha. This bug has been present for a while but
not noticed before. All indexed alpha textures must now be converted
to RGBA, to start this process we revert some textures converted to
indexed in the recent commit af3c918.
2016-11-19 23:45:08 +00:00
Auke Kok af3c91862c Convert many textures to indexed color
This fixes all cases where the color profile was broken, and
libpng warns about. It also makes almost all textures indexed
instead of RGB where possible (textures that don't have
semi-transparent pixels).
2016-11-18 05:37:02 +00:00
cx384 23ba2d3a0c Add and edit fuel registrations
Edited fuels: fences, wooden ladder.
New fuels:
boat, paper, book, dry shrub, stick, vessels shelf, wooden tools,
wooden door, trapdoor, fence gates, farming crops, stairs, slabs, beds.
2016-11-02 13:04:25 +00:00
Fernando Carmona Varo 3c9d71e6f7 Make flammable: Flowers, grasses and several crafitems 2016-10-25 02:37:36 +01:00
bas080 78311a27a1 Store registered plant on namespace
Handy for when modders want to use these definitions to extend or add to the mod
2016-10-12 00:14:11 +01:00
tenplus1 0ad3306c79 Farming: Remove unnecessary overriding of groups
This removes the group overrides for dirt, dirt_with_grass and dirt_with_dry_grass which aren't needed and interfere with new grass spreading changes: https://github.com/minetest/minetest_game/pull/1286
2016-09-27 17:03:50 +01:00
paramat 6171fb43f0 Change WTFPL to MIT (part 3)
Relicense WTFPL media to CC BY-SA 3.0.
Various corrections and edits.
2016-09-07 04:44:53 +01:00
paramat 7d70d25eeb Licenses: Change WTFPL to MIT (part 2)
Add license.txt files.
Update and improve README.txt files.
Corrections to part 1.
2016-09-06 04:45:23 +01:00
paramat e9d26e2ee3 Licenses: Change WTFPL to MIT (part 1)
Part 1: All mods except default and xpanes.
Add license.txt files.
Add missing README.txt files.
Check and update copyright years for all contributors.
Improve text format and make more consistent.
2016-09-05 05:54:33 +01:00
tenplus1 619ac52693 Add labels to ABMs
Useful for searches and the mod profiler.
2016-08-09 03:56:37 +01:00
Tim 4473627de0 Remove unused and clean up missused variable-value assignments.
* Unused variables
* Unused values (assigned to variables, but overwritten before use)
* Defining already defined variables instead of reassigning to them.
2016-07-15 21:58:49 +01:00
Tim 71c7e21669 Always return the leftover ItemStack for on_place and on_rightclick 2016-07-09 16:32:41 +01:00
cd2 5775c9147c Farming: Add negative fall_damage_add_percent to straw
This doubles the fall height without damage to 11 nodes.
2016-06-17 23:43:41 +01:00
Auke Kok dcf2465441 Farming: allow LBM's for other mods as well.
Fixes #1114
2016-06-04 13:39:58 +01:00
Auke Kok 70ef7864c1 Farming: Convert plants to use node timers
This PR requires @minetest/minetest#3677

Farming and plant growth has traditionally in minetest been
implemented using ABM's. These ABM's periodically tick and cause
plants to grow. The way these ABM's work has several side effects
that can be considered harmful.

Not to mention a comprehensive list of downsides here, but ABM's
are chance-dependent. That results in the chance that some nodes
potentially never get processed by the ABM action, and others get
processed always. One can easily find this effect by planting a large
field of crops, and seeing that some nodes are fully grown really
fast, and some just won't make it to fully grown status even after
hours or play time.

One could solve the problem by making the ABM's slower, and giving them
a 100% of action, but this would cause the entire field to grow a step
instantly at ABM intervals, and is both ugly, and a large number of
node updates that needs to be sent out to each client. Very un-ideal.

With NodeTimers though, each node will see a separate node timer event,
and they will likely not coalesce. This means that we can stop relying
on chance to distribute plant growth, and assign a single timer event
to grow the plant to the next phase.  Due to the timer implementation,
we won't ever miss a growth event, and we can re-scehdule them until
the plant has reached full size.

Previously, plants would attempt to grow every 9 seconds, with a
chance of 1/20. This means typically, a plant would need 9*20 seconds
to grow 1 phase, and since there are 8 steps, a typical plant growth
would require 9*20*8 ABM node events. (spread out over 9*8 ABM actual
underlying events per block, roughly).

because plants are likely not growing to full for a very long time
due to statistics working against it (5% of the crops take 20x longer
than the median to grow to full, we'd be seeing ABMs fire possibly
up to 9*20*8*20 with a 95% confidence interval (the actual math
is likely off, but the scale should be correct). That's incredibly
wasteful. We'd reach those conditions easily with 20 plant nodes.

Now, after we convert to NodeTimers, each plant node will see exactly
8 NodeTimer events, and no more. This scales lineairly per plant.

I've tuned the growth rate of crops to be mature in just under 3
whole days. That's about 1hr of game time. Previously, about half
the crops would grow to full in under 2 days, but many plants would
still not be mature by the end of day 3. This is more consistent.

An additional problem in the farming mod was that the final fully-grown
plant was also included in the ABM, causing infinite more ABM's even
after the entire field had grown to completion.

Now, we're left with the problem that none of the pre-existing plants
have actual node timers started on them, and we do not want a new ABM
to fix this issue, since that would be wasteful.  Fortunately, there
is now an LBM concept, and we can use it to assure that NodeTimers
on crop nodes are properly started, and only have to do the actual
conversion once per block, ever.

We want to provide a fairly similar growth rate after this conversion
and as such I've resorted to modelling some statistical data. For this
I created a virtual 32x32 crop field with 9 steps (8 transitions)
as is the default wheat crop. We then apply a step where 1 in 20
plants in the field grows a step (randomly chosen) and count the
number of steps needed to get to 25%, 50, 75% and 95% grown.

The resulting data looks as follows:

25% - ~120 steps * 9 sec / abm = 1080s
50% - ~152 steps               = 1368s
75% - ~194 steps               = 1746s
95% - ~255 steps               = 2295s

Next, we want to create a model where the chance that a crop grows
is 100% every node timer. Since there will only be 8 steps ever,
we want the slowest crops to grow in intervals of ~ 2300 / 8 seconds
and the fastest 1/4 of crops to grow 1080 / 8 seconds intervals.
We can roughly compare this to a normal distribution with a median
of 1400 with a stddev of ~350 (thick fingering this one here).

The rest is a bit of thick-fingering to get similar growth rates,
taking into account that ABM's fire regularly so if they're missed
it's fairly painless, but our timers are going to be 1-2 minutes
apart at minimum. I calculate the timer should be around 150s
median, and experimented with several jitter ranges.

Eventually I settled for now on [80,200] with a redo of [40,80],
meaning that each growth step at minimum takes (80 to 200) seconds,
and if a negative growth condition was found (darkness, soil not
wet, etc), then the growth step is retried every (40 to 80) seconds.

The end result is a growth period from seed to full in ~ 2.25
minetest days. This is a little bit shorter than the current
growth rate but the chances you'll miss timer ticks is a bit
larger, so in normal gameplay it should be fairly comparable.

A side effect is that fields grow to full yield fairly quickly
after crops make it to mature growth, and no crops are mature
a very long time before the majority grows to full. The spread
and view over a growing field is also fairly even, there's no
large updates with plenty of nodes. Just a node here or there
every second or so in large fields.

Ultimately, we get rid of ABM rollercoasters that cause tens of
node updates every 9 seconds. This will help multiplayer servers
likely a lot.
2016-05-25 03:26:53 +01:00
paramat f32a3ff57c Farming: Add quiet sounds to seeds 2016-04-23 20:09:04 +01:00
paramat be05441e77 Farming: Override dirt_with_dry_grass to enable cultivation 2016-04-08 01:13:05 +01:00
paramat 7d2dfe4101 Consolidate ABMs
Spread ABM intervals evenly across 1 to 16 seconds
16s ensures no nodes are missed when player walks past
Adjust chance values to compensate, for identical action rates
Combine lavacooling ABMs into one, return to chance = 1
Grass growth: add 'neighbors = "air"' to avoid
processing the thousands of underground dirt nodes
Grass death: Reduce action rate to that of grass growth
Fire: Use chance = 1 for flame extinguishing
and flame removal when mod is disabled
2016-02-14 05:22:20 +00:00
paramat 8e51f318b3 Rename to Minetest Game
Rename in game.conf and documentation
Update game_api.txt documentation for bucket API and tree functions
Fix tab, space and comment formatting in game_api.txt
Rename in mod READMEs
2015-09-30 23:33:12 +01:00
codeandfix ff0973fa4f Update api.lua
added protection for seed placement and hoeing
2015-09-29 21:01:20 +01:00
Craig Davison b6c12010b1 Remove beds/Changelog.txt & farming/API.txt
- beds/Changelog.txt probably won't be updated because http://dev.minetest.net/Changelog is used instead
- The information in farming/API.txt is already documented in game_api.txt
2015-09-14 23:08:52 +01:00
paramat e15fde1624 Fix is_ground_content settings for nodes
Remove line if set to the default of 'true'
2015-06-18 02:25:02 +01:00
Novatux 23a37e5e79 Apples give 2 HP instead of 1 HP, bread gives 5 HP instead of 4 HP 2015-05-14 17:33:10 +02:00
jp f86ac2fdff Optimize textures and model (use *.b3d instead *.x) 2015-02-28 22:33:19 +01:00
MT-Modder 3e912f7b85 Add reverse recipes for hoes
- Adds material for crafting (keeps def.recipe compatibility)
- Fix two typos in api documentation
2015-02-28 22:05:07 +01:00
jeanpatrick.guerrero@gmail.com 5518c277f3 Textures Update 2015-01-25 10:48:42 +01:00
jeanpatrick.guerrero@gmail.com 5d8b2442ce Add straw 2015-01-17 16:30:31 +01:00
PilzAdam c654c9fd11 Remove weird constants in default 2015-01-10 15:47:30 +01:00
PilzAdam b0fb180e4d Use an overlay over default_dirt.png for soil 2014-12-07 19:46:23 +01:00
PilzAdam 22dd46dcc6 Dont dry out soil if unloaded blocks are nearby 2014-12-06 11:54:56 +01:00
Craig Davison 128f0adb24 Fix some undeclared global variables 2014-11-30 18:02:33 +01:00
ShadowNinja 44dc611088 Fix farming unloaded node crash 2014-09-06 20:36:40 -04:00
BlockMen ef1f66a64e Fix some farming stuff 2014-08-21 16:48:48 +02:00
Amaz c8845e8d44 Fix desert_sand_soil dropping itself, and changed the descriptions 2014-07-22 12:56:20 +02:00
cupofinsane 5175897cdc Alias string to cotton
Cotton plants used to drop strings, now they drop farming:cotton. Some mods (namely, throwing) still use farming:string, therefore we need farming:string to be equal farming:cotton.
2014-07-13 20:04:14 +02:00
BlockMen ff80b87783 Remove debug line 2014-07-05 16:06:08 +02:00
David Gumberg e106fd51ca Compress all textures losslessly using optipng and advpng 2014-07-05 16:06:00 +02:00
webdesigner97 60ccb522d4 Make farming more flexible
- API {farming.register_hoe(), farming.register_plant()}
- Fertilities -> Plant only grow on soil with a fitting fertility, e.g. Wheat only grows on grassland, while cotton grows in deserts and grassland)
- New soil: Desert Sand
- Place seeds instead of plants
2014-07-05 16:03:24 +02:00
BlockMen f85e9ba691 Add mese and diamond hoe, new tool textures 2014-07-05 16:02:34 +02:00
BlockMen 07d3981d61 Fix farming (caused by outdated pull) 2014-07-05 15:56:53 +02:00
Vanessa Ezekowitz b3f4f406c4 Modify default grasses rather than entirely re-defining them
Also, move "waving = 1" property for grasses/shrubs over to default/nodes.lua
and put all instances of this property right under the drawtype, since they
are directly related and depend on the above.
2014-07-05 15:56:15 +02:00
RealBadAngel 579c279be2 Fix semitransparent pixel in bread's texture. 2014-05-20 19:58:30 +02:00
RealBadAngel 81e9a7cb36 Add waving property for leaves and plants. 2013-12-03 19:15:19 +01:00
ShadowNinja 7b8ad5786c Add and use the stick group 2013-11-01 11:34:24 -04:00
Novatux 066d23cdfd Change hoe_on_use to farming.hoe_on_use, for use and override by mods. 2013-11-01 16:31:01 +01:00
hdastwb 02bfcae53d Add support for walkable plants 2013-07-11 02:44:37 +02:00
PilzAdam 29f1f01f37 Increase chance for getting seeds 2013-06-03 01:15:40 +02:00
Sfan5 c2ce3d032e Pngcrush all Textures 2013-05-25 16:20:35 +02:00
PilzAdam 31a74ede18 Replace minetest.env: with minetest. 2013-05-25 00:40:03 +02:00
Casimir 814959cc28 Fix typo for droping seeds 2013-05-24 15:04:44 +02:00
PilzAdam 5d11a34b04 Add farming mod 2013-05-21 18:53:10 +02:00