Idea: instead of manually deleting them, let the Engine do it.
How: using a simple LBM that will do it once that the map block is loaded, and never again.
What do I need to know?
- the removed mod name, e.g. "testmod"
- the unknown node(s) name(s).
-- digging an unknown node will display its name in the chat and/or console (0.4.16).
Unknown node's name, e.g. "testmod:redcube"
Now, since it's on the ground, I want it to be replaced with "default:dirt".
Code (CC0):
Code: Select all
minetest.register_lbm({
name = ":lbm1",
nodenames = {"testmod:redcube", "testmod:bluecube", "insert:namehere"},
-- you can add as many entries you need
action = function(pos)
minetest.set_node(pos, {name = "default:dirt"}) -- replacer node name
end,
})
Just add another LBM after the first (CC0):
Code: Select all
minetest.register_lbm({
name = ":lbm2",
nodenames = {"testmod:yellowcube", "testmod:pinkcube", "insert:namehere"},
-- you can add as many entries you need
action = function(pos)
minetest.set_node(pos, {name = "air"}) -- replacer node name
end,
})
About the unknown nodes that might be in your inventory, trash them while in creative mode or open ..minetest/worlds/your_worlds_name/players/your_characters_name
CTRL+F ---> testmod:redcube ---> replace "Item testmod:redcube" with: Empty
Quick and dirty, but it worked for me; maybe it will do for you as well.
-- Edit
The original post was based on ABMs use, thanks to Naj for telling me about LBMs.