As a moderator on the reigning most popular long term server of Minetest (held its own for several years, though many players on other servers despise the type of persons they see on it for some reason), on reports from other staff, and the realization that banned players keep coming back to the game and causing issues, I realized that the database can only hold so many ban entries/information before it resets itself, and those freshly banned or very troublesome players come back to the game before they've calmed down.
To combat this space issue, there are a variety of methods you can use.
One is compression, using the functions built into the Minetest LuaJIT 5.1 beta 3 addon subsystem, or the C++ engine for mapblock/chunk compression (not the acclaimed pglz, agiannis, LZ77, K5, ZPAQ, or a trained Zstd algorithm like how Facebook and other data aggrigators use unfortunately).
Another is increasing the database size, or splitting it up into separate parts that each are capable of holding more total or specific storage, for example the bans would stick around, but the ban reasons would fill up and overwrite the first entries or reset instead of releasing all those players back into the game.
And I'm sure there are lots of other methods that can be used to make this ubiquitously used mod better, but I'm no expert.
Spamming symbols like comma, and semicolon in the filename when saving causes that number of errors to spam user clients, and can be used to create massive table entries inside the file listing that are moderately broken. This can be used to crash clients and fill the memory of the server potentially. If writing functions into the table inside the file name this issue or another bug might be able to call on the arbitrary function data from elsewhere in the server's LuaJIT addon subsystem execution environment. Creating a restricted file name length may not solve the issue, as mods and custom setups can create shortened global variables which still allow execution of the assigned functions. Multiple laptop mod machine memories can also be harnessed to distribute the amount of code needed for exploitation. Simply shortening file names might not be a solution.
Nice, but I feel like the algorithm could be improved.
It would be even more incredible if we could pick between Kruskal's, Prim's Modified, Recursive Backtracking, and Hunt-and-Kill algorithms, as well as it being able to place 1/16 cut block slabs as walls!
It would be nice if the Flight Potion had reduced fall damage and low gravity effects when it wore out though, as if it were a drug with a non-instantaneous falloff period.
Neat feature, but it can spam the chat and log with errors
There is a deprecation warning about use_texture_alpha clipping for this mod affecting:
"pedology_ice_pure.png" of pedology:ice_pure_cube
"pedology_ice_pure.png" of pedology:ice_pure_doublepanel
"pedology_ice_pure.png" of pedology:ice_pure_halfstair
"pedology_ice_pure.png" of pedology:ice_pure_micropanel
"pedology_ice_pure.png" of pedology:ice_pure_microslab
"pedology_ice_pure.png" of pedology:ice_pure_nanoslab
"pedology_ice_pure.png" of pedology:ice_pure_panel
"pedology_ice_pure.png" of pedology:ice_pure_thinstair
I only have 4 noteworthy issues with it currently:
It spams the chat and debug.txt with thousands of Warnings about textures and other issues due to a deprecation change prior to MT 5.5.0.
Edit: Mod configuration might already cover topic [It should have a better way of figuring out where to put bones boxes instead of dropping all the player's items on the track when run over.]
It should be able to do client-side simulation and federated synchronization of the player position and movement so its not so glitchy on bandwidth limited servers, broadband connections, or thread-limited execution environments which may skip instructions.
Edit: trains not provided by advtrains [It needs a few train versions that work over longer distances at higher speeds, and also in environments without atmosphere, to keep a player from suffocating in otherworlds.]
Useful on technic, pipeworks, mesecons, digilines servers
For infinite diamond generators, however, none of these servers want to install a mod like this because having infinite diamonds would be overpowered for how easy it is to get the coal from the cooked trunks.
To remedy this, I think a number of grinding, mixing, refining, extraction, cooking, and compression steps (at low yield in various steps) could be added in order to make the crafting pipeline much slower and more difficult if someone wanted to generate the end coal lump product in order to turn that into diamonds or other materials like diatom structured graphyne (mod concept in voting stage).
For example, it could be made that the mod detects these other mods, and switches recipes on these servers. An example recipe could be something like Wood Trunks > Ground Into Wet Mulch > Cooked to Dry Mulch > Magnet Extractor machine removes metallic fragments > Ground into Sawdust > Mixed with Water forming Slurry > Slurry Refined into Stock > Wood Stock Cooked to Wood Powder > Powder Extracted into Coal Dust, then finally someone can compress that to get coal lumps. The processes dealing with liquid slurries and chemical extraction could take much longer.
Thanks for reading, I hope this is considered, as most of the optionally dependent recipes are simple to add.
Super handy for any server, so we don't have to carry around all our money
April 2022 Update: The formspec transaction lag issue and other API DoS issues in mods are actively being exploited to lag servers to promote a ripoff makeworld game that only accepts exorbitant bitcoin payments.
I'm really glad to see this getting revamped from the 2016 classic yellow green and grey cubes that are on many servers! I can't count how many times I've been greatful not to have all my money on me when dying on a long trek in the wilderness, or falling into a feigned friendly player's trap for them to hoard all my hard-earned tools food and armor.
I have run against a couple issues in the design of the transaction system, which become much more apparent on populated servers, and I've even been able to reproduce it in singleplayer on a fast machine.
The issue is that when depositing a lot of money very quickly, the server and client lags significantly. This is true of any server I've tested, and any denomination, whether depositing or withdrawing. If this is extreme enough, the displayed account balance jumps to the correct value once the lag subsides, then counts the wrong direction from the transactions you just placed, so it looks like instead of depositing 1000 Green, the number went down, which is worrying to watch. The balance shows the correct value after placing another transaction or exiting, but it can cause worry that things are not running as they should, and raise concern over whether their virtual accounts are safe to use in case of a glitch or corruption.
So, as a reconciled action (and having a shop that can supply thousands of individual notes on a very crowded server), I don't think adding a 1000x button is the solution, but instead seeking out something like caching, or a place-and-commit functionality that lets the player do large transactions all in one go. The answer could even be delaying the actions and batching them automatically using a timed buffer, or anything else.
Great set of features just like Technic, but I'd enjoy it more if I could do certain things:
Being able to rotate the Switching Station, Supply Converter, Battery Boxes, and anything else that would make it much easier to put together a compact 'spaghetti' build.
The machines having the capability to pass power through their ports to other machines on the same voltage network tier, as this can be incorporated as an additional upgrade module +/- a slot for the machines, for example one of those old fashioned hand-lever contactor relays, or something more modern like a GaN SSR controlled by digilines, mesecons, or pipeworks, etc.
This mod is more realistic than teleporters, but currently comes with... a few drawbacks.
For one, when the server or client become desynchronized, the player's client can continue the linear motion through any object, like getting willy wonka launched out the roof of your base and falling to your death, or being pushed many floors below your base only to wonder what happened while sitting in an undiscovered cave, as well as the inbetween option of being dropped from the top of your elevator shaft down the tube, possibly ending in death and your items being spewed out in the bottom of the shaft if the mod cannot find a place to put your bones box (often in odd places).
To fix this, I think it would be beneficial to have a federated sort of player movement validation, as in, when you click a floor number, the elevator code moves your client-authoritative position linearly as usual, and it knows to stop at the desired floor, whereas handing all the control to the server causes desynchronization and sometimes death, especially over laggy networks or a very mildly stressed server.
Other than it randomly killing me, or trying to, I enjoy the movement up and down in my base as I can see all the floors as they whiz by. It helps in determining how many floors a tree grew up through, like the douglas fir, and countless other situations besides someone phasing through the walls of my base and using the elevator, causing me to fall a couple floors, or to my death (elevator can't be used by multiple people at once without issue).
This mod is helping me and another player create a 99x99 four-quadrant sequential algorithm maze.
We went through a large list of potential algorithms to find what we thought were the best candidates for difficulty, reaching the objective estimate of 1) Kruskal's. 2) Prim's Modified (lowest weight branch approach). 3) Recursive Backtracking. and 4) Wilson's algorithm. Since this mod generates using Wilson's algorithm, we are successfully able to translate that into our project, after having difficulty finding any functioning block-based maze generators.
I would also enjoy if your mod were able to generate using other algorithms, and put various types of bounding walls around the edges, and have an option that ensures it is a perfect maze with only one solution. Using 2/16 obsidian slab walls (moreblocks saw table) and other slab options to better fit commonplace maze generators would be a good option aswell.
I really enjoyed your club and other maps -- there is a lot of creativity and atmosphere in this mod. Excellent work.
An excellent set of simple & expandable features and gameplay
I would love it if there were machines which can cryogenically treat most metals to massively improve their stats, like which exist in real life to reduce tool and active part wear by ~5x. Default recipes can be added and modified and capability supporting mods can add their own, like cryotreating the center ingot of a steel pickaxe similarly to how a Traditional Katana is laminated.
See Thoughtco's "An Introduction to Cryogenic Hardening of Metal" at https://www.thoughtco.com/cryogenic-hardening-2340006
"Besides steel, cryogenic hardening is also used to treat cast iron, copper alloys, aluminum, and magnesium. The process can improve the wear life of these types of metal parts by factors of two to six."
P.S. If you find that this mod, Pipeworks, Mesecons, Digilines, or others lag your machine and the server by lacking optimization, there are projects to fix some of these mods like technic-plus, even though some of the measures impact gameplay due to the limitations of the LuaJIT addon subsystem.
I like the mod, but its not balanced, or as useful as the titanium from Xtraores.
Considering that modern super-alloys like gamma-titanium-aluminum are within a stone's throw of modern super-composites like acrylo-nitrile carbon fiber layups/prepregs/tows, this mod really doesn't do the material justice. After using it for a long time on servers and testing on singleplayer, I can say that its durability and effectiveness are far from what they could be considering Titanium's toughness when compared to commonly found crystal gems that form in the ground, and still its hardness and strength to weight ratio is nearly on par with many common low-grade ceramics used in commercial goods, like amorphous sintered alumina powder, quartz, and many others including some Sialons. I think this mod material's capabilities should be multiplied several times, allowed to be alloyed into a perovskite or titanium-aluminum-oxygen/carbide/nitride/boride crystal that beats the strength of many other mods including the gemstones like Ruby and the Crystal mod. It should be harder to get and craft if enhanced also.
Thanks for reading and I hope something comes of this.
Since bags require 128 cotton and 3 or 4 steps, including growing the cotton and harvesting, I like the idea of having some alternative recipes available which eases the burdon on some non-hardcore servers that use lots of extremely rare leather.
Please make your source code available for us to look at and we will be more comfortable using your mods!
Using mob_core as a functionality provider lets you use more advanced features for mobs like following, which is expanded upon in Animalia and other mods! 😉
Helps break down language barriers between global communities
This concept is highly anticipated, but members have had concerns about getting it up and running. Primarily, there are two issues pointed out frequently:
Administrators that see mods needing secure.http_mods or secure.trusted_mods access causes a lot of worry that it will be a failure point for stability and safety, even if it uses an API client from the LibreTranslate service instead of Micros($)oft or Alphabet's Google. If you could explain how it might be possible to have a completely offline version of this or another translator service, or explain in more detail how http calls to localhost:5000/languages works in the mod description, and running podman, more servers would surely gain confidence in using this mod to allow non-native players to naturally communicate with each other. Additionally, a way to permanently save and cache all queries and responses to drastically reduce the http calls needed over a period of time would help bridge the gap to allowing a semi or fully-offline translation service.
Everyone that has used translators has eventually come across some major shortcomings in how the translator perceives meaning, where it cannot successfully get the point across, or it just doesn't understand an advanced word or concept in one language to be able to explain that in another. It would be a very good idea to allow the user to see the original message paired with the LibreTranslate message at the same time configurably, or on demand in order for the player to take mistranslated phrases and questions and try them on another service, as well as the possibility of considering a reviewing and feedback system for each query. It would also be good to incorporate a system which, if the translator has failed or is inaccurate, each individual word is translated and shown to the user as a | delimited | message | so the user may still be able to piece together what was meant, as well as learn the language much more easily.
To be honest, there are a number of things that can be improved upon:
There is no expel ability to prevent unwanted guests' access to your home, no way to toggle PvP damage within your rooms, and no way to remove the /sethome and Unified Inventory teleports that a player killer might abuse against you. Additionally;
Area boundaries should act as barriers to flowing liquids, damaging spread, or deadly radiant sources from realism mods. One example - if the owner of a grief does not have rights in your area, then there is no reason the lava should have flown down into your house. Once unauthorized liquids reach the edge of an area, they should stop updating to prevent you getting entombed. This mechanic also can prevent liquids and sources from escaping outside of personal areas, enabling players to freely place moats and farms and whatever they want inside their own base.
Low network latency allows clients to abuse and take advantage of block rollback lag, where the client has no idea it wasn't supposed to be able to break through someone's wall before the server snaps them back into place. Running a validation check on the client before ever allowing the action would prevent nearly all wall-phasing and base-stalking on all servers. Along with the boundaries enhancements, this would be a major step forward for the whole Minetest community.
Finally, and honestly, since both this mod and the Areas mod are used ubiquitously, contributors should consider reduxed versions of both be implemented into the base game, where it doesn't have to rely on slower LuaJIT addon systems for such a critical component of the gameplay and player experience.
But, it could still use a few feature additions, additing powerful new capabilities and fixing pervasive issues with its design. For example:
There are no area commands available that both allow full interaction of objects, while at the same time preventing all block placement and breakage in the open area. This non-uniformity breaks the functionality of many shared workshops.
Area boundaries should act as barriers to flowing liquids, damaging spread, or deadly radiant sources from realism mods. One obvious example is - if the owner of a lava grief does not have privileges in your area, then there is no reason the lava should have flown down into your protected area. Once unauthorized liquids reach the edge of the area, they should stop updating to prevent you getting entombed in your otherwise peaceful home. This mechanic also can prevent liquids and sources from escaping outside of personal areas, enabling players to freely place moats and farms and whatever they want inside their own base, since many servers have disallowed bucket usage.
Medium network latency allows client players to abuse and take advantage of block rollback lag, where the client has no idea it wasn't supposed to be able to break through someone's wall before the server snaps them back into place. Running a validation check on the client before ever allowing the action would prevent nearly all wall-phasing and base-stalking on all servers. Along with the boundaries enhancements, this would be a major step forward for the whole community.
Finally, and honestly, since both this mod and the protection mods are used ubiquitously, contributors should consider remastered versions of both be implemented into the base game engine, where it doesn't have to rely on slower LuaJIT addon subsystems for such a critical component of the gameplay and overall player experience.
Autocrafters cannot accept item groups in their crafting grid, for example leaves, tree, wood, and many other groups which work naturally with crafting guides and user interfaces. (Listed on GitHub)
Injectors and tubes are not smart, and do not provide any versions that are smart which don't require extensive digilines detectors and Lua, which can know to stop pushing items if the next-in-line storage or tubeline are inoperable or full. It can even be lazy and deactivate the line on single spillage.
Injectors erroneously push items into the wrong containers, possibly skipping or losing instructions.
Tube routing is not intelligent, causing backups, spills, breakages, empty machines, and other problems. There should be automatic load-balancing with a toggle to select the old random switching or splitting/ round-robin.
Vacuum and other tube segments cannot properly interact with source liquids and flowing blocks, or falling blocks.
Large or complex constructs using pipeworks are known to have a major impact on server performance, and which some objects become out of sync or break when flooded. Abstracting the systems out of physical gamespace, and generalizing, network/ route mapping, scheduling, balancing, backgrounding, and offloading may have a positive impact on any server that runs this. Additional ways to allow servers the freedom to use pipeworks may include removing or reducing active objects and activities, reducing the thrashing of registered entities, simplifying and optimizing looping scripts, and scheduling all calculations while accurately tracking simulation speed and correcting for hiccups.
There are probably other common-use-case issues as well that are intuitively and reasonably desired which other players have discovered.
Used by nearly all servers for establishing functional economies
I only have several issues currently:
The barter table can get locked up between two players that click to start the trade and then walk away forever. Each side of the table should time out and return any items after a short period, and release the table to be used by other players without having to break it and re-place it. There can be a shorter timer that allows anyone to click cancel on any delayed trades before the non-interactive timer expires and cancels automatically.
Minegeld bundles should either be restricted to being crafted with low-denomination notes, or retain data on what notes were combined together in order to make them, so that they may be taken back apart to recover the money. Some players use this mistakenly to store many large-denomination notes, so it is important that the data not be deleted on server crashes, and care should be taken so that players cannot send messages to duplicate huge amounts of money.
After doing expirements on whether or not players understand the bill denominations, the results show that they do not understand the value of each note when compared to each other and are far more likely to pick the notes which are granted to them on server activity as their base and lowest valued form of currency, even if they are red or blue $10 or $5 notes. I don't really know what can be done about this right now besides somehow making it more obvious, or creating a sort of tutorial island mapgen that has progressive areas which demonstrate each of the ubiquitously installed mods' workings.
When players join a server, the items from this mod set the standard for how the game feels
I only desire that the enchanting table be able to put multiple enchantments on each tool, including effects like reduced fall damage, repairing when not in use, weapons that lower armor's deflection chance, renaming tools and armor, or binding a tool to an account so its not dropped on death, where the enchanting number is based off of and utilizing the number of bookshelves around it, from 0 to 32/48/64 in steps of 8 bookshelves for 4 levels in the case of 32, or every 4 bookshleves for 8 levels, etc. It doesn't feel right that any player can simply enchant their tool to max level with a lone enchanting table, and additional functionality to this heavily used feature would balance it out and allow smoother and more complete progression.
This mod doesn't overcomplicate the repair process, and is excellent on most servers.
I wish it had the ability to rename tools and items, or having a toggle that allows the Anvil to be shared among other players without allowing them to destroy it.
Can make easier to add commands, or add common admin commands in init.lua?
I've been trying to get the /spawnentity command working with command blocks, and I can't figure it out in one pass. It would help everyone if you added a number of common commands to the mesecons_commandblock files so we can just uncomment them and get to it. Privs should be checked first.
I made a shark tank to test the 3d_armor API, and ran into a crash
AsyncErr: ServerThread::run Lua: Runtime error from mod '??' in callback luaentity_Step(): [Redacted]/mods/water_life/behaviors.lua:509: attempt to compare number with nil
stack traceback:
[Redacted]/mods/water_life/behaviors.lua:509: in function 'func'
[Redacted]/mods/mobkit/init.lua:621: in function 'execute_queues'
[Redacted]/mods/mobkit/init.lua:848: in function <[Redacted]/mods/mobkit/init.lua:825>
Its a great mod, I'm using 5.4 from Flathub and I've never run into other issues with it.
Update: One of the mods updated and the issue went away. It was either that or a conflict with 3d_armor_flyswim
Aside from what The32bitguy said, and making sure its JIT-able, I would like to suggest some very simple wording changes that improve clarity on any mods with armor or weapons.
armor_heal should be renamed to armor_blockchance (similar to all RPGs), with cumulative armor set values being capped at 100, and adding a percent symbol in the UI.
armor_use should actually reflects how many uses the piece has, instead of the inverse approx(65535/armor_use), where higher numbers lead to faster item degredation. Renaming to armor_uses, or if you still want to keep the inverse wear relationship something like armor_weakness, armor_fragility, or armor_frailty.
Armor 'Level' uses armor_groups = {fleshy=##}, , where each 5 points adds a level. However, I found no relationship between armor protection and these values. In my testing 0 on an armor piece reduced Oerkki damage from 4 to 3, but so did all values tested through 100.
Adding armor_resistance as a clamped gaussian modifier on armor_blockchance would provide a useful feature, allowing partial or excess HP dmg blocking instead of all or nothing (reflected to attacker if excess). Reflection can be clamped to 10 or 20%, or be configurable, or be a full-set attribute. Large integer or float HP values work well with this.
After renaming armor_heal, it would benefit players to add a real armor_heal attribute that slowly regenerates health over time.
The UI display of armor_fire level should include a tooltip or description of what fire damage sources it protects against at the current level.
It shouldn't be too much effort to add a couple lines to transition things while keeping backwards compatibility.
Update: I also tried various armor_groups = {fleshy} values on sharks and other creatures that are listed as having fleshy damage groups. Armor pieces only reduce damage from 5 to 4 regardless of armor group settings.
Fun along with more_upgrade_packs, awards, and toolranks
The Breath packs take a lot of damage when drowning and the HP packs take damage on being hit, so it can be a good idea to balance the numbers provided in the init.lua file for better gameplay. The add_wear values also affect the more_upgrade_packs mod.
AsyncErr: Lua: finishGenRuntime error from mod 'df_caverns' in callback environment_OnGenerated(): [Redacted]/mods/dfcaverns/df_caverns/level1.lua:212: attempt to index local 'heatmap' (a nil value)
stack traceback:
[Redacted]/mods/dfcaverns/df_caverns/level1.lua:212: in function 'decorate'
[Redacted]/mods/dfcaverns/subterrane/init.lua:583: in function <[Redacted]/mods/dfcaverns/subterrane/init.lua:353>
[Redacted]/builtin/game/register.lua:429: in function <[Redacted]/builtin/game/register.lua:413>
On version 5.3.0 via Flathub.
Just updated to 5.4 that was rolled out within the hour. All good now!
Great mod, however..
As a moderator on the reigning most popular long term server of Minetest (held its own for several years, though many players on other servers despise the type of persons they see on it for some reason), on reports from other staff, and the realization that banned players keep coming back to the game and causing issues, I realized that the database can only hold so many ban entries/information before it resets itself, and those freshly banned or very troublesome players come back to the game before they've calmed down.
To combat this space issue, there are a variety of methods you can use.
One is compression, using the functions built into the Minetest LuaJIT 5.1 beta 3 addon subsystem, or the C++ engine for mapblock/chunk compression (not the acclaimed pglz, agiannis, LZ77, K5, ZPAQ, or a trained Zstd algorithm like how Facebook and other data aggrigators use unfortunately).
Another is increasing the database size, or splitting it up into separate parts that each are capable of holding more total or specific storage, for example the bans would stick around, but the ban reasons would fill up and overwrite the first entries or reset instead of releasing all those players back into the game.
And I'm sure there are lots of other methods that can be used to make this ubiquitously used mod better, but I'm no expert.
Great mod, couple issues
Spamming symbols like comma, and semicolon in the filename when saving causes that number of errors to spam user clients, and can be used to create massive table entries inside the file listing that are moderately broken. This can be used to crash clients and fill the memory of the server potentially. If writing functions into the table inside the file name this issue or another bug might be able to call on the arbitrary function data from elsewhere in the server's LuaJIT addon subsystem execution environment. Creating a restricted file name length may not solve the issue, as mods and custom setups can create shortened global variables which still allow execution of the assigned functions. Multiple laptop mod machine memories can also be harnessed to distribute the amount of code needed for exploitation. Simply shortening file names might not be a solution.
Nice, but I feel like the algorithm could be improved.
It would be even more incredible if we could pick between Kruskal's, Prim's Modified, Recursive Backtracking, and Hunt-and-Kill algorithms, as well as it being able to place 1/16 cut block slabs as walls!
Amazing variety and feature additions
This is a must-have for many servers.
It would be nice if the Flight Potion had reduced fall damage and low gravity effects when it wore out though, as if it were a drug with a non-instantaneous falloff period.
Good set of block type expansions
I'll look forward to using this in the future.
Neat feature, but it can spam the chat and log with errors
There is a deprecation warning about use_texture_alpha clipping for this mod affecting:
"pedology_ice_pure.png" of pedology:ice_pure_cube "pedology_ice_pure.png" of pedology:ice_pure_doublepanel "pedology_ice_pure.png" of pedology:ice_pure_halfstair "pedology_ice_pure.png" of pedology:ice_pure_micropanel "pedology_ice_pure.png" of pedology:ice_pure_microslab "pedology_ice_pure.png" of pedology:ice_pure_nanoslab "pedology_ice_pure.png" of pedology:ice_pure_panel "pedology_ice_pure.png" of pedology:ice_pure_thinstair
Great mod in many regards
I only have 4 noteworthy issues with it currently:
It spams the chat and debug.txt with thousands of Warnings about textures and other issues due to a deprecation change prior to MT 5.5.0.
Edit: Mod configuration might already cover topic [It should have a better way of figuring out where to put bones boxes instead of dropping all the player's items on the track when run over.]
It should be able to do client-side simulation and federated synchronization of the player position and movement so its not so glitchy on bandwidth limited servers, broadband connections, or thread-limited execution environments which may skip instructions.
Edit: trains not provided by advtrains [It needs a few train versions that work over longer distances at higher speeds, and also in environments without atmosphere, to keep a player from suffocating in otherworlds.]
Adds a lot of design variety
But it unfortunately spams errors in the chat and in debug.txt using Minetest 5.5.0 due to a deprecation change in the main game.
Useful on technic, pipeworks, mesecons, digilines servers
For infinite diamond generators, however, none of these servers want to install a mod like this because having infinite diamonds would be overpowered for how easy it is to get the coal from the cooked trunks.
To remedy this, I think a number of grinding, mixing, refining, extraction, cooking, and compression steps (at low yield in various steps) could be added in order to make the crafting pipeline much slower and more difficult if someone wanted to generate the end coal lump product in order to turn that into diamonds or other materials like diatom structured graphyne (mod concept in voting stage).
For example, it could be made that the mod detects these other mods, and switches recipes on these servers. An example recipe could be something like Wood Trunks > Ground Into Wet Mulch > Cooked to Dry Mulch > Magnet Extractor machine removes metallic fragments > Ground into Sawdust > Mixed with Water forming Slurry > Slurry Refined into Stock > Wood Stock Cooked to Wood Powder > Powder Extracted into Coal Dust, then finally someone can compress that to get coal lumps. The processes dealing with liquid slurries and chemical extraction could take much longer.
Thanks for reading, I hope this is considered, as most of the optionally dependent recipes are simple to add.
Super handy for any server, so we don't have to carry around all our money
April 2022 Update: The formspec transaction lag issue and other API DoS issues in mods are actively being exploited to lag servers to promote a ripoff makeworld game that only accepts exorbitant bitcoin payments.
I'm really glad to see this getting revamped from the 2016 classic yellow green and grey cubes that are on many servers! I can't count how many times I've been greatful not to have all my money on me when dying on a long trek in the wilderness, or falling into a feigned friendly player's trap for them to hoard all my hard-earned tools food and armor.
I have run against a couple issues in the design of the transaction system, which become much more apparent on populated servers, and I've even been able to reproduce it in singleplayer on a fast machine.
The issue is that when depositing a lot of money very quickly, the server and client lags significantly. This is true of any server I've tested, and any denomination, whether depositing or withdrawing. If this is extreme enough, the displayed account balance jumps to the correct value once the lag subsides, then counts the wrong direction from the transactions you just placed, so it looks like instead of depositing 1000 Green, the number went down, which is worrying to watch. The balance shows the correct value after placing another transaction or exiting, but it can cause worry that things are not running as they should, and raise concern over whether their virtual accounts are safe to use in case of a glitch or corruption.
So, as a reconciled action (and having a shop that can supply thousands of individual notes on a very crowded server), I don't think adding a 1000x button is the solution, but instead seeking out something like caching, or a place-and-commit functionality that lets the player do large transactions all in one go. The answer could even be delaying the actions and batching them automatically using a timed buffer, or anything else.
Great set of features just like Technic, but I'd enjoy it more if I could do certain things:
Being able to rotate the Switching Station, Supply Converter, Battery Boxes, and anything else that would make it much easier to put together a compact 'spaghetti' build.
The machines having the capability to pass power through their ports to other machines on the same voltage network tier, as this can be incorporated as an additional upgrade module +/- a slot for the machines, for example one of those old fashioned hand-lever contactor relays, or something more modern like a GaN SSR controlled by digilines, mesecons, or pipeworks, etc.
This mod is more realistic than teleporters, but currently comes with... a few drawbacks.
For one, when the server or client become desynchronized, the player's client can continue the linear motion through any object, like getting willy wonka launched out the roof of your base and falling to your death, or being pushed many floors below your base only to wonder what happened while sitting in an undiscovered cave, as well as the inbetween option of being dropped from the top of your elevator shaft down the tube, possibly ending in death and your items being spewed out in the bottom of the shaft if the mod cannot find a place to put your bones box (often in odd places).
To fix this, I think it would be beneficial to have a federated sort of player movement validation, as in, when you click a floor number, the elevator code moves your client-authoritative position linearly as usual, and it knows to stop at the desired floor, whereas handing all the control to the server causes desynchronization and sometimes death, especially over laggy networks or a very mildly stressed server.
Other than it randomly killing me, or trying to, I enjoy the movement up and down in my base as I can see all the floors as they whiz by. It helps in determining how many floors a tree grew up through, like the douglas fir, and countless other situations besides someone phasing through the walls of my base and using the elevator, causing me to fall a couple floors, or to my death (elevator can't be used by multiple people at once without issue).
This mod is helping me and another player create a 99x99 four-quadrant sequential algorithm maze.
We went through a large list of potential algorithms to find what we thought were the best candidates for difficulty, reaching the objective estimate of 1) Kruskal's. 2) Prim's Modified (lowest weight branch approach). 3) Recursive Backtracking. and 4) Wilson's algorithm. Since this mod generates using Wilson's algorithm, we are successfully able to translate that into our project, after having difficulty finding any functioning block-based maze generators.
I would also enjoy if your mod were able to generate using other algorithms, and put various types of bounding walls around the edges, and have an option that ensures it is a perfect maze with only one solution. Using 2/16 obsidian slab walls (moreblocks saw table) and other slab options to better fit commonplace maze generators would be a good option aswell.
I really enjoyed your club and other maps -- there is a lot of creativity and atmosphere in this mod. Excellent work.
Expanded upon, this would be a great feature.
The concept is natural and calming, I wish this was a game setting, and it was made just a little bit smarter so it doesn't cause issues.
An excellent set of simple & expandable features and gameplay
I would love it if there were machines which can cryogenically treat most metals to massively improve their stats, like which exist in real life to reduce tool and active part wear by ~5x. Default recipes can be added and modified and capability supporting mods can add their own, like cryotreating the center ingot of a steel pickaxe similarly to how a Traditional Katana is laminated.
See Thoughtco's "An Introduction to Cryogenic Hardening of Metal" at https://www.thoughtco.com/cryogenic-hardening-2340006 "Besides steel, cryogenic hardening is also used to treat cast iron, copper alloys, aluminum, and magnesium. The process can improve the wear life of these types of metal parts by factors of two to six."
P.S. If you find that this mod, Pipeworks, Mesecons, Digilines, or others lag your machine and the server by lacking optimization, there are projects to fix some of these mods like technic-plus, even though some of the measures impact gameplay due to the limitations of the LuaJIT addon subsystem.
I like the mod, but its not balanced, or as useful as the titanium from Xtraores.
Considering that modern super-alloys like gamma-titanium-aluminum are within a stone's throw of modern super-composites like acrylo-nitrile carbon fiber layups/prepregs/tows, this mod really doesn't do the material justice. After using it for a long time on servers and testing on singleplayer, I can say that its durability and effectiveness are far from what they could be considering Titanium's toughness when compared to commonly found crystal gems that form in the ground, and still its hardness and strength to weight ratio is nearly on par with many common low-grade ceramics used in commercial goods, like amorphous sintered alumina powder, quartz, and many others including some Sialons. I think this mod material's capabilities should be multiplied several times, allowed to be alloyed into a perovskite or titanium-aluminum-oxygen/carbide/nitride/boride crystal that beats the strength of many other mods including the gemstones like Ruby and the Crystal mod. It should be harder to get and craft if enhanced also.
Thanks for reading and I hope something comes of this.
I like the idea of easy alternative recipes
Since bags require 128 cotton and 3 or 4 steps, including growing the cotton and harvesting, I like the idea of having some alternative recipes available which eases the burdon on some non-hardcore servers that use lots of extremely rare leather.
Please make your source code available for us to look at and we will be more comfortable using your mods!
If you want some inspiration, then turn to
Using mob_core as a functionality provider lets you use more advanced features for mobs like following, which is expanded upon in Animalia and other mods! 😉
Also, please provide source code for your mods!
Helps break down language barriers between global communities
This concept is highly anticipated, but members have had concerns about getting it up and running. Primarily, there are two issues pointed out frequently:
Administrators that see mods needing secure.http_mods or secure.trusted_mods access causes a lot of worry that it will be a failure point for stability and safety, even if it uses an API client from the LibreTranslate service instead of Micros($)oft or Alphabet's Google. If you could explain how it might be possible to have a completely offline version of this or another translator service, or explain in more detail how http calls to localhost:5000/languages works in the mod description, and running podman, more servers would surely gain confidence in using this mod to allow non-native players to naturally communicate with each other. Additionally, a way to permanently save and cache all queries and responses to drastically reduce the http calls needed over a period of time would help bridge the gap to allowing a semi or fully-offline translation service.
Everyone that has used translators has eventually come across some major shortcomings in how the translator perceives meaning, where it cannot successfully get the point across, or it just doesn't understand an advanced word or concept in one language to be able to explain that in another. It would be a very good idea to allow the user to see the original message paired with the LibreTranslate message at the same time configurably, or on demand in order for the player to take mistranslated phrases and questions and try them on another service, as well as the possibility of considering a reviewing and feedback system for each query. It would also be good to incorporate a system which, if the translator has failed or is inaccurate, each individual word is translated and shown to the user as a | delimited | message | so the user may still be able to piece together what was meant, as well as learn the language much more easily.
Thank you for your time.
To be honest, there are a number of things that can be improved upon:
There is no expel ability to prevent unwanted guests' access to your home, no way to toggle PvP damage within your rooms, and no way to remove the /sethome and Unified Inventory teleports that a player killer might abuse against you. Additionally;
Area boundaries should act as barriers to flowing liquids, damaging spread, or deadly radiant sources from realism mods. One example - if the owner of a grief does not have rights in your area, then there is no reason the lava should have flown down into your house. Once unauthorized liquids reach the edge of an area, they should stop updating to prevent you getting entombed. This mechanic also can prevent liquids and sources from escaping outside of personal areas, enabling players to freely place moats and farms and whatever they want inside their own base.
Low network latency allows clients to abuse and take advantage of block rollback lag, where the client has no idea it wasn't supposed to be able to break through someone's wall before the server snaps them back into place. Running a validation check on the client before ever allowing the action would prevent nearly all wall-phasing and base-stalking on all servers. Along with the boundaries enhancements, this would be a major step forward for the whole Minetest community.
Finally, and honestly, since both this mod and the Areas mod are used ubiquitously, contributors should consider reduxed versions of both be implemented into the base game, where it doesn't have to rely on slower LuaJIT addon systems for such a critical component of the gameplay and player experience.
Thank you for reading.
Among the must-have mods for almost any server...
But, it could still use a few feature additions, additing powerful new capabilities and fixing pervasive issues with its design. For example:
There are no area commands available that both allow full interaction of objects, while at the same time preventing all block placement and breakage in the open area. This non-uniformity breaks the functionality of many shared workshops.
Area boundaries should act as barriers to flowing liquids, damaging spread, or deadly radiant sources from realism mods. One obvious example is - if the owner of a lava grief does not have privileges in your area, then there is no reason the lava should have flown down into your protected area. Once unauthorized liquids reach the edge of the area, they should stop updating to prevent you getting entombed in your otherwise peaceful home. This mechanic also can prevent liquids and sources from escaping outside of personal areas, enabling players to freely place moats and farms and whatever they want inside their own base, since many servers have disallowed bucket usage.
Medium network latency allows client players to abuse and take advantage of block rollback lag, where the client has no idea it wasn't supposed to be able to break through someone's wall before the server snaps them back into place. Running a validation check on the client before ever allowing the action would prevent nearly all wall-phasing and base-stalking on all servers. Along with the boundaries enhancements, this would be a major step forward for the whole community.
Finally, and honestly, since both this mod and the protection mods are used ubiquitously, contributors should consider remastered versions of both be implemented into the base game engine, where it doesn't have to rely on slower LuaJIT addon subsystems for such a critical component of the gameplay and overall player experience.
Thank you for reading.
Highly useful and widely used, however....
Autocrafters cannot accept item groups in their crafting grid, for example leaves, tree, wood, and many other groups which work naturally with crafting guides and user interfaces. (Listed on GitHub)
Injectors and tubes are not smart, and do not provide any versions that are smart which don't require extensive digilines detectors and Lua, which can know to stop pushing items if the next-in-line storage or tubeline are inoperable or full. It can even be lazy and deactivate the line on single spillage.
Injectors erroneously push items into the wrong containers, possibly skipping or losing instructions.
Tube routing is not intelligent, causing backups, spills, breakages, empty machines, and other problems. There should be automatic load-balancing with a toggle to select the old random switching or splitting/ round-robin.
Vacuum and other tube segments cannot properly interact with source liquids and flowing blocks, or falling blocks.
Large or complex constructs using pipeworks are known to have a major impact on server performance, and which some objects become out of sync or break when flooded. Abstracting the systems out of physical gamespace, and generalizing, network/ route mapping, scheduling, balancing, backgrounding, and offloading may have a positive impact on any server that runs this. Additional ways to allow servers the freedom to use pipeworks may include removing or reducing active objects and activities, reducing the thrashing of registered entities, simplifying and optimizing looping scripts, and scheduling all calculations while accurately tracking simulation speed and correcting for hiccups.
There are probably other common-use-case issues as well that are intuitively and reasonably desired which other players have discovered.
Used by nearly all servers for establishing functional economies
I only have several issues currently:
The barter table can get locked up between two players that click to start the trade and then walk away forever. Each side of the table should time out and return any items after a short period, and release the table to be used by other players without having to break it and re-place it. There can be a shorter timer that allows anyone to click cancel on any delayed trades before the non-interactive timer expires and cancels automatically.
Minegeld bundles should either be restricted to being crafted with low-denomination notes, or retain data on what notes were combined together in order to make them, so that they may be taken back apart to recover the money. Some players use this mistakenly to store many large-denomination notes, so it is important that the data not be deleted on server crashes, and care should be taken so that players cannot send messages to duplicate huge amounts of money.
After doing expirements on whether or not players understand the bill denominations, the results show that they do not understand the value of each note when compared to each other and are far more likely to pick the notes which are granted to them on server activity as their base and lowest valued form of currency, even if they are red or blue $10 or $5 notes. I don't really know what can be done about this right now besides somehow making it more obvious, or creating a sort of tutorial island mapgen that has progressive areas which demonstrate each of the ubiquitously installed mods' workings.
When players join a server, the items from this mod set the standard for how the game feels
I only desire that the enchanting table be able to put multiple enchantments on each tool, including effects like reduced fall damage, repairing when not in use, weapons that lower armor's deflection chance, renaming tools and armor, or binding a tool to an account so its not dropped on death, where the enchanting number is based off of and utilizing the number of bookshelves around it, from 0 to 32/48/64 in steps of 8 bookshelves for 4 levels in the case of 32, or every 4 bookshleves for 8 levels, etc. It doesn't feel right that any player can simply enchant their tool to max level with a lone enchanting table, and additional functionality to this heavily used feature would balance it out and allow smoother and more complete progression.
This mod doesn't overcomplicate the repair process, and is excellent on most servers.
I wish it had the ability to rename tools and items, or having a toggle that allows the Anvil to be shared among other players without allowing them to destroy it.
Endgame necessity
Really enjoy something to look forward to after getting tons of diamonds on a long playthrough. It puts all the other powerful items to shame.
Can make easier to add commands, or add common admin commands in init.lua?
I've been trying to get the /spawnentity command working with command blocks, and I can't figure it out in one pass. It would help everyone if you added a number of common commands to the mesecons_commandblock files so we can just uncomment them and get to it. Privs should be checked first.
I made a shark tank to test the 3d_armor API, and ran into a crash
Its a great mod, I'm using 5.4 from Flathub and I've never run into other issues with it.
Update: One of the mods updated and the issue went away. It was either that or a conflict with 3d_armor_flyswim
Great API
Aside from what The32bitguy said, and making sure its JIT-able, I would like to suggest some very simple wording changes that improve clarity on any mods with armor or weapons.
approx(65535/armor_use)
, where higher numbers lead to faster item degredation. Renaming to armor_uses, or if you still want to keep the inverse wear relationship something like armor_weakness, armor_fragility, or armor_frailty.armor_groups = {fleshy=##},
, where each 5 points adds a level. However, I found no relationship between armor protection and these values. In my testing 0 on an armor piece reduced Oerkki damage from 4 to 3, but so did all values tested through 100.It shouldn't be too much effort to add a couple lines to transition things while keeping backwards compatibility.
Update: I also tried various
armor_groups = {fleshy}
values on sharks and other creatures that are listed as having fleshy damage groups. Armor pieces only reduce damage from 5 to 4 regardless of armor group settings.Appreciate the read. Ciao!
Fun along with more_upgrade_packs, awards, and toolranks
The Breath packs take a lot of damage when drowning and the HP packs take damage on being hit, so it can be a good idea to balance the numbers provided in the init.lua file for better gameplay. The add_wear values also affect the more_upgrade_packs mod.
Amazing, but crashes with errors.
Just updated to 5.4 that was rolled out within the hour. All good now!