This texture pack contains some bizarre color choices, in particular regarding wood:
Apple tree stems are yellow and dark red
Jungle tree stems are light red and dark red
Pine tree stems are red and gray.
Edit: The colors are intentionally setup like that. According to the author, this texture pack is a joke and intentionally made to look bad. The following criticism does not apply anymore since the author fixed it, but I am keeping it here for posterity, since the discussion below this comment makes little sense without the context:
The worst color choice though is that plantlike grass nodes have the exact same color as the top of dirt-with-grass nodes on which they usually grow, making them almost invisible. That detail alone makes this texture pack unsuitable for gameplay in my opinion, at least in biomes that contain plantlike grass nodes.
The images are grayscale bcause Minetest is not giving me the actual color of the pixel or even node I hit. I started this mod thinking that the engine may expose a node's minimap color – but currently it only does this on the client side. So I am basically making the colors up myself. I could probably get the color by parsing server-side textures files, but I really think I should not have to. Funnily enough, this is a stylistic choice – I only want the minimap olor of the node so I can assign an appropriate grayscale value.
Objects and players do not have to be invisible. The main issue here is that I would be hitting their collision boxes only, i.e. they would appear as cuboids. For a game in which players or entities appear as boxes or ghostly shadows, this could work. Hitboxes being as crude as they are is an engine limitation.
Custom node shapes work, but only as far as their collision box is concerned. As you can see in the screenshots, tables and chairs look perfectly fine.
Raytracing is slow, it is just the nature of the matter. Raytracing will always be slow, unless I reduce quality. Maybe I can do that, but I think waiting a few seconds for a photo of a scene in a game is not too much. You have to wait a bit of time for in-game map item generation in mcl_maps and xmaps as well, or for anything that emerges a lot of terrain.
That making a picture blocks the server is mostly the fault of the Minetest engine right now. For example, async environments do not get any usable vectors (metatables are missing). However, if I had a way to spread the calculation out over time to only block the server for non-noticeable amounts of time, I would certainly prefer that.
hyperbole such as "x will always break", or "x will break again", or "x will keep changing" isn't particularly helpful to a technical discussion, 'cause often it's factually incorrect
@ancientmariner my complaint is not necessarily about about you (the current maintainer) in particular – even though you do have a reputation of merging low-effort contributions that add new bugs or even enable new exploits. Previous maintainers of MineClone 2 and its forks have also broken things time and time again – and IIRC they also claimed every time that it was a one-time thing. Back then also most breakage I saw was not technically necessary … you just approved much more of it at once.
I fully expect the next maintainer to also break some stuff and then claim that it was a one-time-thing. I don't quite expect them (or you, for that matter) to break stuff as far as the item and texture breakages did, because I consider both of them the same type of beginner mistake in terms of systems engineering. (In my experience, the only people who do this kind of mistake more-than-a-few times are so arrogant neither of us could match a fraction of their raw ego.)
As far as my experience goes, everyone who breaks stuff needlessly always seems to claim that it is temporary, a one-time-change, that there are workarounds, that others should just fix what is broken now etc. … this is a common trope – we need not discuss it further, I have seen everything.
The fact of the matter is that “converting all hard-to-get gems into common blue dye” was a 100% avoidable part of the refactoring that happened: Simply using item names and their aliases correctly (exactly like every other Minetest mod or game does) would have avoided it. So there is no gain at all – just low quality contributions being merged (instead of being rejected for breaking stuff unnecessarily).
I often agree on the importance of the things you care about, but will sometimes come to different conclusions on what is the best path forward. I appreciated hearing your perspective on this a few months ago when you raised it on IRC, and I'm always happy to get feedback on how we can improve thing
I appreciate you listening. Just to note it here for posterity: For both the item name and the texture name thing (which again, breaks about every single MineClone2-specific texture pack that has worked for years before) I have suggested multiple solutions that could have achieved a very similar result, but would not have resulted in any breakage. Those solutions would have been a tiny bit of more work on the part of the MineClone 2 contributors – from my POV people were not willing to do the work to fix the mess they caused, demanding others do it. It is probably not fun to do it.
In my opinion, it is the maintainers most important job to make sure that contributions meet quality standards, e.g. not needlessly break things, to not alienate people using the software. Precisely because MineClone 2 keeps breaking stuff, I do not think it is a good foundation for developing a mod depending on it.
Just in case that someone responds to this that “progress needs sacrifice” or “this is still in beta”: IIRC I have, for all of these cases, pointed out how to implement the desired change without breaking user worlds, texture packs, or third-party mods. What is done here is not progress … it is doing the first thing that comes to mind and doubling down on that solution even if someone points out that it can be done better with less code or effort (in some cases, simply by not doing a questionable refactoring).
If you want to see how it can be done differently, just look at the actual Minetest engine, which actually does walk back changes that turn out to be ill-advised if people make enough noise about it before the next release. Minetest engine development is by no means a quality software engineering example, but contributions are often enough rejected, taken back or fixed if they unintentionally break stuff that used to work (not if they break it intentionally though). Compare this to MineClone2, where if a contributor adds a new feature (or even just refactors some code) and breaks some existing functionality, this is apparently entirely okay (as evidenced by the lapis conversion dye-saster).
Anyway, if you play this game without a texture pack, these kind of things will only occasionally annoy you. If you play it with a texture pack though, expect frequent breakage. And if you use some third-party mod that depends on some stuff in MineClone2, expect it to randomly break within about a year or so (and expect it to stay broken until the developer of that mod updates it to unbreak it).
Edit 2023-11-30:Mineclonia is a fork of MineClone2 with more Minecraft-like features that uses much less RAM. Mineclonia runs on devices on which MineClone2 crashes, only lacking music and the hamburger (which is not in Minecraft).
MineClone2 replicates Minecraft gameplay. It mostly works. Yet, I can not recommend the game, because of questionable dev practices.
Reasons:
Items turn into other items in new versions: Lapis (a rare gem) items turned into blue dye (made from flowers). In a refactoring item names got shuffled, and the devs did not understand item aliases; the fix was to add a recipe to make lapis from blue dye and disable crafting blue dye from flowers.
Texture names change: Texture packs and mods that depends on MineClone2 texture names break in new versions. Textures had stable file names originally, but the dev team put all files in one folder instead of mod's texture folders, with filenames prefixed with mod names. Whenever this is done, it breaks every usage of a texture file name in texture packs and other mods, which then need to be updated.
Mods are ill-defined and often tightly coupled: New functionality is often added to an existing mod, even if it only makes sense from an aesthetic and not from an architecture point of view. When functionality is rewritten in an incompatible way, in MineClone2 the new implementation often keeps the mod name. This makes it impossible to depend on the presence of certain features. You can not depend on the presence of crying obsidian, as it was added to mcl_core instead of being made its own mod – while the respawn anchor implementation was added to mcl_beds.
I believe the reason for all of these decisions is the same: Contributions are generally valued – even if they are so awful that doing nothing would yield a better experience for players and creators of texture-packs and third-party mods.
Do you mean that one could match seeds and plant blocks by the method of if you can make one out of the other? I am unsure how this is supposed to work, please elaborate.
This mod makes it possible to save and load areas in a Minetest world as schematic files.
With it players can build structures in Minetest and save the result to a file in their world folder.
The mod is easy to understand and does not depend on any game – not even minetest_game.
In my opinion that makes it an excellent choice to create schematics, even for beginner mod developers.
There even exist special nodes for common use cases – for example, when air should not be placed in a schematic.
Saving a schematic:
You place a schemedit node at a corner of the area that you wish to save as a schematic.
You click the node, then specify the area size and filename in a form. The area bounds can be clearly visible.
You click a button to save the area as a schematic. It will be saved in the folder schems, which is located in the folder of the world you created it in.
Loading a schematic:
You put the schematic that you want to load in the folder schems, which should be located in the folder of the world you want it to be in. (Create it if it does not exist.)
You place a schemeedit node at a corner of the the area where you wish to load a schematic.
You click the node, then specify the filename in a form.
I have tested this mod with Mineclonia and can not recommend it.
This mod limits you to the spawn chunk, to increase difficulty.
This seemed true at first glance. The movement blocking felt a bit too jerky though.
It also builds a nice obsidian marker around your 16-by-16 area of freedom (that you cannot mine).
When I entered a new world with this mod, I found no obsidian marker, but a bunch of server errors showed up during map generation.
The second time I entered that world, I did find an obsidian border. I assume that the placement code should wait until mapgen is done.
It works by constraining your position within the chunk, and disallowing any mining and building outside the chunk.
Mined nodes outside the spawn chunk are immediately restored, but since the nodes drop as items, this means that players have an infinite supply of everything that they can mine, which makes resource gathering absurdly easy. It is also trivial to move outside of the chunk with a boat, to explore the world and gather literally limitless resources; upon exiting the boat, the player is teleported back to the spawn chunk.
I'm not sure map generation is spread across all cores.
I am unsure too – I actually suspect it may not be spread.
The progressive generation mode is the most noticeable and mandatory for single-core processors which doesn't benefit from the map generation dedicated thread. It is recommended if the default mapgen mode doesn't run fast enough and you don't mind the landscape being unprocessed during a few (or even tenths) seconds by automatically adjusting to the performance of the server to slow down. But it globally takes a lot more time.
Interactivity in gameplay is much more important for me than speed of map generation. Invisible walls for not-yet-generated parts of the world can be okay if I am not exploring too much – but the kind of server lag I experienced without “progressive generation” was so bad that nodes took tens of seconds to appear in or disappear from my inventory and falling nodes hovered for quite a time.
Thank you for taking the time to write a detailed reply!
This mod isn't really designed simple nodes like that, it's ment to salvage parts from complicated stuff like technic machines. If there's multiple recipes registered for an item like in the examples you mentioned, it doesn't know which one the item(s) came from and will simply select the last one registered.
I understand the technical reason for the behaviour I observed, but everything turning into slabs was still a bummer. Maybe you could sort the materials on how complex it is to craft them and then always give the output that has the least amount of crafting recipes. That way I could get tree or sand at least, as both have no crafting recipes AFAIK.
The bench eats up extra material (so if you put in 2 bronze blocks it only decrafts one but takes both), which is something I really should fix. But again I probably won't because I'm lazy.
I hope this mod is still somewhat useful to you!
It could be useful … if it did not eat the extra materials. The way it is now though, I will definitely not use it.
Thank you for taking the time to write a detailed reply!
This mod basically works by overriding day/night ratio for the player who uses it. This means that the sun and moon do still move, it is just light or dark permanently.
The mod uses the /ptime command to do three things:
Enter the command repeately to cycle between the modes.
A possible improvement for this mod would be for the /ptime command to take a parameter, like /ptime day or /ptime night or /ptime disable. That way users would no longer have to guess what the command will do.
The stair pick idea is nice, However, I was not able to create corner stairs or upside down stairs. This means I actually do have to craft and place stairs, which I wanted to avoid.
There is a slight visual flicker when a node is turned into a stair. I think this happens because the node is being removed before it is placed. Since the code is old (2013), I assume that back then it might have been necessary, but nowadays I would use minetest.set_node()to get flicker-free stair picking.
Minetest before version 5.5 claimed to support a wide variety of texture formats: PNG, JPG, BMP, TGA, PCX, PPM, PSD, WAL, RGB. All except PNG, JPG, BMP were removed when hecks gutted the Irrlicht library to create Irrlichtmt. Support for TGA was only restored after I complained, since it is both useful (very simple format useful for texture generation & in-place texture editing, even uncompressed TGA files are smaller than PNG for very small textures) and in use in MineClone2 (in mcl_maps).
The implementation of minetest.encode_png() is very wasteful. You can check this yourself: Just use optipng on the checkerboard texture that devtest generates for the PNG test nodes … and reduce its size to 5% of the size that MInetest writes. Also for a lot of use cases an API that takes a color palette would have made much more sense than a full RGBA. My personal suspicion is that it was made “just because” and without any deep understandng of texture formats or needs of mod authors, but I bet you can draw your own conclusions when you look at the issues about texture formats in Minetest and Irrlicht.
Btw, the [png modifier is a hilarious addition. I think it has about 100 bytes of overhead before it starts to encode a single pixel. This makes it both unsuited for small images and inefficient for large ones. It is so bad that you could literally make a texture modifier for plain PBM and would have a human-readable bitmap texture modifier that used less storage space for small textures up to like 10×10 textures or so.
I personally will not put effort into supporting & testing older than the latest release, however anyone is free to send me a patch if the modifcations are minor!
Does your package have a git repository? If so, please link it.
Long node names are hard to read though; the mod should use line breaks.
This mod slowed loading the game a lot. This was fixed and I can recommend it now.
Part of my earlier critcism is still relevant and there was a conversation, so my previous review can be read below. Note that I have since put the mod tga_encoder on ContentDB, which makes it trivial to generate textures for Minetest <5.5.
This mod does exactly what the description says.
However, it contains three technical flaws:
First, textures are regenerated every time a world is loaded. This is wasteful and not necessary. This is probably what makes it very slow.
Second, textures are given via the texture modifier [png. This is wasteful and does not degrade gracefully in older versions.
Third, textures are generated as RGBA, even though they are simple monochrome bitmaps.
Here is how I would fix those:
First, write the textures to the filesystem instead of using the [png texture modifier.
Second, generate the text textures only if they do not exist on the filesystem yet.
Third, use TGA as the file format (~20 bytes header, dump pixels, write footer).
This should result in a mod that is much faster and also compatible with older Minetest versions.
I expected something I would consider funny.
Not being able to see plantlike nodes because of poor color choices in a texture pack is something I consider not funny.
To the person who rated this “unhelpful”: Which part of my review did you not find helpful?
I think the fact that plantlike nodes become invisible is kinda important for a texture pack.
But then again I know I have issues with contrast vision – so maybe you think it is wrong?
This mod is pretty nice and works as advertised, mostly.
When I tried using glass slabs, it revealed several issues:
This mod does exactly what the description promises.
The copper rails look a bit weird sometimes because they do not connect to normal rails.
Copper rail curves do not work; if you want to connect two copper rail lines at a 90 degree angle, you have to place a normal rail node in the corner.
Placing a large brick node next to a large brick node horizontally creates the appearance of a brick that is two nodes wide and one node high.
This effect is subtle and looks quite nice with walls that are several nodes high.
This texture pack contains some bizarre color choices, in particular regarding wood:
Edit: The colors are intentionally setup like that. According to the author, this texture pack is a joke and intentionally made to look bad. The following criticism does not apply anymore since the author fixed it, but I am keeping it here for posterity, since the discussion below this comment makes little sense without the context:
appgurueu/luatic has shown me how to spread calculations over several server steps using coroutines: https://gist.github.com/appgurueu/f566cafa9482b0fc74eb6050417e3ed5
To elaborate on this (I am the author of Xcam):
mcl_maps
andxmaps
as well, or for anything that emerges a lot of terrain.The leg boat can walk and it looks really nice how this is done.
The leg boat can climb well – but looks a bit silly while doing it.
Entirely unlike what you might expect, the leg boat does not float.
I would like this mod even more if the boat had some more legs (six?).
Also I have noticed a bug: Sometimes part of a leg is black while climbing.
@ancientmariner my complaint is not necessarily about about you (the current maintainer) in particular – even though you do have a reputation of merging low-effort contributions that add new bugs or even enable new exploits. Previous maintainers of MineClone 2 and its forks have also broken things time and time again – and IIRC they also claimed every time that it was a one-time thing. Back then also most breakage I saw was not technically necessary … you just approved much more of it at once.
I fully expect the next maintainer to also break some stuff and then claim that it was a one-time-thing. I don't quite expect them (or you, for that matter) to break stuff as far as the item and texture breakages did, because I consider both of them the same type of beginner mistake in terms of systems engineering. (In my experience, the only people who do this kind of mistake more-than-a-few times are so arrogant neither of us could match a fraction of their raw ego.)
As far as my experience goes, everyone who breaks stuff needlessly always seems to claim that it is temporary, a one-time-change, that there are workarounds, that others should just fix what is broken now etc. … this is a common trope – we need not discuss it further, I have seen everything.
The fact of the matter is that “converting all hard-to-get gems into common blue dye” was a 100% avoidable part of the refactoring that happened: Simply using item names and their aliases correctly (exactly like every other Minetest mod or game does) would have avoided it. So there is no gain at all – just low quality contributions being merged (instead of being rejected for breaking stuff unnecessarily).
I appreciate you listening. Just to note it here for posterity: For both the item name and the texture name thing (which again, breaks about every single MineClone2-specific texture pack that has worked for years before) I have suggested multiple solutions that could have achieved a very similar result, but would not have resulted in any breakage. Those solutions would have been a tiny bit of more work on the part of the MineClone 2 contributors – from my POV people were not willing to do the work to fix the mess they caused, demanding others do it. It is probably not fun to do it.
In my opinion, it is the maintainers most important job to make sure that contributions meet quality standards, e.g. not needlessly break things, to not alienate people using the software. Precisely because MineClone 2 keeps breaking stuff, I do not think it is a good foundation for developing a mod depending on it.
I have released a new version that should fix the dupe. Please test the new version and adjust your criticism accordingly.
Just in case that someone responds to this that “progress needs sacrifice” or “this is still in beta”: IIRC I have, for all of these cases, pointed out how to implement the desired change without breaking user worlds, texture packs, or third-party mods. What is done here is not progress … it is doing the first thing that comes to mind and doubling down on that solution even if someone points out that it can be done better with less code or effort (in some cases, simply by not doing a questionable refactoring).
If you want to see how it can be done differently, just look at the actual Minetest engine, which actually does walk back changes that turn out to be ill-advised if people make enough noise about it before the next release. Minetest engine development is by no means a quality software engineering example, but contributions are often enough rejected, taken back or fixed if they unintentionally break stuff that used to work (not if they break it intentionally though). Compare this to MineClone2, where if a contributor adds a new feature (or even just refactors some code) and breaks some existing functionality, this is apparently entirely okay (as evidenced by the lapis conversion dye-saster).
Anyway, if you play this game without a texture pack, these kind of things will only occasionally annoy you. If you play it with a texture pack though, expect frequent breakage. And if you use some third-party mod that depends on some stuff in MineClone2, expect it to randomly break within about a year or so (and expect it to stay broken until the developer of that mod updates it to unbreak it).
Edit 2023-11-30: Mineclonia is a fork of MineClone2 with more Minecraft-like features that uses much less RAM. Mineclonia runs on devices on which MineClone2 crashes, only lacking music and the hamburger (which is not in Minecraft).
MineClone2 replicates Minecraft gameplay. It mostly works. Yet, I can not recommend the game, because of questionable dev practices.
Reasons:
Items turn into other items in new versions: Lapis (a rare gem) items turned into blue dye (made from flowers). In a refactoring item names got shuffled, and the devs did not understand item aliases; the fix was to add a recipe to make lapis from blue dye and disable crafting blue dye from flowers.
Texture names change: Texture packs and mods that depends on MineClone2 texture names break in new versions. Textures had stable file names originally, but the dev team put all files in one folder instead of mod's texture folders, with filenames prefixed with mod names. Whenever this is done, it breaks every usage of a texture file name in texture packs and other mods, which then need to be updated.
Mods are ill-defined and often tightly coupled: New functionality is often added to an existing mod, even if it only makes sense from an aesthetic and not from an architecture point of view. When functionality is rewritten in an incompatible way, in MineClone2 the new implementation often keeps the mod name. This makes it impossible to depend on the presence of certain features. You can not depend on the presence of crying obsidian, as it was added to mcl_core instead of being made its own mod – while the respawn anchor implementation was added to mcl_beds.
I believe the reason for all of these decisions is the same: Contributions are generally valued – even if they are so awful that doing nothing would yield a better experience for players and creators of texture-packs and third-party mods.
Do you mean that one could match seeds and plant blocks by the method of if you can make one out of the other? I am unsure how this is supposed to work, please elaborate.
Many other games give the player endless excuses for lacking skill:
Players can thus blame random happenstance. The truth is, obviously, that in these cases, the fault lies with the player:
“NodeCore Skyhell” is so unlike all these games that as the player it is extremely difficult to blame anyone else for your skill issues.
As kimapr pointed out on IRC a while ago this is a different kind of hard than Exile, because in Exile you can blame the environment.
TL;DR: If you think NodeCore is too forgiving and you like knowing that everything is your own fault, give NodeCore Skyhell a try.
Edit: I would appreciate if the person who rated this review as not helpful would tell me why they thought so.
Astrobe, in which mod do you use fire for a similar effect?
PedroMerruM, your problems seem like an engine issue to me. Minetest should not crash when rendering lots of nodeboxes.
If you have not yet done so, please open an issue on Minetest's issue tracker: https://github.com/minetest/minetest/issues
I do not understand your question. If you want me to, try asking again in a more specific manner.
Axel-782 does the crash also occur if no leaves are visible, e.g. in a game without trees?
Axel-782, your crash problem might be a Minetest engine issue.
If you have not yet done so, please report the crash on Minetest's issue tracker: https://github.com/minetest/minetest/issues
I feel very sorry and slightly amused for having created a dupe exploit. It was totally an accident! I might be able to fix it.
Your idea of a general crop mod seems nice, but for that I would need some general way to match seeds, plants and soil.
Do you know how to do that?
This mod makes it possible to save and load areas in a Minetest world as schematic files. With it players can build structures in Minetest and save the result to a file in their world folder.
The mod is easy to understand and does not depend on any game – not even
minetest_game
. In my opinion that makes it an excellent choice to create schematics, even for beginner mod developers. There even exist special nodes for common use cases – for example, when air should not be placed in a schematic.Saving a schematic:
schems
, which is located in the folder of the world you created it in.Loading a schematic:
schems
, which should be located in the folder of the world you want it to be in. (Create it if it does not exist.)I have tested this mod with Mineclonia and can not recommend it.
This seemed true at first glance. The movement blocking felt a bit too jerky though.
When I entered a new world with this mod, I found no obsidian marker, but a bunch of server errors showed up during map generation.
The second time I entered that world, I did find an obsidian border. I assume that the placement code should wait until mapgen is done.
Mined nodes outside the spawn chunk are immediately restored, but since the nodes drop as items, this means that players have an infinite supply of everything that they can mine, which makes resource gathering absurdly easy. It is also trivial to move outside of the chunk with a boat, to explore the world and gather literally limitless resources; upon exiting the boat, the player is teleported back to the spawn chunk.
I am unsure too – I actually suspect it may not be spread.
Interactivity in gameplay is much more important for me than speed of map generation. Invisible walls for not-yet-generated parts of the world can be okay if I am not exploring too much – but the kind of server lag I experienced without “progressive generation” was so bad that nodes took tens of seconds to appear in or disappear from my inventory and falling nodes hovered for quite a time.
Thank you for taking the time to write a detailed reply!
I understand the technical reason for the behaviour I observed, but everything turning into slabs was still a bummer. Maybe you could sort the materials on how complex it is to craft them and then always give the output that has the least amount of crafting recipes. That way I could get tree or sand at least, as both have no crafting recipes AFAIK.
It could be useful … if it did not eat the extra materials. The way it is now though, I will definitely not use it.
Thank you for taking the time to write a detailed reply!
I really like the concept; I thought this mod could provide some kind of “undo” for when I craft more than I need.
Then I crafted 4 tree into 16 wood, put it into the decrafting bench and got 2 wooden slabs.
Then I put 4 sandstone blocks in the decrafting bench and got 2 sandstone slabs.
Then 2 bronze blocks turned into 2 bronze slabs and saw the pattern.
The name is wrong: This mod only adds a chest with creative inventory items.
There exists a setting to make the chest contain everything. It is off by default.
I wasted several minutes of my life with this mod because of a useless default.
Note: This mod works well with MineClone2 / MineClone5 / Mineclonia.
It is not needed there though – the waterlily node has the same purpose.
It seems to me that the “Run your first program” instructions must be done after the “Write your first program” instructions to avoid a crash.
Note that several of the examples do not work if your world does not have the mods
vector3
andworldedit
.Why is this mod not available for Minetest 5.5+?
I have encountered no other Minetest game yet that felt so much like a survival challenge.
In Exile, simply not dying all the time means that a player is doing something right.
Building an actual house is a challenge – I managed to live in a tiny cave.
Survival tip: Stay warm and make sure you have drinking water.
This mod basically works by overriding day/night ratio for the player who uses it. This means that the sun and moon do still move, it is just light or dark permanently.
The mod uses the
/ptime
command to do three things:Enter the command repeately to cycle between the modes.
A possible improvement for this mod would be for the
/ptime
command to take a parameter, like/ptime day
or/ptime night
or/ptime disable
. That way users would no longer have to guess what the command will do.This changes how Minetest works in an interesting way. I suggest to try it out!
I found the following issues with Minetest Game that show that this mod needs work:
The stair pick idea is nice, However, I was not able to create corner stairs or upside down stairs. This means I actually do have to craft and place stairs, which I wanted to avoid.
There is a slight visual flicker when a node is turned into a stair. I think this happens because the node is being removed before it is placed. Since the code is old (2013), I assume that back then it might have been necessary, but nowadays I would use
minetest.set_node()
to get flicker-free stair picking.This mod created server lag with default naturalslopeslib settings, on an 8-core machine. IMO these should be adjusted accordingly.
If interacting with the world in singleplayer mode becomes extremely laggy with this mod active, change the naturalslopeslib settings:
Changing “Generation Method” to “Progressive” lead to a non-laggy game. You can also disable “Shape update on generation” to fix this.
Why would dynamic media be needed here?
Minetest before version 5.5 claimed to support a wide variety of texture formats: PNG, JPG, BMP, TGA, PCX, PPM, PSD, WAL, RGB. All except PNG, JPG, BMP were removed when hecks gutted the Irrlicht library to create Irrlichtmt. Support for TGA was only restored after I complained, since it is both useful (very simple format useful for texture generation & in-place texture editing, even uncompressed TGA files are smaller than PNG for very small textures) and in use in MineClone2 (in
mcl_maps
).The implementation of
minetest.encode_png()
is very wasteful. You can check this yourself: Just use optipng on the checkerboard texture that devtest generates for the PNG test nodes … and reduce its size to 5% of the size that MInetest writes. Also for a lot of use cases an API that takes a color palette would have made much more sense than a full RGBA. My personal suspicion is that it was made “just because” and without any deep understandng of texture formats or needs of mod authors, but I bet you can draw your own conclusions when you look at the issues about texture formats in Minetest and Irrlicht.Btw, the
[png
modifier is a hilarious addition. I think it has about 100 bytes of overhead before it starts to encode a single pixel. This makes it both unsuited for small images and inefficient for large ones. It is so bad that you could literally make a texture modifier for plain PBM and would have a human-readable bitmap texture modifier that used less storage space for small textures up to like 10×10 textures or so.Does your package have a git repository? If so, please link it.
I tried this mod out and did not expect much from such relatively simple changes to lighting mechanics.
Then, while playing Minetest, I was amazed how much nicer cave exploration felt with a wielded torch.
This mod makes the world a lot more literal.
Long node names are hard to read though; the mod should use line breaks.
This mod slowed loading the game a lot. This was fixed and I can recommend it now.
Part of my earlier critcism is still relevant and there was a conversation, so my previous review can be read below. Note that I have since put the mod
tga_encoder
on ContentDB, which makes it trivial to generate textures for Minetest <5.5.This mod does exactly what the description says.
However, it contains three technical flaws:
First, textures are regenerated every time a world is loaded. This is wasteful and not necessary. This is probably what makes it very slow. Second, textures are given via the texture modifier [png. This is wasteful and does not degrade gracefully in older versions. Third, textures are generated as RGBA, even though they are simple monochrome bitmaps.
Here is how I would fix those:
First, write the textures to the filesystem instead of using the [png texture modifier. Second, generate the text textures only if they do not exist on the filesystem yet. Third, use TGA as the file format (~20 bytes header, dump pixels, write footer).
This should result in a mod that is much faster and also compatible with older Minetest versions.
Arkatron I recently changed the collision box of bushy leaves to be the same as a full node: https://git.minetest.land/erlehmann/bushy_leaves/pulls/2
Do you want the mod to have an option to change between different collision boxes so you can continue making traps?