Wishes for Minetest 0.4.11 (or 0.5)
Wishes for Minetest 0.4.11 (or 0.5)
People, write here the stuff you would love to see in the version after 0.4.10.
My wish is a parameter for the player model transparency. =)
My wish is a parameter for the player model transparency. =)
- Krock
- Developer
- Posts: 4649
- Joined: Thu Oct 03, 2013 07:48
- GitHub: SmallJoker
- Location: Switzerland
- Contact:
Re: Wishes for Minetest 0.4.11 (or 0.5)
It's not XMAS yet.
Look, I programmed a bug for you. >> Mod Search Engine << - Mods by Krock - DuckDuckGo mod search bang: !mtmod <keyword here>
Re: Wishes for Minetest 0.4.11 (or 0.5)
But that doesnt mean that we cant wish for stuffzs
- rubenwardy
- Moderator
- Posts: 6972
- Joined: Tue Jun 12, 2012 18:11
- GitHub: rubenwardy
- IRC: rubenwardy
- In-game: rubenwardy
- Location: Bristol, United Kingdom
- Contact:
Re: Wishes for Minetest 0.4.11 (or 0.5)
Optimisation.
Higher FPS.
Less (visible) server lag.
Game play polish.
Longer term:
Client side API for Graphics, Sounds and client side prediction for mods.
Higher FPS.
Less (visible) server lag.
Game play polish.
Longer term:
Client side API for Graphics, Sounds and client side prediction for mods.
Re: Wishes for Minetest 0.4.11 (or 0.5)
There are several mods that use use the strategy of replacing an item in inventory in order to change the image for a tool. Screwdriver, clock, the compasses, bridgetool, etc. It's a hack, and a clumsy one in my opinion.
What I wish the brilliant devs could figure out how to do would be to allow a mod to override the image for a particular tool without having to replace it. It would be trivial to do it for the whole class of tools, but we need a way to modify the image for the particular compassgps, clock, or screwdriver that one player is carrying and not for every compassgps, clock or screwdriver in the game. And I'm afraid that might be complicated.
What I wish the brilliant devs could figure out how to do would be to allow a mod to override the image for a particular tool without having to replace it. It would be trivial to do it for the whole class of tools, but we need a way to modify the image for the particular compassgps, clock, or screwdriver that one player is carrying and not for every compassgps, clock or screwdriver in the game. And I'm afraid that might be complicated.
Re: Wishes for Minetest 0.4.11 (or 0.5)
I would really love for this to be possible in the next version:
viewtopic.php?f=5&t=9568&hilit=alpha
viewtopic.php?f=5&t=9568&hilit=alpha
-
- Member
- Posts: 647
- Joined: Thu Feb 21, 2013 23:54
- JPRuehmann
- Member
- Posts: 334
- Joined: Fri Mar 21, 2014 21:40
- Location: Germany
- Contact:
Re: Wishes for Minetest 0.4.11 (or 0.5)
Hello
I´d love to see the Map feature of gsmanners integrated.
till then,
JPR
I´d love to see the Map feature of gsmanners integrated.
till then,
JPR
- JPRuehmann
- Member
- Posts: 334
- Joined: Fri Mar 21, 2014 21:40
- Location: Germany
- Contact:
Re: Wishes for Minetest 0.4.11 (or 0.5)
Hello
Change of the behaviour of the Enter Key in Formspecs would be lovely.
Thanks,
JPR
Change of the behaviour of the Enter Key in Formspecs would be lovely.
Thanks,
JPR
Re: Wishes for Minetest 0.4.11 (or 0.5)
If by that you mean having more control over the alpha channel (making the alpha channel a custom number) then i totally agree with you..TenPlus1 wrote:I would really love for this to be possible in the next version:
viewtopic.php?f=5&t=9568&hilit=alpha
- HeroOfTheWinds
- Member
- Posts: 470
- Joined: Wed Apr 23, 2014 23:16
- GitHub: HeroOfTheWinds
- IRC: WindHero
- Location: Hawaii
Re: Wishes for Minetest 0.4.11 (or 0.5)
More efficient ABM's that cause less lag while playing on servers.
Nam ex spatio, omnes res venire possunt.
Why let the ground limit you when you can reach for the sky?
Back to college now, yay for sophomore year schedules. :P
Why let the ground limit you when you can reach for the sky?
Back to college now, yay for sophomore year schedules. :P
- Krock
- Developer
- Posts: 4649
- Joined: Thu Oct 03, 2013 07:48
- GitHub: SmallJoker
- Location: Switzerland
- Contact:
Re: Wishes for Minetest 0.4.11 (or 0.5)
Explain please. Do you mean code cleanups?HeroOfTheWinds wrote:More efficient ABM's that cause less lag while playing on servers.
Look, I programmed a bug for you. >> Mod Search Engine << - Mods by Krock - DuckDuckGo mod search bang: !mtmod <keyword here>
- hoodedice
- Member
- Posts: 1374
- Joined: Sat Jul 06, 2013 06:33
- GitHub: hoodedice
- IRC: hoodedice
- In-game: hoodedice
- Location: world
- Contact:
Re: Wishes for Minetest 0.4.11 (or 0.5)
http://dev.minetest.net/minetest.register_abmKrock wrote:Explain please. Do you mean code cleanups?HeroOfTheWinds wrote:More efficient ABM's that cause less lag while playing on servers.
7:42 PM - Bauglio: I think if you go to staples you could steal firmware from a fax machine that would run better than win10 does on any platform
7:42 PM - Bauglio: so fudge the stable build
7:43 PM - Bauglio: get the staple build
7:42 PM - Bauglio: so fudge the stable build
7:43 PM - Bauglio: get the staple build
- rubenwardy
- Moderator
- Posts: 6972
- Joined: Tue Jun 12, 2012 18:11
- GitHub: rubenwardy
- IRC: rubenwardy
- In-game: rubenwardy
- Location: Bristol, United Kingdom
- Contact:
Re: Wishes for Minetest 0.4.11 (or 0.5)
I am not sure what thread Lua is on, but Ithink that it should be on a thread that doesn't block how the server replies to the client. Slower reply times means more lag.
- HeroOfTheWinds
- Member
- Posts: 470
- Joined: Wed Apr 23, 2014 23:16
- GitHub: HeroOfTheWinds
- IRC: WindHero
- Location: Hawaii
Re: Wishes for Minetest 0.4.11 (or 0.5)
More or less. Basically, any way to make the logic for triggering and threading them more efficient. Of course, one of the largest problems is how people usually code them, but....Krock wrote:Explain please. Do you mean code cleanups?HeroOfTheWinds wrote:More efficient ABM's that cause less lag while playing on servers.
Nam ex spatio, omnes res venire possunt.
Why let the ground limit you when you can reach for the sky?
Back to college now, yay for sophomore year schedules. :P
Why let the ground limit you when you can reach for the sky?
Back to college now, yay for sophomore year schedules. :P
- Desour
- Member
- Posts: 1469
- Joined: Thu Jun 19, 2014 19:49
- GitHub: Desour
- IRC: Desour
- In-game: DS
- Location: I'm scared that if this is too exact, I will be unable to use my keyboard.
Re: Wishes for Minetest 0.4.11 (or 0.5)
I need seeds from dry shrub.
he/him; Codeberg; GitHub; ContentDB; public personal TODO list; "DS" is preferred (but often too short)
Re: Wishes for Minetest 0.4.11 (or 0.5)
Would love to see lockable chests and doors without adding a mod......... Mods work till a point where they are not updated or what they depend on is not updated. It sucks.......
- kaeza
- Moderator
- Posts: 2162
- Joined: Thu Oct 18, 2012 05:00
- GitHub: kaeza
- IRC: kaeza diemartin blaaaaargh
- In-game: kaeza
- Location: Montevideo, Uruguay
- Contact:
Re: Wishes for Minetest 0.4.11 (or 0.5)
Uhh... Locked chests and steel doors ("locked" doors) are part of the default game...freejack wrote:Would love to see lockable chests and doors without adding a mod......... Mods work till a point where they are not updated or what they depend on is not updated. It sucks.......
Your signature is not the place for a blog post. Please keep it as concise as possible. Thank you!
Check out my stuff! | Donations greatly appreciated! PayPal
Check out my stuff! | Donations greatly appreciated! PayPal
Re: Wishes for Minetest 0.4.11 (or 0.5)
sorry meant furnaces......... and I know steel doors I wanted wooden............I know picky....
- Desour
- Member
- Posts: 1469
- Joined: Thu Jun 19, 2014 19:49
- GitHub: Desour
- IRC: Desour
- In-game: DS
- Location: I'm scared that if this is too exact, I will be unable to use my keyboard.
Re: Wishes for Minetest 0.4.11 (or 0.5)
You cant play MT without mods.freejack wrote:Would love to see lockable chests and doors without adding a mod......... Mods work till a point where they are not updated or what they depend on is not updated. It sucks.......
If you think, you have no mod installed, say "/mods".
he/him; Codeberg; GitHub; ContentDB; public personal TODO list; "DS" is preferred (but often too short)
Re: Wishes for Minetest 0.4.11 (or 0.5)
I know I have mods....... I am saying it would be nice to have this in the API
- Wuzzy
- Member
- Posts: 4786
- Joined: Mon Sep 24, 2012 15:01
- GitHub: Wuzzy2
- IRC: Wuzzy
- In-game: Wuzzy
- Contact:
Re: Wishes for Minetest 0.4.11 (or 0.5)
This is way too high level to deserve dedicated API calls for that.
But the doors mods of minetest_game provides some utility functions. Look for doors.register_door in the source code.
But the doors mods of minetest_game provides some utility functions. Look for doors.register_door in the source code.
- rubenwardy
- Moderator
- Posts: 6972
- Joined: Tue Jun 12, 2012 18:11
- GitHub: rubenwardy
- IRC: rubenwardy
- In-game: rubenwardy
- Location: Bristol, United Kingdom
- Contact:
Re: Wishes for Minetest 0.4.11 (or 0.5)
There is no reason not to install mods. Also, quite a lot of mods written two years ago still work. Not a low of the API has changed.
- Mg
- Member
- Posts: 86
- Joined: Sun Mar 02, 2014 20:49
- GitHub: LeMagnesium
- IRC: ElectronLibre Mg
- In-game: Mg
- Location: Periodic Table
Re: Wishes for Minetest 0.4.11 (or 0.5)
Hello everyone,
I would like to add (in version 0.4.11, or 0.5, if it's possible) :
- Extinguish fire with water
- Enable/Disable fire (burning of flammable nodes) in minetest.conf
(Here is a modified version of fire mod :
It's a little modification, but I would want your opinion about it.)
- Better modstore
- Less bugs than in this version (I found one or two... from minetest core...)
I will probably post a new topic about the fire mod in a few days in the Features Discussion.
Thanks.
I would like to add (in version 0.4.11, or 0.5, if it's possible) :
- Extinguish fire with water
- Enable/Disable fire (burning of flammable nodes) in minetest.conf
(Here is a modified version of fire mod :
Spoiler
Code: Select all
-- minetest/fire/init.lua
minetest.register_node("fire:basic_flame", {
description = "Fire",
drawtype = "plantlike",
tiles = {{
name="fire_basic_flame_animated.png",
animation={type="vertical_frames", aspect_w=16, aspect_h=16, length=1},
}},
inventory_image = "fire_basic_flame.png",
light_source = 14,
groups = {igniter=2,dig_immediate=3,hot=3},
drop = 'fire:basic_flame',
walkable = false,
buildable_to = true,
damage_per_second = 4,
})
if minetest.setting_getbool("fire") == nil or minetest.setting_getbool("fire") == true then
minetest.register_node(":fire:basic_flame", {
after_place_node = function(pos, placer)
fire.on_flame_add_at(pos)
end,
after_dig_node = function(pos, oldnode, oldmetadata, digger)
fire.on_flame_remove_at(pos)
end,
})
fire = {}
fire.D = 6
-- key: position hash of low corner of area
-- value: {handle=sound handle, name=sound name}
fire.sounds = {}
function fire.get_area_p0p1(pos)
local p0 = {
x=math.floor(pos.x/fire.D)*fire.D,
y=math.floor(pos.y/fire.D)*fire.D,
z=math.floor(pos.z/fire.D)*fire.D,
}
local p1 = {
x=p0.x+fire.D-1,
y=p0.y+fire.D-1,
z=p0.z+fire.D-1
}
return p0, p1
end
function fire.update_sounds_around(pos)
local p0, p1 = fire.get_area_p0p1(pos)
local cp = {x=(p0.x+p1.x)/2, y=(p0.y+p1.y)/2, z=(p0.z+p1.z)/2}
local flames_p = minetest.find_nodes_in_area(p0, p1, {"fire:basic_flame"})
--print("number of flames at "..minetest.pos_to_string(p0).."/"
-- ..minetest.pos_to_string(p1)..": "..#flames_p)
local should_have_sound = (#flames_p > 0)
local wanted_sound = nil
if #flames_p >= 9 then
wanted_sound = {name="fire_large", gain=1.5}
elseif #flames_p > 0 then
wanted_sound = {name="fire_small", gain=1.5}
end
local p0_hash = minetest.hash_node_position(p0)
local sound = fire.sounds[p0_hash]
if not sound then
if should_have_sound then
fire.sounds[p0_hash] = {
handle = minetest.sound_play(wanted_sound, {pos=cp, loop=true}),
name = wanted_sound.name,
}
end
else
if not wanted_sound then
minetest.sound_stop(sound.handle)
fire.sounds[p0_hash] = nil
elseif sound.name ~= wanted_sound.name then
minetest.sound_stop(sound.handle)
fire.sounds[p0_hash] = {
handle = minetest.sound_play(wanted_sound, {pos=cp, loop=true}),
name = wanted_sound.name,
}
end
end
end
function fire.on_flame_add_at(pos)
--print("flame added at "..minetest.pos_to_string(pos))
fire.update_sounds_around(pos)
end
function fire.on_flame_remove_at(pos)
--print("flame removed at "..minetest.pos_to_string(pos))
fire.update_sounds_around(pos)
end
function fire.find_pos_for_flame_around(pos)
return minetest.find_node_near(pos, 1, {"air"})
end
function fire.flame_should_extinguish(pos)
if minetest.setting_getbool("disable_fire") then return true end
--return minetest.find_node_near(pos, 1, {"group:puts_out_fire"})
local p0 = {x=pos.x-2, y=pos.y, z=pos.z-2}
local p1 = {x=pos.x+2, y=pos.y, z=pos.z+2}
local ps = minetest.find_nodes_in_area(p0, p1, {"group:puts_out_fire"})
return (#ps ~= 0)
end
-- Ignite neighboring nodes
minetest.register_abm({
nodenames = {"group:flammable"},
neighbors = {"group:igniter"},
interval = 1,
chance = 2,
action = function(p0, node, _, _)
-- If there is water or stuff like that around flame, don't ignite
if fire.flame_should_extinguish(p0) then
return
end
local p = fire.find_pos_for_flame_around(p0)
if p then
minetest.set_node(p, {name="fire:basic_flame"})
fire.on_flame_add_at(p)
end
end,
})
-- Rarely ignite things from far
minetest.register_abm({
nodenames = {"group:igniter"},
neighbors = {"air"},
interval = 2,
chance = 10,
action = function(p0, node, _, _)
local reg = minetest.registered_nodes[node.name]
if not reg or not reg.groups.igniter or reg.groups.igniter < 2 then
return
end
local d = reg.groups.igniter
local p = minetest.find_node_near(p0, d, {"group:flammable"})
if p then
-- If there is water or stuff like that around flame, don't ignite
if fire.flame_should_extinguish(p) then
return
end
local p2 = fire.find_pos_for_flame_around(p)
if p2 then
minetest.set_node(p2, {name="fire:basic_flame"})
fire.on_flame_add_at(p2)
end
end
end,
})
-- Remove flammable nodes and flame
minetest.register_abm({
nodenames = {"fire:basic_flame"},
interval = 1,
chance = 2,
action = function(p0, node, _, _)
-- If there is water or stuff like that around flame, remove flame
if fire.flame_should_extinguish(p0) then
minetest.remove_node(p0)
fire.on_flame_remove_at(p0)
return
end
-- Make the following things rarer
if math.random(1,3) == 1 then
return
end
-- If there are no flammable nodes around flame, remove flame
if not minetest.find_node_near(p0, 1, {"group:flammable"}) then
minetest.remove_node(p0)
fire.on_flame_remove_at(p0)
return
end
if math.random(1,4) == 1 then
-- remove a flammable node around flame
local p = minetest.find_node_near(p0, 1, {"group:flammable"})
if p then
-- If there is water or stuff like that around flame, don't remove
if fire.flame_should_extinguish(p0) then
return
end
minetest.remove_node(p)
nodeupdate(p)
end
else
-- remove flame
minetest.remove_node(p0)
fire.on_flame_remove_at(p0)
end
end,
})
end
- Better modstore
- Less bugs than in this version (I found one or two... from minetest core...)
I will probably post a new topic about the fire mod in a few days in the Features Discussion.
Thanks.
- webdesigner97
- Member
- Posts: 1328
- Joined: Mon Jul 30, 2012 19:16
- GitHub: webD97
- IRC: webdesigner97
- In-game: webdesigner97
- Location: Cologne, Germany
- Contact:
Re: Wishes for Minetest 0.4.11 (or 0.5)
Water can already put out fires.Mg wrote:Hello everyone,
I would like to add (in version 0.4.11, or 0.5, if it's possible) :
- Extinguish fire with water
- Enable/Disable fire (burning of flammable nodes) in minetest.conf
(Here is a modified version of fire mod :It's a little modification, but I would want your opinion about it.)Spoiler
Code: Select all
-- minetest/fire/init.lua minetest.register_node("fire:basic_flame", { description = "Fire", drawtype = "plantlike", tiles = {{ name="fire_basic_flame_animated.png", animation={type="vertical_frames", aspect_w=16, aspect_h=16, length=1}, }}, inventory_image = "fire_basic_flame.png", light_source = 14, groups = {igniter=2,dig_immediate=3,hot=3}, drop = 'fire:basic_flame', walkable = false, buildable_to = true, damage_per_second = 4, }) if minetest.setting_getbool("fire") == nil or minetest.setting_getbool("fire") == true then minetest.register_node(":fire:basic_flame", { after_place_node = function(pos, placer) fire.on_flame_add_at(pos) end, after_dig_node = function(pos, oldnode, oldmetadata, digger) fire.on_flame_remove_at(pos) end, }) fire = {} fire.D = 6 -- key: position hash of low corner of area -- value: {handle=sound handle, name=sound name} fire.sounds = {} function fire.get_area_p0p1(pos) local p0 = { x=math.floor(pos.x/fire.D)*fire.D, y=math.floor(pos.y/fire.D)*fire.D, z=math.floor(pos.z/fire.D)*fire.D, } local p1 = { x=p0.x+fire.D-1, y=p0.y+fire.D-1, z=p0.z+fire.D-1 } return p0, p1 end function fire.update_sounds_around(pos) local p0, p1 = fire.get_area_p0p1(pos) local cp = {x=(p0.x+p1.x)/2, y=(p0.y+p1.y)/2, z=(p0.z+p1.z)/2} local flames_p = minetest.find_nodes_in_area(p0, p1, {"fire:basic_flame"}) --print("number of flames at "..minetest.pos_to_string(p0).."/" -- ..minetest.pos_to_string(p1)..": "..#flames_p) local should_have_sound = (#flames_p > 0) local wanted_sound = nil if #flames_p >= 9 then wanted_sound = {name="fire_large", gain=1.5} elseif #flames_p > 0 then wanted_sound = {name="fire_small", gain=1.5} end local p0_hash = minetest.hash_node_position(p0) local sound = fire.sounds[p0_hash] if not sound then if should_have_sound then fire.sounds[p0_hash] = { handle = minetest.sound_play(wanted_sound, {pos=cp, loop=true}), name = wanted_sound.name, } end else if not wanted_sound then minetest.sound_stop(sound.handle) fire.sounds[p0_hash] = nil elseif sound.name ~= wanted_sound.name then minetest.sound_stop(sound.handle) fire.sounds[p0_hash] = { handle = minetest.sound_play(wanted_sound, {pos=cp, loop=true}), name = wanted_sound.name, } end end end function fire.on_flame_add_at(pos) --print("flame added at "..minetest.pos_to_string(pos)) fire.update_sounds_around(pos) end function fire.on_flame_remove_at(pos) --print("flame removed at "..minetest.pos_to_string(pos)) fire.update_sounds_around(pos) end function fire.find_pos_for_flame_around(pos) return minetest.find_node_near(pos, 1, {"air"}) end function fire.flame_should_extinguish(pos) if minetest.setting_getbool("disable_fire") then return true end --return minetest.find_node_near(pos, 1, {"group:puts_out_fire"}) local p0 = {x=pos.x-2, y=pos.y, z=pos.z-2} local p1 = {x=pos.x+2, y=pos.y, z=pos.z+2} local ps = minetest.find_nodes_in_area(p0, p1, {"group:puts_out_fire"}) return (#ps ~= 0) end -- Ignite neighboring nodes minetest.register_abm({ nodenames = {"group:flammable"}, neighbors = {"group:igniter"}, interval = 1, chance = 2, action = function(p0, node, _, _) -- If there is water or stuff like that around flame, don't ignite if fire.flame_should_extinguish(p0) then return end local p = fire.find_pos_for_flame_around(p0) if p then minetest.set_node(p, {name="fire:basic_flame"}) fire.on_flame_add_at(p) end end, }) -- Rarely ignite things from far minetest.register_abm({ nodenames = {"group:igniter"}, neighbors = {"air"}, interval = 2, chance = 10, action = function(p0, node, _, _) local reg = minetest.registered_nodes[node.name] if not reg or not reg.groups.igniter or reg.groups.igniter < 2 then return end local d = reg.groups.igniter local p = minetest.find_node_near(p0, d, {"group:flammable"}) if p then -- If there is water or stuff like that around flame, don't ignite if fire.flame_should_extinguish(p) then return end local p2 = fire.find_pos_for_flame_around(p) if p2 then minetest.set_node(p2, {name="fire:basic_flame"}) fire.on_flame_add_at(p2) end end end, }) -- Remove flammable nodes and flame minetest.register_abm({ nodenames = {"fire:basic_flame"}, interval = 1, chance = 2, action = function(p0, node, _, _) -- If there is water or stuff like that around flame, remove flame if fire.flame_should_extinguish(p0) then minetest.remove_node(p0) fire.on_flame_remove_at(p0) return end -- Make the following things rarer if math.random(1,3) == 1 then return end -- If there are no flammable nodes around flame, remove flame if not minetest.find_node_near(p0, 1, {"group:flammable"}) then minetest.remove_node(p0) fire.on_flame_remove_at(p0) return end if math.random(1,4) == 1 then -- remove a flammable node around flame local p = minetest.find_node_near(p0, 1, {"group:flammable"}) if p then -- If there is water or stuff like that around flame, don't remove if fire.flame_should_extinguish(p0) then return end minetest.remove_node(p) nodeupdate(p) end else -- remove flame minetest.remove_node(p0) fire.on_flame_remove_at(p0) end end, }) end
- Better modstore
- Less bugs than in this version (I found one or two... from minetest core...)
I will probably post a new topic about the fire mod in a few days in the Features Discussion.
Thanks.
Visit me: webD97.de | @GitHub | @DeviantArt
Mods: StreetsMod | Vehicles
Featured from my blog: Dockerize the Minetest server
On my own behalf: Chameleon - A PHP image manipulation library built around GD
Mods: StreetsMod | Vehicles
Featured from my blog: Dockerize the Minetest server
On my own behalf: Chameleon - A PHP image manipulation library built around GD
Who is online
Users browsing this forum: No registered users and 8 guests