Previous times were chosen using statistical maths, but reports suggested
this was too long.
I tested by timing an ABM acting on 100 nodes, with interval and chance equal
to the old sapling ABM.
50 at 4m59s.
99 at 24m58s.
100 at 26m58s.
So choose a grow time between 5 and 25 min for tree and bush saplings.
If 'can grow' is false at grow time the timer is reset to 5 min.
sounds = default.node_sound_leaves_defaults(),
on_construct = function(pos)
sounds = default.node_sound_leaves_defaults(),
on_construct = function(pos)
- minetest.get_node_timer(pos):start(math.random(2400,4800))
+ minetest.get_node_timer(pos):start(math.random(300, 1500))
end,
on_place = function(itemstack, placer, pointed_thing)
end,
on_place = function(itemstack, placer, pointed_thing)
sounds = default.node_sound_leaves_defaults(),
on_construct = function(pos)
sounds = default.node_sound_leaves_defaults(),
on_construct = function(pos)
- minetest.get_node_timer(pos):start(math.random(2400,4800))
+ minetest.get_node_timer(pos):start(math.random(300, 1500))
end,
on_place = function(itemstack, placer, pointed_thing)
end,
on_place = function(itemstack, placer, pointed_thing)
sounds = default.node_sound_leaves_defaults(),
on_construct = function(pos)
sounds = default.node_sound_leaves_defaults(),
on_construct = function(pos)
- minetest.get_node_timer(pos):start(math.random(2400,4800))
+ minetest.get_node_timer(pos):start(math.random(300, 1500))
end,
on_place = function(itemstack, placer, pointed_thing)
end,
on_place = function(itemstack, placer, pointed_thing)
sounds = default.node_sound_leaves_defaults(),
on_construct = function(pos)
sounds = default.node_sound_leaves_defaults(),
on_construct = function(pos)
- minetest.get_node_timer(pos):start(math.random(2400,4800))
+ minetest.get_node_timer(pos):start(math.random(300, 1500))
end,
on_place = function(itemstack, placer, pointed_thing)
end,
on_place = function(itemstack, placer, pointed_thing)
sounds = default.node_sound_leaves_defaults(),
on_construct = function(pos)
sounds = default.node_sound_leaves_defaults(),
on_construct = function(pos)
- minetest.get_node_timer(pos):start(math.random(2400,4800))
+ minetest.get_node_timer(pos):start(math.random(300, 1500))
end,
on_place = function(itemstack, placer, pointed_thing)
end,
on_place = function(itemstack, placer, pointed_thing)
sounds = default.node_sound_leaves_defaults(),
on_construct = function(pos)
sounds = default.node_sound_leaves_defaults(),
on_construct = function(pos)
- minetest.get_node_timer(pos):start(math.random(1200, 2400))
+ minetest.get_node_timer(pos):start(math.random(300, 1500))
end,
on_place = function(itemstack, placer, pointed_thing)
end,
on_place = function(itemstack, placer, pointed_thing)
sounds = default.node_sound_leaves_defaults(),
on_construct = function(pos)
sounds = default.node_sound_leaves_defaults(),
on_construct = function(pos)
- minetest.get_node_timer(pos):start(math.random(1200, 2400))
+ minetest.get_node_timer(pos):start(math.random(300, 1500))
end,
on_place = function(itemstack, placer, pointed_thing)
end,
on_place = function(itemstack, placer, pointed_thing)
function default.grow_sapling(pos)
if not default.can_grow(pos) then
function default.grow_sapling(pos)
if not default.can_grow(pos) then
- -- try a bit later again
- minetest.get_node_timer(pos):start(math.random(240, 600))
+ -- try again 5 min later
+ minetest.get_node_timer(pos):start(300)
"default:pine_sapling", "default:acacia_sapling",
"default:aspen_sapling"},
action = function(pos)
"default:pine_sapling", "default:acacia_sapling",
"default:aspen_sapling"},
action = function(pos)
- minetest.get_node_timer(pos):start(math.random(1200, 2400))
+ minetest.get_node_timer(pos):start(math.random(300, 1500))