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.
Update: Protector chests having a toggle settable by the owner to fail securely to a locked state when protection is removed or non-existant, or failing safely to an open and shared state when protection is removed or not used would be an enhancement to this mod's mechanics.
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.
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!
Issues 6 and 7: A trade by one player that clicked past exchange cannot cancel an exchange, leaving the other side of the table open for anyone to claim all the items for free. The two sides of the table need lock-step stages. The owner of the table should also be able to flip a toggle that only allows one other player to interact with their table so the owner always has the option to cancel the ongoing trade without the items being deleted on table removal.
The table needs a better way to handle trades when one player is offline or the other has a full inventory versus deleting the items traded. It should be able to search the nearby chests registered with access permissions to the respective players, check for space, and place the overflow items in there. When that happens a chat message should be sent to each player telling them which chest(s) their items were deposited in in their absence. For example, having a shared chest next to the barter table with the trading player(s) names on the whitelist, or an unlocked or protected chest with permissions next to it.
The ability to define a ghost layout for items that can't be modified or sorted by the locked-to player would be nice for organization. I had all my stuff laid out in a certain way and someone came through and clicked the sort button to mess it all up.
I also suggested this layout mechanism for the renting and loaning mod.
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.
Usually I do a little more investigation first. I was busy filtering out all the thousands of errors from the ubiquitous mods instead of investigating how the mod worked. Thank you for your time!
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.]
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. There were too many to count.
Sorry I didn't post this on notabug, I didn't feel like making another account.
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.
If a user could choose to allow usage, but only with certain item groups, like 1 block tall farming crops, or even bamboo & papyrus, or certain trees, or all of them, but not allowing things like cobble and other objects that do not fit the group specified.
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.
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.
And for the performance of 50 individual, more or less possible, requests to the linux and windows networking stacks per potential message, and the single-threaded addon subsystem, and the containerization overheads (if any), it would be a good idea to figure out how to benchmark, profile, cache, batch/schedule, event-base/interrupt, do whatever to reduce the overhead, latency, and jitter of the system. It would also be a good idea to find out how to keep messages from becoming too long, or putting an interactive element between the user and the server that can show more information, like your GUI as you mentioned prior, or something akin to an interactive terminal application. It would also be wise to add a non-spoofable marker that denotes that the message was translated.
There seems to be a lot of ways to approach this, which is always a good thing when solving such a fundamental problem and cause for divide. It may not be the most intuitive or functional at first, but we can be confident that its a major step.
https://github.com/LibreTranslate/LibreTranslate/pull/151 is very encouraging to read, but I'd like them to also consider an on-demand uploader so there isn't a continuous or repetitious outbound service which has no security guarantees if they use an older or modified library, or even if their cloud platform is compromised or malfunctional.
Again, thank you for reading, and providing assistance in this matter.
I also thought of the issue where a user can get spammed by the translator with that feature enabled while writing that -- so I also was trying to come up with a solution like the user being able to send an on-demand /tr username command that would resend the cross-examination(s) or originals or act like a per-user-to-user toggle to disable the translator. I think people having that capability will allow better understanding of the translator and could improve their suggestions and reviews, hopefully even make their outlook a little more positive.
About the in-game translation feedback, I don't expect there to be zero toxic users either, that could cause the translator (via an unknowing party) to throw insults or curses when they are not meant to be, or even leaving less-than-helpful translation suggestions. Its partially for this reason why the per-word translation is a good idea.
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).
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.
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.
There is a technic plus mod that focuses on remedying the issues you've mentioned, until the core developers add a difficult form of LuaJIT multithreading, or allow alternative addon subsystems using other embeddable scripting languages which easily support parallelism, error handling, borrowing, memory management, and JIT versus AoT compilation.
See here: https://content.minetest.net/packages/mt-mods/technic_plus/
You can take notes on the methods in which they use to reduce lag and improve the functioning of the mod and systems and servers. Namely: 'polyfuse & globalstep execution', no 'forceloading', 'refactored netcode', reducing activeobjects and animations, reduced thrashing of registered entities, and optimizing looping scripts.
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! 😉
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.
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.
I came to the comments to post exactly that. This mod would be great with further tesselation of the terrain, or rather smoothing using sloped and curved block types to create a more natural terrain. The game engine isn't built with a subsystem for fast partial removal of nodes though, so digging into a world still made out of cubes would be unsettling. There is a comfortable simplicity in cubic voxel worlds.
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.
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.
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.
Update: Protector chests having a toggle settable by the owner to fail securely to a locked state when protection is removed or non-existant, or failing safely to an open and shared state when protection is removed or not used would be an enhancement to this mod's mechanics.
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.
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!
Issues 6 and 7: A trade by one player that clicked past exchange cannot cancel an exchange, leaving the other side of the table open for anyone to claim all the items for free. The two sides of the table need lock-step stages. The owner of the table should also be able to flip a toggle that only allows one other player to interact with their table so the owner always has the option to cancel the ongoing trade without the items being deleted on table removal.
The table needs a better way to handle trades when one player is offline or the other has a full inventory versus deleting the items traded. It should be able to search the nearby chests registered with access permissions to the respective players, check for space, and place the overflow items in there. When that happens a chat message should be sent to each player telling them which chest(s) their items were deposited in in their absence. For example, having a shared chest next to the barter table with the trading player(s) names on the whitelist, or an unlocked or protected chest with permissions next to it.
The ability to define a ghost layout for items that can't be modified or sorted by the locked-to player would be nice for organization. I had all my stuff laid out in a certain way and someone came through and clicked the sort button to mess it all up.
I also suggested this layout mechanism for the renting and loaning mod.
Issue number 5: The table deletes items that are in the trading process when the table is destroyed during a trade.
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.
I'll look forward to using this in the future.
converted review into a thread
Looks like they might have been fixed! I can't get the warnings to come up now. Thank you much!
Usually I do a little more investigation first. I was busy filtering out all the thousands of errors from the ubiquitous mods instead of investigating how the mod worked. Thank you for your time!
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.]
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.
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. There were too many to count.
Sorry I didn't post this on notabug, I didn't feel like making another account.
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.
And it probably shouldn't be possible for one player to activate both sides of the table, just didn't think of this while writing. Thanks
If a user could choose to allow usage, but only with certain item groups, like 1 block tall farming crops, or even bamboo & papyrus, or certain trees, or all of them, but not allowing things like cobble and other objects that do not fit the group specified.
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.
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.
...
And for the performance of 50 individual, more or less possible, requests to the linux and windows networking stacks per potential message, and the single-threaded addon subsystem, and the containerization overheads (if any), it would be a good idea to figure out how to benchmark, profile, cache, batch/schedule, event-base/interrupt, do whatever to reduce the overhead, latency, and jitter of the system. It would also be a good idea to find out how to keep messages from becoming too long, or putting an interactive element between the user and the server that can show more information, like your GUI as you mentioned prior, or something akin to an interactive terminal application. It would also be wise to add a non-spoofable marker that denotes that the message was translated.
There seems to be a lot of ways to approach this, which is always a good thing when solving such a fundamental problem and cause for divide. It may not be the most intuitive or functional at first, but we can be confident that its a major step.
https://github.com/LibreTranslate/LibreTranslate/pull/151 is very encouraging to read, but I'd like them to also consider an on-demand uploader so there isn't a continuous or repetitious outbound service which has no security guarantees if they use an older or modified library, or even if their cloud platform is compromised or malfunctional.
Again, thank you for reading, and providing assistance in this matter.
Thank you for taking the time to reply.
I also thought of the issue where a user can get spammed by the translator with that feature enabled while writing that -- so I also was trying to come up with a solution like the user being able to send an on-demand /tr username command that would resend the cross-examination(s) or originals or act like a per-user-to-user toggle to disable the translator. I think people having that capability will allow better understanding of the translator and could improve their suggestions and reviews, hopefully even make their outlook a little more positive.
About the in-game translation feedback, I don't expect there to be zero toxic users either, that could cause the translator (via an unknowing party) to throw insults or curses when they are not meant to be, or even leaving less-than-helpful translation suggestions. Its partially for this reason why the per-word translation is a good idea.
... Continued ...
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).
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.
I agree, theres a long way to go. 🙂
Lots of very good information, thank you for replying!
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.
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.
There is a technic plus mod that focuses on remedying the issues you've mentioned, until the core developers add a difficult form of LuaJIT multithreading, or allow alternative addon subsystems using other embeddable scripting languages which easily support parallelism, error handling, borrowing, memory management, and JIT versus AoT compilation.
See here: https://content.minetest.net/packages/mt-mods/technic_plus/ You can take notes on the methods in which they use to reduce lag and improve the functioning of the mod and systems and servers. Namely: 'polyfuse & globalstep execution', no 'forceloading', 'refactored netcode', reducing activeobjects and animations, reduced thrashing of registered entities, and optimizing looping scripts.
👌🏻
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! 😉
Also, please provide source code for your mods!
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.
accidental comment
bump anyway, this is next-level stuff
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.
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.
I came to the comments to post exactly that. This mod would be great with further tesselation of the terrain, or rather smoothing using sloped and curved block types to create a more natural terrain. The game engine isn't built with a subsystem for fast partial removal of nodes though, so digging into a world still made out of cubes would be unsettling. There is a comfortable simplicity in cubic voxel worlds.
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.
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.