Pure Copper Tools (Fabric/Forge)

Pure Copper Tools (Fabric/Forge)

7.8k Downloads

[Suggestion] Ability to let the tools oxidice on their own + Allow Waxing/Unwaxing of the tools

DerLinkman opened this issue ยท 5 comments

commented

Part 1: Adding oxidation to the weapons during playtime

I really like the idea of letting the tools oxidicing by thereselves like the blocks do.

I don't know how complex this is but it would be nice to make the tools oxidicing through your journey.


Part 2: Disable/Reneable Oxidation with Honeycomb/Grindstone

If there is a oxidation for the weapons during the playtime it would be very nice to stop or reenable the oxidation process.

My idea in this case: Honeycombs (like the Blocks) and the Grindstone.

Prove of concept:

To add Waxing put the desired Copper Tool/Armor inside an anvil (first place) and put a honeycomb in the second slot. Afterwards you'll get the waxed item. However with (if already done) the desired enchantments of course, maybe the same left durability.

To unwax simply put the Copper Tool/Armor inside a Grindstone. If it is waxed and enchanted it will only remove the wax in the first run. If you put the tool/armor in the grindstone again it will remove the enchantment like normal.


That was a lot of input :)

Tell me what do you think of it?

I think it would be in a similar way Mojang would add this (if they would add this at all :D)

commented

So, after brainstorming with my fellow developer friends, we were unable to find a way that makes sense to add this feature into the game. We've simply fallen on the functionality that placing the copper down and letting it oxidize is the best way to do this. Any other features I'd add would either not make sense, or not be performance friendly.

I hope you understand. And thank you for suggesting this to begin with. It led to some interesting discussions, and even though I didn't take action on it, I appreciate your time.

commented

I could simply add a recipe to cook a copper block in a furnace, causing it to oxidize much faster than vanilla.

Sounds good. But maybe ingots aswell as it is easier to get if you know what i mean.

commented

Hi,

thanks for your feedback.

Under the circumstances i agree with your choice and i understand know why you decided to implement the oxidiced ingots...

I did not tested this yet I did, but i still don't know, how do they oxidice via age or manually?

Back to the aging of the tools/armory: Is it possible to age the weapons only when they are inside the players inventory? I think the normal aging process of the blocks is tracked worldwide or to be exact in loaded chunks right?

commented

Copper blocks oxidize naturally by being placed in the world. This is a vanilla feature. Once the block has been oxidized to the level you want, you can break it down from its block form to an ingot form, and craft your items using it. None of the items in my mod oxidize over time.

I could simply add a recipe to cook a copper block in a furnace, causing it to oxidize much faster than vanilla.

In loaded chunks, the copper blocks will oxidize, yes. But ticking only happens while the item is in an entity's inventory. If I were to create a ticking item that aged while in a player's inventory, it would be the same as any other per tick process, which I actively avoid on common items.

commented

Natural oxidation of tools is what most devs would do. The reason why I chose to use the vanilla copper block oxidation method, and have the player craft their items from those blocks, was due to the performance friendliness of it.

See, when you've got items that oxidize with the world, they need to tick. Every item/block/entity that ticks adds to the instructions that need to be processed during a tick. More instructions per tick, higher server load. Now, while adding ticking to these weapons would be basically negligible, every tick counts.

As a server owner (8 of them) who is also the only one who operates and manages them, I'm very in tune with what wasteful ticking can do to your world. I may consider looking into a more performance friendly way to do this, such as using randomworldtick instead of tick, but at this time, oxidation is right where I want it to be.

Can you think of any other interesting methods to oxidize your tools, without using age as a factor? Would it help if I created a manual process of oxidizing copper blocks, to help speed it along?